标签:驱动 建立 build 不一致 扩展性 one main 校验 auto
CREATE TABLE `customer` (
`cust_id` bigint(32) NOT NULL AUTO_INCREMENT COMMENT '客户编号(主键)',
`cust_name` varchar(32) NOT NULL COMMENT '客户名称(公司名称)',
`cust_source` varchar(32) DEFAULT NULL COMMENT '客户信息来源',
`cust_industry` varchar(32) DEFAULT NULL COMMENT '客户所属行业',
`cust_level` varchar(32) DEFAULT NULL COMMENT '客户级别',
`cust_phone` varchar(64) DEFAULT NULL COMMENT '固定电话',
`cust_mobile` varchar(16) DEFAULT NULL COMMENT '移动电话',
PRIMARY KEY (`cust_id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
可以用lombok插件自动生成set和get方法。
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<!-- 连接数据库的基本参数 -->
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3307/hibernate</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">abcd</property>
<!-- 配置Hibernate的方言 -->
<property name="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</property>
<!-- 打印SQL -->
<property name="hibernate.show_sql">true</property>
<!-- 格式化SQL -->
<property name="hibernate.format_sql">true</property>
<!-- 自动创建表 -->
<property name="hibernate.hbm2ddl.auto">update</property>
<!--加载映射文件 -->
<mapping resource="com/xzh/hibernate/domain/Customer.hbm.xml" />
</session-factory>
</hibernate-configuration>
建立类与表的映射
1.建立表与类的映射
2.建立主键的映射
3.建立普通属性的映射
配置演示
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="com.xzh.hibernate.domain.Customer" table="customer">
<!--建立类属性哪一个是主键 还要跟数据库当中主键进行对应 -->
<id name="cust_id" column="cust_id">
<generator class="native" />
</id>
<!--建立类中的普通属性与数据库当中字段进行关联 -->
<property name="cust_name" column="cust_name" />
<property name="cust_source" column="cust_source" />
<property name="cust_industry" column="cust_industry" />
<property name="cust_level" column="cust_level" />
<property name="cust_phone" column="cust_phone" />
<property name="cust_mobile" column="cust_mobile" />
</class>
</hibernate-mapping>
@Test
public void test1() {
// 1.加载配置文件
Configuration configure = new Configuration().configure();
// 2.创建sessionFactory --JDBC链接池
SessionFactory sessionFactory = configure.buildSessionFactory();
// 3.获取session --连接对象
Session session = sessionFactory.openSession();
Customer customer = new Customer();
customer.setCust_name("myxq");
customer.setCust_level("2");
// 4.保存
session.save(customer);
// 5.释放资源
session.close();
sessionFactory.close();
}
显示SQL
hibernate.show_sql
格式化SQL
hibernate.format_sql
<mapping resource="映射文件全路径"/>
标签:驱动 建立 build 不一致 扩展性 one main 校验 auto
原文地址:https://www.cnblogs.com/xzh0717/p/10800268.html