package com.sanqing.dao;
import java.util.List;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;
import com.sanqing.hibernate.HibernateSessionFactory;
import com.sanqing.po.Student;
import com.sanqing.po.Subject;
import com.sanqing.util.Page;
public class SubjectDAOImpl implements SubjectDAO{
public void addSubject(Subject subject){
Session session = HibernateSessionFactory.getSession();//获得Session对象
Transaction transaction = null;//声明一个事务对象
try{
transaction = session.beginTransaction();//开启事务
session.save(subject);//保存试题信息
transaction.commit();//提交事务
}catch(Exception ex) {
ex.printStackTrace();
transaction.rollback();//事务回滚
}
HibernateSessionFactory.closeSession();//关闭Session对象
}
public Subject findSubjectByTitle(String subjectTitle) {
Session session = HibernateSessionFactory.getSession();//获得Session对象
Query query = session.createQuery("from Subject as sub where sub.subjectTitle = ?");
query.setString(0, subjectTitle);
List list = query.list(); //查询结果保存到list中
HibernateSessionFactory.closeSession(); //关闭Session对象
if(list.size() == 0) {
return null; //返回null
}else {
return (Subject) list.get(0); //返回第一个试题
}
}
public List<Subject> findSubjectByPage(Page page) {
Session session = HibernateSessionFactory.getSession();//获得Session对象
Query query = session.createQuery("from Subject");
query.setMaxResults(page.getEveryPage());//设置查询记录数
query.setFirstResult(page.getBeginIndex());//设置查询记录起始位置
List list = query.list(); //查询结果保存到list中
HibernateSessionFactory.closeSession();//关闭Session对象
return list;
}
public int findSubjectCount() {
Session session = HibernateSessionFactory.getSession();//获得Session对象
Query query = session.createQuery("from Subject");
List list = query.list(); //查询结果保存到list中
int count = list.size();
HibernateSessionFactory.closeSession();//关闭Session对象
return count;
}
public Subject findSubjectByID(int subjectID) {
Session session = HibernateSessionFactory.getSession();//获得Session对象
Subject subject = (Subject) session.get(Subject.class, subjectID);
HibernateSessionFactory.closeSession(); //关闭Session对象
return subject;
}
public void updateSubject(Subject subject) {
Session session = HibernateSessionFactory.getSession();//获得Session对象
Transaction transaction = null;//声明一个事务对象
try{
transaction = session.beginTransaction();//开启事务
session.update(subject);//更新试题信息
transaction.commit();//提交事务
}catch(Exception ex) {
ex.printStackTrace();
transaction.rollback();//事务回滚
}
HibernateSessionFactory.closeSession();//关闭Session对象
}
public void deleteSubject(int subjectID) {
Session session = HibernateSessionFactory.getSession();//获得Session对象
Subject subject = (Subject) session.get(Subject.class, subjectID);
Transaction transaction = null;//声明一个事务对象
try{
transaction = session.beginTransaction();//开启事务
session.delete(subject);
transaction.commit();//提交事务
}catch(Exception ex) {
ex.printStackTrace();
transaction.rollback();//事务回滚
}
HibernateSessionFactory.closeSession();//关闭Session对象
}
public List<Subject> likeQueryByTitle(String subjectTitle,Page page) {
Session session = HibernateSessionFactory.getSession();//获得Session对象
Query query = session.createQuery("from Subject as sub where sub.subjectTitle like :title ");
query.setString("title","%"+subjectTitle+"%");
query.setMaxResults(page.getEveryPage());//设置查询记录数
query.setFirstResult(page.getBeginIndex());//设置查询记录起始位置
List list = query.list(); //查询结果保存到list中
HibernateSessionFactory.closeSession();//关闭Session对象
return list;
}
public int findLinkQueryCount(String subjectTitle) {
Session session = HibernateSessionFactory.getSession();//获得Session对象
Query query = session.createQuery("from Subject as sub where sub.subjectTitle like :title ");
query.setString("title","%"+subjectTitle+"%");
List list = query.list(); //查询结果保存到list中
int count = list.size();
HibernateSessionFactory.closeSession();//关闭Session对象
return count;
}
public List<Subject> randomFindSubject(int number) {
Session session = HibernateSessionFactory.getSession();//获得Session对象
Query query = session.createQuery("from Subject as sub order by rand()");
query.setMaxResults(number);//设置查询记录数
List list = query.list(); //查询结果保存到list中
HibernateSessionFactory.closeSession();//关闭Session对象
return list;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
在线考试系统 struts2 + hibernate java项目源码 (244个子文件)
SubjectDAOImpl.class 5KB
SubjectServiceImpl.class 3KB
SubmitExamAction.class 3KB
SubjectUpdateAction.class 3KB
LikeQuerySubjectAction.class 3KB
SubjectAddAction.class 3KB
HibernateSessionFactory.class 3KB
LoginAction.class 2KB
StudentDAOImpl.class 2KB
ShowSubjectAnswer.class 2KB
Subject.class 2KB
Page.class 2KB
StudentServiceImpl.class 2KB
QuerySubjectAction.class 2KB
QueryStudentByName.class 1KB
QueryStudentByClass.class 1KB
PageUtil.class 1KB
Student.class 1KB
SubjectParticularAction.class 1KB
SubjectUpdateBefore.class 1KB
GetRandomSubject.class 1KB
TeacherServiceImpl.class 1KB
SubjectDeleteAction.class 933B
SubjectDAO.class 894B
PageResult.class 885B
TeacherDAOImpl.class 884B
SubjectService.class 790B
Teacher.class 735B
StudentService.class 503B
StudentDAO.class 433B
TeacherService.class 192B
TeacherDAO.class 190B
.classpath 1KB
fox.css 7KB
skin.css 4KB
css2.css 2KB
Thumbs.db 175KB
login-content-bg.gif 20KB
login-wel.gif 9KB
logo.gif 7KB
menu_bg2.gif 4KB
servicezhgb2312.gif 3KB
buttom-right.gif 2KB
ershou_1.gif 2KB
ershou_2.gif 2KB
menu_bgs.gif 2KB
title.gif 2KB
sitebackup.gif 2KB
DefaultDocs.gif 2KB
menu_bg.gif 2KB
tool-down-pic.gif 2KB
buttom-left.gif 2KB
mime.gif 2KB
password.gif 2KB
ad.gif 2KB
lminfo.gif 2KB
defind.gif 2KB
ipsecurity.gif 2KB
user-info.gif 2KB
Redirects.gif 2KB
usercontrol.gif 2KB
menu_bg1.gif 1KB
lm.gif 1KB
Login_but.gif 1KB
pic19.gif 1KB
menu_topline.gif 1KB
pic5.gif 1KB
pic23.gif 1KB
pic18.gif 1KB
yc.gif 1018B
out.gif 859B
nav-right-bg.gif 735B
pic16.gif 651B
icon-demo.gif 648B
icon-login-seaver.gif 633B
icon-phone.gif 633B
imageedit.gif 625B
edit.gif 624B
pic17.gif 622B
report2_(delete).gif 621B
delete.gif 618B
image_(add)6.gif 617B
delete_6.gif 617B
imagedelete.gif 615B
report2_(add).gif 615B
format.gif 610B
image_1.gif 608B
add.gif 606B
pic13.gif 605B
yx.gif 604B
stop.gif 604B
buttom-copy-bg.gif 600B
str.gif 598B
ts.gif 597B
st.gif 594B
icon-mail2.gif 592B
pic14.gif 587B
pic22.gif 585B
pic9.gif 580B
vie.gif 578B
共 244 条
- 1
- 2
- 3
资源评论
一百零七
- 粉丝: 1
- 资源: 17
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功