亚洲av色香蕉一区二区三区,十四以下岁毛片带血a级,亚洲 校园 欧美 国产 另类,亚洲av日韩av一区谷露,色欲av无码一区二区三区

  • 相關(guān)軟件
    >EJB3 and Hibernate Annotations 學(xué)習(xí)筆記(一) 創(chuàng)建者:webmaster 更新時(shí)間:2005-05-16 22:02

    借助JDK 5.0的新特性Annotations,你可以使用它代替先前使用的XDoclet,不過(guò)當(dāng)且僅當(dāng)使用JDK 5.0的時(shí)候,為了保持向下兼容,用XDoclet生成mapping files仍然是最好的選擇。

    首先建立環(huán)境,將hibernate-annotations.jar和lib/ejb-3.0-edr2.jar復(fù)制到你的CLASSPATH下。

    官方的建議是將Hibernate初始化放在static塊內(nèi),建立如下的HibernateUtils類以方便使用。

    package hello;import org.hibernate.*;import org.hibernate.cfg.*;import test.*;import test.animals.Dog;public class HibernateUtil {private static final SessionFactory sessionFactory;   static {     try {         sessionFactory = new AnnotationConfiguration()             .addPackage("test")             .addAnnotatedClass(Flight.class)             .addAnnotatedClass(Sky.class)             .addAnnotatedClass(Person.class)             .addAnnotatedClass(Dog.class)             .buildSessionFactory();     } catch (Throwable ex) {         // Log exception!         throw new ExceptionInInitializerError(ex);     }   }   public static Session getSession()         throws HibernateException {     return sessionFactory.openSession();   }}
    這里有趣的地方就是使用AnnotationConfiguration并且聲明包名和用于持久化的類名。當(dāng)然你也可以在xml配置文件中加入。


    這是一個(gè)不錯(cuò)的選擇,你可以將hbm文件和annotation影射混合使用。還有一個(gè)問(wèn)題就是子類不能在父類之前被配置,看下面的例子:   cfg.addAnnotatedClass(Animal.class);   cfg.addAnnotatedClass(Dog.class); // OK   cfg.addAnnotatedClass(Dog.class);   cfg.addAnnotatedClass(Animal.class); // AnnotationException!
    這里Dog是Animal的子類。

    (未完待續(xù))
    相關(guān)文章
    本頁(yè)查看次數(shù):