网站建设电子书资料,美食网站黑米如何做,网站空间邮箱,商务网站建设教学视频一、映射文件 Hibernate在实现ORM功能的时候主要用到的文件有#xff1a; 1、 映射类#xff08;*.Java#xff09; 描述数据库表的结构#xff0c;表的字段映射为类的属性#xff0c;表的记录映射为类的对象。 2、映射文件#xff08;*.hbm.xml#xff09; …一、映射文件 Hibernate在实现ORM功能的时候主要用到的文件有 1、 映射类*.Java 描述数据库表的结构表的字段映射为类的属性表的记录映射为类的对象。 2、映射文件*.hbm.xml 指定数据库表和映射类之间的关系。 包括映射类和数据库表、表字段和类属性类型以及表字段和类属性名称的对应关系。 3、 hibernate核心配置文件*.properties/*.cfg.xml 指定hibernate的一些核心配置包含与数据库连接时需要的连接信息。 如连接数据库、登录数据库的用户名、登录密码以及连接字符串、映射文件的地址。 4、分类 二、XML方式配置映射 classpath:com/test目录下的User.hbm.xml [html] view plaincopy print? ?xml version1.0? !DOCTYPE hibernate-mapping PUBLIC -//Hibernate/Hibernate Mapping DTD 3.0//EN http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd hibernate-mapping class namecom.test.User id nameid !-- 算法的核心思想是结合机器的网卡、当地时间、一个随机数来生成id -- generator classuuid2/generator /id property namename/property property namepassword/property /class /hibernate-mapping 三、注解映射配置 1、加入hibernate annotion支持包 hibernate-commons-annotations-5.0.1.Final.jar hibernate-jpa-2.1-api-1.0.0.Final.jar 2、hibernate5必须导入jar包 -hibernate-release-5.2.7.Final.ziphibernate项目文件的jar antlr-2.7.7.jar (生成SQL语句) classmate-1.3.0.jar dom4j-1.6.1.jar geronimo-jta_1.1_spec-1.1.1.jar hibernate-commons-annotations-5.0.1.Final.jar hibernate-core-5.2.7.Final.jar hibernate-jpa-2.1-api-1.0.0.Final.jar jandex-2.0.3.Final.jar javassist-3.20.0-GA.jar jboss-logging-3.3.0.Final.jar mysql-connector-java-6.0.5.jar 3、建立实体类User采用注解完成映射 [java] view plaincopy print? package com.test; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenericGenerator; import javax.persistence.Id; Entity //不写Table默认为userTable(nameuser) public class User { Id //主键 GenericGenerator(name generator, strategy uuid2) GeneratedValue(generator generator) private String id; Column(namename) //字段为name可以不注解Column private String name; private String password; public int getId() { return id; } public void setId(int id) { this.id id; } public String getName() { return name; } public void setName(String name) { this.name name; } public String getPassword() { return password; } public void setPassword(String password) { this.password password; } } 四、hibernate.cfg.xml文件配置 1、将User加入到hibernate.cfg.xml配置文件 [html] view plaincopy print? ?xml version1.0? !DOCTYPE hibernate-configuration PUBLIC -//Hibernate/Hibernate Configuration DTD 3.0//EN http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd hibernate-configuration session-factory !-- 驱动 -- property namehibernate.connection.driver_classcom.mysql.jdbc.Driver/property !-- 数据库URL -- property namehibernate.connection.urljdbc:mysql://localhost:3306/hibernate_db/property !-- 数据库用户名 -- property namehibernate.connection.usernameroot/property !-- 数据库密码 -- property namehibernate.connection.passwordadmin/property !-- mysql的方言 -- property namehibernate.dialectorg.hibernate.dialect.MySQLDialect/property !-- 映射文件配置 -- !-- mapping resourcecom/test/User.hbm.xml/ -- !-- 由原来的映射文件改成实体类 -- mapping classcom.test.User/ /session-factory /hibernate-configuration 2、不配置User类的mapping Configuration 指定映射文件 Configuration cfgnew Configuration().configure(/hibernate.cfg.xml); cfg.addResource(com/test/User.hbm.xml); 或 cfg.addClass(com.test.User.class); 五、hibernate.properties文件配置 1、hibernate.properties #数据库使用的驱动类
hibernate.connection.driver_classcom.mysql.jdbc.Driver
#数据库连接串
hibernate.connection.urljdbc:mysql://localhost:3306/hibernate_db
#数据库连接的用户名
hibernate.connection.usernameuser
#数据库连接的密码
hibernate.connection.passwordadmin
#数据库使用的方言
hibernate.dialectnet.sf.hibernate.dialect.MySQLDialect
#是否打印SQL语句
hibernate.show_sqltrue
javax.persistence.validation.modenone2、配置工具类 Configuration cfg new Configuration();
cfg.configure(/hibernate.properties);
cfg.addResource(com/test/User.hbm.xml);
//cfg.addClass(com.test.User.class);