使用JDBC做数据库相关功能开发会做很多重复性的工作,比如创建连接,关闭连接,把字段逐一映射到属性中。 Hibernate把这一切都封装起来了,使得数据库访问变得轻松而简单,代码也更加容易维护
1.创建数据库,插入表
2.创建project导入hibernate所需的包,如有需要可以留言
3.创建类,属性和表的内容对应,并有get,set方法
4.配置xml文件
<?xml version="1.0"?><!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd"><hibernate-mapping package="创建类的包名"> <class name="类名" table="表名"> <id name="id" column="id">表示属性id,映射表里的字段id <generator class="native">意味着id的自增长方式采用数据库的本地方式 </generator> </id> <property name="name" />只写了属性name,没有通过column="name" 显式的指定字段,那么字段的名字也是name. <property name="price" /> </class> </hibernate-mapping><?xml version=‘1.0‘ encoding=‘utf-8‘?><!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> <!-- Database connection settings --> <property name="connection.driver_class">com.mysql.jdbc.Driver</property> <property name="connection.url">jdbc:mysql://localhost:3306/数据库名称?characterEncoding=UTF-8</property> <property name="connection.username">帐号</property> <property name="connection.password">密码</property> <!-- SQL dialect --> <property name="dialect">org.hibernate.dialect.MySQLDialect</property>告诉hibernate用mysql的语法 <property name="current_session_context_class">thread</property>这是Hibernate事务管理方式,即每个线程一个事务 <property name="show_sql">true</property>这表示是否在控制台显示执行的sql语句 <property name="hbm2ddl.auto">update</property>这表示是否会自动更新数据库的表结构,有这句话,其实是不需要创建表的,因为Hibernate会自动去创建表结构 <mapping resource="你上一个xml所在的位置" />这表示Hibernate会去识别实体类 </session-factory></hibernate-configuration> SessionFactory sf = new Configuration().configure().buildSessionFactory(); Session s = sf.openSession(); s.beginTransaction(); 类名 p = new 类(); p.setName("插入数据"); p.setPrice(插入数据); s.save(p); s.getTransaction().commit(); s.close(); sf.close();原文:https://www.cnblogs.com/lspa/p/8778041.html