只是CRUD操作,也可以参考这位学长的,
http://blog.youkuaiyun.com/a1610770854/article/details/51939473
更多sesion方法
http://blog.youkuaiyun.com/shrek_xu/article/details/740991
所需jar包
hibernate-release-5.0.7.Final 下的lib下的jpa和required
还有
User.java
package cn.hiber;
public class User {
private int id;
private String username;
private String password;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
@Override
public String toString() {
return "User [id=" + id + ", username=" + username + ", password="
+ password + "]";
}
}
User.hbm.xml
<?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="cn.hiber.User" table="t_user" schema="hibernate">
<id name="id" column="id">
<!--指定主键生成方式,native:使用数据库本地方式-->
<generator class="native" />
</id>
<property name="username" column="username"/>
<property name="password" column="password"/>
</class>
</hibernate-mapping>
hibernate.cfg.xml
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<!--数据库信息-->
<property name="connection.username">root</property>
<property name="connection.password">root</property>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql:///test</property>
<!--hibernate基本信息-->
<!--hibernate使用的数据库方言-->
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<!--执行操作时,是否在控制台打印SQL-->
<property name="show_sql">true</property>
<!--是否对SQL格式化-->
<property name="format_sql">true</property>
<!--指定声称数据库表的策略-->
<property name="hbm2ddl.auto">update</property>
<!--指定关联的.hbm.xml文件-->
<mapping resource="cn/hiber/User.hbm.xml"/>
</session-factory>
</hibernate-configuration>
UserUntil.java
package cn.hiber;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
public class UserUntil {
static Configuration cfg=null;
static SessionFactory sessionFactory=null;
static{
cfg=new Configuration().configure();
sessionFactory=cfg.buildSessionFactory();
}
public static SessionFactory getSessionFactory() {
// TODO Auto-generated method stub
return sessionFactory;
}
}
UserTest.java
package cn.hiber;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.junit.Test;
public class UserTest {
@Test
public void addtest(){
/*
//加载hibernate配置文件,封装对象
Configuration cfg= new Configuration().configure();
//读取配置文件,创建sessionFactory,把表创建
SessionFactory sessionFactory = cfg.buildSessionFactory(); */
SessionFactory sessionFactory=UserUntil.getSessionFactory();
//类似连接
Session session = sessionFactory.openSession();
//开启事务
Transaction tx= session.beginTransaction();
//执行保存操作
User user=new User();
user.setUsername("sssss");
user.setPassword("123456");
session.save(user);
//提交事务
tx.commit();
//关闭Session
session.close();
//关闭SessionFactory
sessionFactory.close();
}
@Test
public void gettest(){
/*
//加载hibernate配置文件,封装对象
Configuration cfg= new Configuration().configure();
//读取配置文件,创建sessionFactory,把表创建
SessionFactory sessionFactory = cfg.buildSessionFactory(); */
SessionFactory sessionFactory=UserUntil.getSessionFactory();
//类似连接
Session session = sessionFactory.openSession();
//开启事务
Transaction tx= session.beginTransaction();
//执行根据ID查询操作 ,先生成toString
User user=session.get(User.class, 2);
System.out.println(user);
//提交事务
tx.commit();
//关闭Session
session.close();
//关闭SessionFactory
sessionFactory.close();
}
@Test
public void updatetest(){
/*
//加载hibernate配置文件,封装对象
Configuration cfg= new Configuration().configure();
//读取配置文件,创建sessionFactory,把表创建
SessionFactory sessionFactory = cfg.buildSessionFactory(); */
SessionFactory sessionFactory=UserUntil.getSessionFactory();
//类似连接
Session session = sessionFactory.openSession();
//开启事务
Transaction tx= session.beginTransaction();
//执行根据ID查询操作 ,再update。
//删除的话就是sesion.delete(user);
User user=session.get(User.class, 2);
user.setUsername("ccccc");
session.update(user);
//提交事务
tx.commit();
//关闭Session
session.close();
//关闭SessionFactory
sessionFactory.close();
}
}