?? userpointdao.java
字號:
package com.david.dao;
import java.util.List;
import org.hibernate.LockMode;
import org.springframework.dao.DataAccessException;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import com.david.bo.Userinfo;
import com.david.bo.Userpoint;
public class UserpointDao extends HibernateDaoSupport implements IUserpointDao {
public void setInitPoint(Userinfo userinfo) {
// TODO Auto-generated method stub
Userpoint userpoint=new Userpoint();
userpoint.setUserinfo(userinfo);
userpoint.setPoint(500);
this.getHibernateTemplate().save(userpoint);
}
public boolean addPoint(Userinfo author, int point) {
// TODO Auto-generated method stub
Userpoint userpoint=new Userpoint();
//userpoint.setId(this.getUserpointByUser(author).getId());
userpoint.setId(author.getUserpoint().getId());
//userpoint.setPoint(this.getUserpointByUser(author).getPoint()+point);
userpoint.setPoint(author.getUserpoint().getPoint()+point);
userpoint.setUserinfo(author);
try{
//this.getHibernateTemplate().update(userpoint,LockMode.UPGRADE);
this.getHibernateTemplate().update(userpoint);
return true;
}catch(DataAccessException e){
e.printStackTrace();
return false;
}
}
public boolean executeDownPoint(Userinfo author, Userinfo userinfo, int point) {
// TODO Auto-generated method stub
System.out.print(author.getId()+" "+userinfo.getId()+" "+point);
try{
if(author.getUsername().equals(userinfo.getUsername())){
;
}else{
this.reducePoint(userinfo, point);
this.addPoint(author, point);
}
return true;
}catch(DataAccessException e){
e.printStackTrace();
return false;
}
}
public boolean reducePoint(Userinfo userinfo, int point) {
// TODO Auto-generated method stub
Userpoint up=new Userpoint();
//userpoint.setId(this.getUserpointByUser(userinfo).getId());
up.setId(userinfo.getUserpoint().getId());
//userpoint.setPoint(this.getUserpointByUser(userinfo).getPoint()-point);
up.setPoint(userinfo.getUserpoint().getPoint()-point);
up.setUserinfo(userinfo);
try{
//加鎖
//this.getHibernateTemplate().update(userpoint,LockMode.UPGRADE);
this.getHibernateTemplate().update(up);
return true;
}catch(DataAccessException e){
e.printStackTrace();
return false;
}
}
public Userpoint getUserpointByUser(Userinfo userinfo) {
// TODO Auto-generated method stub
try{
List<Userpoint> list = this.getHibernateTemplate().find("from Userpoint as userpoint where userpoint.userinfo=?", userinfo);
if(list.size()==1){
return list.get(0);
}else{
return null;
}
}catch(DataAccessException e){
e.printStackTrace();
return null;
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -