诚心请教一个关于hibernate代码设计的问题

07-08-08 TESSS
项目设计中遇到一个问题,数据表某个字段的值需要在1到0之间变化。那我们在写该字段hibernate中更新的代码的时候可以分别写两个操作的方法,或者也可以写一个方法,通过构造查询条件来实现。现在的问题是,在hibernate中,怎么样设计是好的?代码如下:
=================
方法一:
public void updateIsCensor(String member_id,String mode) throws HibernateException{
StringBuffer updateTemp=new StringBuffer();
if ("ok".equals(mode)){
updateTemp.append("UPDATE Member SET isCensor=1");
}
if ("reset".equals(mode)){
updateTemp.append("UPDATE Member SET isCensor=0");
}
updateTemp.append(" where id='");
updateTemp.append(member_id);
updateTemp.append("'");

System.out.println("会员审核时候的 sql="+updateTemp.toString());
int updatedEntities = getSessionFactory().openSession().createQuery(updateTemp.toString()).executeUpdate();


}
==================================

方法二:
public void updateIsCensorOk(String member_id,String mode) throws HibernateException{
StringBuffer updateTemp=new StringBuffer();
updateTemp.append("UPDATE Member SET isCensor=1");
updateTemp.append(" where id='");
updateTemp.append(member_id);
updateTemp.append("'");

System.out.println("会员审核时候的 sql="+updateTemp.toString());
int updatedEntities = getSessionFactory().openSession().createQuery(updateTemp.toString()).executeUpdate();


}

public void updateIsCensorReset(String member_id) throws HibernateException{
StringBuffer updateTemp=new StringBuffer();
updateTemp.append("UPDATE Member SET isCensor=0");
updateTemp.append(" where id='");
updateTemp.append(member_id);
updateTemp.append("'");

System.out.println("会员审核时候的 sql="+updateTemp.toString());
int updatedEntities = getSessionFactory().openSession().createQuery(updateTemp.toString()).executeUpdate();


}

scorpioer
2007-08-08 23:07
个人感觉保存1或0,应该是你们业务需求上面的吧,觉得还是放在业务层,而持久层则只负责保存数据就可以了。

猜你喜欢