分析Java应用程序和Hibernate
Hibernate有很多值得学习的地方,这里我们主要介绍Java应用程序和Hibernate,包括介绍org.hibernate.Session是主要的运行时接口等方面。
Java应用程序将映射文件,用于数据持久化的属性文件集成到了一起。首先将Catalog.hbm.xml和hibernate.properties文件复制到同一个目录。并将这个目录加到CLASSPATH中。在Java应用程序中使用import导入org.hibernate包和dom4j包。
org.hibernate.Session是主要的运行时接口,它负责将Java应用程序和Hibernate连接起来。你可以使用它在数据库表中增加、获得、更新和删除XML数据。我们可以从一个SessionFactory中获得一个Session对象。这个 SessionFactory接口提供了openSession方法用来创建一个数据库连接以及打开一个连接会话。org.hibernate.cfg.Configuration类用来指定配置属性和创建一个SessionFactory的映射文件。下面的代码将创建一个配置对象:
Configuration config=new Configuration();
下面的代码将映射文件catalog.hbm.xml加入到配置中:
config.addFile("catalog.hbm.xml");
现在映射文件Catalog.hbm.xml以及JDBC属性文件在相同的目录,并且应用程序使用配置对象获得这此文件的信息。下面的代码将创建一个SessionFactory对象:
SessionFactory sessionFactory=config.buildSessioFactory();
接下来,将向使用SchemaExport工具创建的数据表中加入数据,首先从SessionFactory对象中得到一个Session对象:
Session sess =sessionFactory.openSession();
下面的代码将得一个Transaction对象,我们可以使用这个对象向数据表中加入数据:
org.hibernate.Transaction tx = sess.beginTransaction();
使用DOM4J模式开始一个会话,第二个会话和第一个主会话有同样的连接、事务和上下文属性:
Session dom4jSession = session.getSession(EntityMode.DOM4J);
下面将创建一个SAXReader对象用于分析描述数据表的XML文档。我们可以使用read(File)方法来分析catalog.xml文件,代码如下:
SAXReader saxReader = new SAXReader(); Document document = saxReader.read(new File("c:/Hibernate/catalog.xml"));
下面的代码将获得文档对象中catalog节点的列表,并且创建一个Iterator对象用于浏览列表中止数据: