📄 userorderhibernatedaoimpl.java
字号:
package com.individaution.dao.hibernate;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import org.springframework.dao.DataAccessException;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import com.individaution.bean.Subject;
import com.individaution.bean.User;
import com.individaution.bean.UserOrder;
import com.individaution.business.service.SubjectServiceImpl;
import com.individaution.business.service.UserServiceImpl;
import com.individaution.dao.IUserOrderDAO;
import com.individaution.resource.AppContext;
public class UserOrderHibernateDAOImpl extends HibernateDaoSupport implements
IUserOrderDAO {
private static final SubjectServiceImpl ssi = (SubjectServiceImpl) AppContext
.getInstance().getAppContext().getBean("subjectService");
private static final String LOAD_USERORDERINFO_BYUSER = "from UserOrder userOrder where userOrder.user=?";
private static final String LOAD_USERORDERINFOLEFT_BYUSER = "from UserOrder userOrder where userOrder.display='0' and userOrder.user=?";
private static final String LOAD_USERORDERINFORIGHT_BYUSER = "from UserOrder userOrder where userOrder.display='1' and userOrder.user=?";
private static final String LOAD_USERORDERINFO_BYUID_SID = "from UserOrder userOrder where userOrder.tbUserInfo=? and userOrder.subject=?";
public UserOrderHibernateDAOImpl() {
}
public UserOrder getUserOrderById(Long id) {
try {
return (UserOrder) getHibernateTemplate().get(
UserOrder.class, id);
} catch (DataAccessException ex) {
return null;
}
}
public List getUserOrderListByUser(User tui) {
List l = (List) getHibernateTemplate().find(LOAD_USERORDERINFO_BYUSER,
tui);
if (l.size() == 0) {
return null;
} else {
System.out.println("size====" + l.size());
return (ArrayList) l;
}
}
public UserOrder addUserOrder(UserOrder uoi) {
try {
getHibernateTemplate().save(uoi);
this.getHibernateTemplate().flush();
return uoi;
} catch (DataAccessException ex) {
ex.printStackTrace();
return null;
}
}
public List getUserOrderedSubject(User tui) {
List userOrderList = getUserOrderListByUser(tui);
List subject = new ArrayList();
if (userOrderList == null)
return subject;
Iterator it = userOrderList.iterator();
while (it.hasNext()) {
subject.add(((UserOrder) it.next()).getSubject());
}
if (subject.size() == 0) {
return null;
} else {
return (ArrayList) subject;
}
}
public List getUserOrderLeftListByUser(User tui) {
List l = (List) getHibernateTemplate().find(
LOAD_USERORDERINFOLEFT_BYUSER, tui);
if (l.size() == 0) {
return new ArrayList();
} else {
return (ArrayList) l;
}
}
public boolean saveUserOrder(List subjectList, User tui) {
Connection conn = this.getSession().connection();
// 请用户修改,自己改为jdbc连接处理批量更新;
deleteUserOrderByUser(tui);
String insertSql = "insert into user_order_info set SUBJECTID=? ,USERID=?";
try {
java.sql.PreparedStatement smt = conn.prepareStatement(insertSql);
} catch (SQLException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
Iterator it = subjectList.iterator();
Subject subject = new Subject();
UserOrder uoi = new UserOrder();
while (it.hasNext()) {
subject = ssi.getSubjectById((String) it.next());
uoi.setSubject(subject);
uoi.setUser(tui);
addUserOrder(uoi);
}
return false;
}
public List getUserOrderRightListByUser(User tui) {
List l = (List) getHibernateTemplate().find(
LOAD_USERORDERINFORIGHT_BYUSER, tui);
if (l.size() == 0) {
return null;
} else {
return (ArrayList) l;
}
}
public boolean deleteUserOrderByUser(User tui) {
List uoiList = getUserOrderListByUser(tui);
if (uoiList != null) {
Iterator it = uoiList.iterator();
while (it.hasNext()) {
getHibernateTemplate().delete((UserOrder) it.next());
}
}
return true;
}
public UserOrder findUserOrderByUserAndSubject(Long uid, String sid) {
SubjectServiceImpl ssi = (SubjectServiceImpl) AppContext.getInstance()
.getAppContext().getBean("subjectService");
UserServiceImpl tii = (UserServiceImpl) AppContext
.getInstance().getAppContext().getBean("tbUserInfoService");
User tbi = tii.findUserById(uid);
Subject sub = ssi.getSubjectById(sid);
Object[] values = { tbi, sub };
List l = getHibernateTemplate().find(LOAD_USERORDERINFO_BYUID_SID,
values);
if (l.size() == 0) {
return null;
} else {
return (UserOrder) l.get(0);
}
}
public void deleteUserOrderById(Long id) {
UserOrder uoi = (UserOrder) this.getUserOrderById(id);
try {
this.getHibernateTemplate().delete(uoi);
} catch (Exception e) {
e.printStackTrace();
}
}
public SubjectServiceImpl getSubjectServiceImp() {
return ssi;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -