增加用户信息
增加数据代码如下:
//增
public static void main(String[] args){
Configuration cfg = null;
SessionFactory sf = null;
Session session = null;
Transaction ts = null;
User u = new User();
System.out.println("请输入用户信息:");
Scanner scanner = new Scanner(System.in);
System.out.println("姓名:");
String name = scanner.next();
u.setName(name);
System.out.println("性别:");
String gender = scanner.next();
u.setGender(gender);
System.out.println("年龄:");
int age = scanner.nextInt();
u.setAge(age);
System.out.println("生日:");
String birthday = scanner.next();
u.setBirthday(birthday);
try{
cfg = new Configuration().configure();
sf = cfg.buildSessionFactory();
session = sf.openSession();
ts = session.beginTransaction();
session.save(u);
ts.commit();
}catch(HibernateException e){
e.printStackTrace();
if(null != ts){
ts.rollback();
}
}finally {
sf.close();
session.close();
}
}
输入用户数据:
框架自动生成的sql语句:
修改用户信息
修改前数据库表中的信息:
修改信息代码如下:
//删
public void testDeleteObject(){
Configuration cfg = null;
SessionFactory sf = null;
Session session = null;
Transaction ts = null;
User u = new User();
try{
cfg = new Configuration().configure();
sf = cfg.buildSessionFactory();
session = sf.openSession();
ts = session.beginTransaction();
u = session.get(User.class,1);
session.delete(u);
ts.commit();
}catch(HibernateException e){
e.printStackTrace();
if(null != ts){
ts.rollback();
}
}finally {
sf.close();
session.close();
}
}
查询用户信息
查询用户代码如下:
//查
public void testQueryUser() {
Configuration conf = null;
SessionFactory sf = null;
Session session = null;
Transaction ts = null;
User user = new User();
try {
sf = HibernateUtil.getSessionFactory();
conf = new Configuration().configure();
session = sf.getCurrentSession();
ts = session.beginTransaction();
Query query = session.createQuery("from User");
List<User> users = query.list();
for(User u : users){
System.out.println(u);
}
ts.commit();
} catch (HibernateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
if(ts != null) {
ts.rollback();
}
}finally {
sf.close();
}
}
删除用户
删除前数据库表中数据
删除用户的代码如下:
//删
public void testDeleteObject(){
Configuration cfg = null;
SessionFactory sf = null;
Session session = null;
Transaction ts = null;
User u = new User();
try{
cfg = new Configuration().configure();
sf = cfg.buildSessionFactory();
session = sf.openSession();
ts = session.beginTransaction();
u = session.get(User.class,1);
session.delete(u);
ts.commit();
}catch(HibernateException e){
e.printStackTrace();
if(null != ts){
ts.rollback();
}
}finally {
sf.close();
session.close();
}
}
Hibernate对实际数据进行操作
最新推荐文章于 2022-01-12 11:47:48 发布