herbnate session.createSQLQuery(sql) 和 session.createQuery(sql)使用
2015-06-18 23:32
633 查看
public class DistributeDao implements Serializable{ private SessionFactory sessionFactory; public Session getSession() { return sessionFactory.getCurrentSession(); } public SessionFactory getSessionFactory() { return sessionFactory; } public void setSessionFactory(SessionFactory sessionFactory) { this.sessionFactory = sessionFactory; } public Task getTask(Integer id) { Session session = this.getSession(); Transaction tran = session.beginTransaction(); List<Task> datas = session.createQuery("from TestMessage").list();//TestMessage是一个java类,这个类和某一个表对应! tran.commit(); return datas.get(id); } public void saveTask(Task task) { Session session = this.getSession(); Transaction tran = session.beginTransaction(); session.save(task); tran.commit(); } public List<Task> findAllTask() { Session session = this.getSession(); Transaction tran = session.beginTransaction(); List<Task> datas = session.createQuery("from Task").list(); tran.commit(); return datas; } public List<Task> findAllFinishedTask() { Session session = this.getSession(); Transaction tran = session.beginTransaction(); List<Task> datas = session.createQuery("from Task where state=2").list(); tran.commit(); return datas; } public List<Task> findUserTaskFinish(String developName){ Session session = this.getSession(); Transaction tran = session.beginTransaction(); String sql="select * from task where task.taskid in (select taskteam.taskid from taskteam where taskteam.developName=\'" + developName + "\') and task.state=2"; List<Task> datas = (List<Task>)session.createSQLQuery(sql).addEntity(Task.class).list(); tran.commit(); return datas; } public List<Task> findUserTaskNoParticipateTask(String developName){ Session session = this.getSession(); Transaction tran = session.beginTransaction(); String sql="select * from task where task.taskid not in (select taskteam.taskid from taskteam where developName=\'" + developName + "\')"; List<Task> datas = (List<Task>)session.createSQLQuery(sql).addEntity(Task.class).list();//必须有addEntity()方法,否则不能 //返回具体的类型,其实返回的是Object tran.commit(); return datas; } public List<Task> findUserTaskParticipating(String developName){ Session session = this.getSession(); Transaction tran = session.beginTransaction(); String sql="select * from task where task.taskid in (select taskteam.taskid from taskteam where developName=\'" + developName + "\') and task.state=1"; List<Task> datas = (List<Task>)session.createSQLQuery(sql).addEntity(Task.class).list(); tran.commit(); return datas; } public List<DevelopingParty> findTaskAllUser(int taskid){ Session session = this.getSession(); Transaction tran = session.beginTransaction(); String sql="select * from developingparty where developingparty.developName in (select taskteam.developingparty from taskteam where taskteam.taskid=" + taskid + ")"; List<DevelopingParty> datas = session.createSQLQuery(sql).addEntity(DevelopingParty.class).list(); tran.commit(); return datas; } }
相关文章推荐
- UINavigationController设置透明背景
- uiautomakor工具安装常见问题
- Dynamic Programming | Set 4 (Longest Common Subsequence)
- iOS入门-UI基础控件
- Unreal Engine 4 Programming Guide
- java基础GUI
- ZOJ 1733 Common Subsequence
- UIBarButtonItem全局和局部修改
- Dynamic Programming | Set 3 (Longest Increasing Subsequence)
- bzoj-1570 Blue Mary的旅行
- iOS游戏开发之UIDynamic
- hibernate :Type ServiceRegistryBuilder deprecated hibernate
- IOS之UITextField与键盘
- Fiddler之makecert.exe提示Failed to acquire a security provider from issuer's centificate问题解决
- How to perform a SQL query for fields that are null (or not null)
- Ubuntu:安装MySql经GUI客户端MySql-Workbench
- 文件隐藏属性和特殊权限
- hdu 1053 (huffman coding, greedy algorithm, std::partition, std::priority_queue )
- UITableview group模式 出现的问题
- JSP URI/URL - How to get the request URI, URL, and Context from a JSP