Hibernate 注册登录,对数据库实现增删改查,及根据用户名来查询数据库

来源:互联网 发布:c语言布尔类型变量 编辑:程序博客网 时间:2024/05/17 09:07
package com.cwnu.entities;


import java.util.List;


import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;


public class HibernateTest {


public static Session op_session(){
SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
//开启事务
Session session = sessionFactory.openSession();


//Transaction tx = session.beginTransaction();//


return  session;
}
public static void insert_rs(){//新增
Students s = new Students();
s.setSid(1);//主键不能与数据库重复
s.setSname("zhangsan");
//提交事务
Session ss = op_session();
ss.save(s);
ss.beginTransaction().commit();
System.out.println("--> 插入数据成功!");

}

public static void select_rs(){//查询
int sid=2;
Session ss = op_session();
Students u=(Students)ss.get(Students.class,sid);
//主键查询方法1.get 方法2:load 更高效 Students t=(Students)ss.load(Students.class, 1);
System.out.println(u.toString());

}
public static void sava_update(){//更新
Students s = new Students();
s.setSid(1);
s.setSname("李四");
//根据sesson的工厂创建session对象
Session ss = op_session();
ss.saveOrUpdate(s);
System.out.println(s.toString());
//提交事务
ss.beginTransaction().commit();
//关闭事务
ss.close();
System.out.println("---> 更新数据成功");

}
public static void del_rs(){
Students s = new Students();
s.setSid(1);
s.setSname("李四");
Session ss = op_session();
ss.delete(s);
System.out.println(s.toString());
//提交事务
ss.beginTransaction().commit();
}
public static void findByname(String sname){
 Session ss = op_session();
 Students st = new Students();
 st.setSname(sname);
 String hql = "FROM Students WHERE sname = ?";
 List<Students> list = ss.createQuery(hql).setParameter(0, sname).list();


 System.out.println(list.toString());
}
//************************ 测试  
public static void main(String[] args) {


//insert_rs();//新增
//select_rs();//查询
//sava_update();//更新
//del_rs();//删除记录
findByname("good");


}



}
0 0