📄 hibernateutil.java
字号:
package hibernate;
import java.util.Iterator;
import java.util.List;
import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
public class HibernateUtil {
private static SessionFactory sessionFactory;
static {
try {
sessionFactory = new Configuration().configure()
.buildSessionFactory();
} catch (Exception e) {
e.printStackTrace();
}
}
// 从User中查找指定的username的密码
public static String findPassword(String username) {
Session session = sessionFactory.openSession();
Transaction tx = null;
String pd = "";
try {
tx = session.beginTransaction();
Query query = session
.createQuery("from User as u where u.username=:username");
query.setString("username", username);
List result = query.list();
Iterator it = result.iterator();
if (it.hasNext()) {
User u = (User) it.next();
pd = u.getPassword();
}
tx.commit();
} catch (Exception e) {
if (tx != null) {
tx.rollback();
}
} finally {
session.close();
}
return pd;
}
// 取得所有Student记录
public static List getStudent() {
Session session = sessionFactory.openSession();
Transaction tx = null;
List result = null;
try {
tx = session.beginTransaction();
Query query = session.createQuery("from Student as s");
result = query.list();
tx.commit();
} catch (Exception e) {
if (tx != null) {
tx.rollback();
}
} finally {
session.close();
}
return result;
}
// 取得所有Teacher记录
public static List getTeacher() {
Session session = sessionFactory.openSession();
Transaction tx = null;
List result = null;
try {
tx = session.beginTransaction();
Query query = session.createQuery("from Teacher as t");
result = query.list();
tx.commit();
} catch (Exception e) {
if (tx != null) {
tx.rollback();
}
} finally {
session.close();
}
return result;
}
// 取得所有Course记录
public static List getCourse() {
Session session = sessionFactory.openSession();
Transaction tx = null;
List result = null;
try {
tx = session.beginTransaction();
Query query = session.createQuery("from Course as c");
result = query.list();
tx.commit();
} catch (Exception e) {
if (tx != null) {
tx.rollback();
}
} finally {
session.close();
}
return result;
}
// 根据username查找课程不在Course里的所有课程
public static List getCourseNotCourse_id(String username) {
Session session = sessionFactory.openSession();
Transaction tx = null;
List result = null;
try {
tx = session.beginTransaction();
Query query = session
.createQuery("from Course as c where c.courseID not in(select course_ID from Choice where username=:username) ");
query.setString("username", username);
result = query.list();
tx.commit();
} catch (Exception e) {
if (tx != null) {
tx.rollback();
}
} finally {
session.close();
}
return result;
}
// 取得所有Classes记录
public static List getClasses() {
Session session = sessionFactory.openSession();
Transaction tx = null;
List result = null;
try {
tx = session.beginTransaction();
Query query = session.createQuery("from Classes as c");
result = query.list();
tx.commit();
} catch (Exception e) {
if (tx != null) {
tx.rollback();
}
} finally {
//session.close();
}
return result;
}
// 根据courseID取得所有Classes记录
public static List getClasses(String courseID) {
Session session = sessionFactory.openSession();
Transaction tx = null;
List result = null;
try {
tx = session.beginTransaction();
Query query = session
.createQuery("from Classes as c where c.course_ID=:courseID");
query.setString("courseID", courseID);
result = query.list();
tx.commit();
} catch (Exception e) {
if (tx != null) {
tx.rollback();
}
} finally {
// session.close();
}
return result;
}
public static List getClassesNotCourse_id(String username) {
Session session = sessionFactory.openSession();
Transaction tx = null;
List result = null;
try {
tx = session.beginTransaction();
Query query = session
.createQuery("from Classes as c where c.course_ID not in(select course_ID from Choice where username=:username) ");
query.setString("username", username);
result = query.list();
tx.commit();
} catch (Exception e) {
if (tx != null) {
tx.rollback();
}
} finally {
session.close();
}
return result;
}
// 根据classes_id查找Teacher
public static List findFromClassesIDAndCourseID(Long classes_id,
Long courseID) {
Session session = sessionFactory.openSession();
Transaction tx = null;
List result = null;
try {
tx = session.beginTransaction();
Query query = session
.createQuery("select Teacher.username,Course.courseID,Course.name,Course.mark,Course.prepare,Course.develop from Teacher,Course where Teacher.classes.id=:id "
+ " and " + " Course.courseID=:courseID");
result = query.list();
tx.commit();
} catch (Exception e) {
if (tx != null) {
tx.rollback();
}
} finally {
session.close();
}
return result;
}
// 取得所有Choice记录
public static List getChoice(String username) {
Session session = sessionFactory.openSession();
Transaction tx = null;
List result = null;
try {
tx = session.beginTransaction();
Query query = session
.createQuery("from Choice as c where c.username=:username");
query.setString("username", username);
result = query.list();
tx.commit();
} catch (Exception e) {
if (tx != null) {
tx.rollback();
}
} finally {
session.close();
}
return result;
}
// 根据教师用户名查找所有Choice记录
public static List getChoiceFromTeacherID(String username) {
Session session = sessionFactory.openSession();
Transaction tx = null;
List result = null;
try {
tx = session.beginTransaction();
Query query = session
.createQuery("from Choice as c where c.teacher_username=:username");
query.setString("username", username);
result = query.list();
tx.commit();
} catch (Exception e) {
if (tx != null) {
tx.rollback();
}
} finally {
session.close();
}
return result;
}
// 根据教师用户名查找所有Choice记录
public static List getGrade(String username,String course_ID) {
Session session = sessionFactory.openSession();
Transaction tx = null;
List result = null;
try {
tx = session.beginTransaction();
Query query = session
.createQuery("from Grade as g where g.username=:username "+" and g.courseID=:courseID");
query.setString("username", username);
query.setString("courseID",course_ID);
result = query.list();
tx.commit();
} catch (HibernateException e) {
if (tx != null) {
tx.rollback();
}
} finally {
session.close();
}
return result;
}
// 保存对象
public static void save(Object object) {
Session session = sessionFactory.openSession();
Transaction tx = null;
try {
tx = session.beginTransaction();
session.save(object);
tx.commit();
} catch (Exception e) {
if (tx != null) {
tx.rollback();
}
} finally {
session.close();
}
}
// 根据ID查找Student
public static List findStudent(Long id) {
Session session = sessionFactory.openSession();
Transaction tx = null;
List result = null;
try {
tx = session.beginTransaction();
Query query = session
.createQuery("from Student as s where s.id=:id");
query.setLong("id", id);
result = query.list();
tx.commit();
} catch (Exception e) {
if (tx != null) {
tx.rollback();
}
} finally {
session.close();
}
return result;
}
// 根据username查找Student
public static List findStudent(String username) {
Session session = sessionFactory.openSession();
Transaction tx = null;
List result = null;
try {
tx = session.beginTransaction();
Query query = session
.createQuery("from Student as s where s.username=:username");
query.setString("username",username);
result = query.list();
tx.commit();
} catch (Exception e) {
if (tx != null) {
tx.rollback();
}
} finally {
session.close();
}
return result;
}
// 根据ID查找Teacher
public static List findTeacher(Long id) {
Session session = sessionFactory.openSession();
Transaction tx = null;
List result = null;
try {
tx = session.beginTransaction();
Query query = session
.createQuery("from Teacher as t where t.id=:id");
query.setLong("id", id);
result = query.list();
tx.commit();
} catch (Exception e) {
if (tx != null) {
tx.rollback();
}
} finally {
session.close();
}
return result;
}
// 根据username查找Teacher
public static List findTeacher(String username) {
Session session = sessionFactory.openSession();
Transaction tx = null;
List result = null;
try {
tx = session.beginTransaction();
Query query = session
.createQuery("from Teacher as t where t.username=:username");
query.setString("username",username);
result = query.list();
tx.commit();
} catch (Exception e) {
if (tx != null) {
tx.rollback();
}
} finally {
//session.close();
}
return result;
}
// 根据ID查找Course
public static List findCourse(Long id) {
Session session = sessionFactory.openSession();
Transaction tx = null;
List result = null;
try {
tx = session.beginTransaction();
Query query = session
.createQuery("from Course as c where c.id=:id");
query.setLong("id", id);
result = query.list();
tx.commit();
} catch (Exception e) {
if (tx != null) {
tx.rollback();
}
} finally {
session.close();
}
return result;
}
// 根据ID查找Classes
public static Classes findClasses(Long id) {
Session session = sessionFactory.openSession();
Transaction tx = null;
Classes classes = null;
try {
tx = session.beginTransaction();
classes = (Classes) session.load(Classes.class, id);
tx.commit();
// return teacher;
} catch (Exception e) {
if (tx != null) {
tx.rollback();
}
} finally {
// session.close();
}
return classes;
}
// 删除一个对象
public static void delect(Object object) {
Session session = sessionFactory.openSession();
Transaction tx = null;
try {
tx = session.beginTransaction();
session.delete(object);
tx.commit();
} catch (Exception e) {
if (tx != null) {
tx.rollback();
}
} finally {
session.close();
}
}
// 更新一个对象
public static void update(Object object) {
Session session = sessionFactory.openSession();
Transaction tx = null;
try {
tx = session.beginTransaction();
session.update(object);
tx.commit();
} catch (Exception e) {
if (tx != null) {
tx.rollback();
}
} finally {
session.close();
}
}
// 更新一个对象
public static void saveOrUpdate(Object object) {
Session session = sessionFactory.openSession();
Transaction tx = null;
try {
tx = session.beginTransaction();
session.saveOrUpdate(object);
tx.commit();
} catch (Exception e) {
if (tx != null) {
tx.rollback();
}
} finally {
session.close();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -