struts+spring+hibernate的问题

来源:百度知道 编辑:UC知道 时间:2024/06/04 04:01:13
在编写DAO时,可不可以使用OBJECT对象对数据库进行操作,这样不是可以应用在很多不同的数据上
是不是一定要对每一个模块都编写一个DAO和SERVICE啊?我觉得这些在很多功能上都是一样的,可不可就编写一个,而这一个可以实现所有类似功能

很多涉及到update语句的方法这样写,很多方法要写很多重复的代码。像关闭连接,设置?如:
public int DelPaper(ExamUser instance) {
String sql="delete from exam_user where id=?";
conn cdb=conn.createInstance();
cdb.setPs(sql);
try{
cdb.getPs().setInt(1,instance.getid());
return cdb.Update2();
}catch (SQLException e) {
e.printStackTrace();
}
finally{
cdb.closeCon();
}
return 0;
}
修改,增加也要写这样的。
很多修改和删除的操作,有很多相似的地方。不同的就是sql语句不同,ps。set的值类型和数量不一样。如何简化。可以建一个抽象类改方法所在的类继承这个抽象类。抽象类中的内容:
public abstract class xx{
public int UpdateUser(String sql,Object[] args){//不一样的地方用参数传递
conn cdb=conn.createInstance();
cdb.setPs(sql);
try{
for(int i=0;i<args.length;i++){
cdb.getPs().setObject(i+1,args);//注意数组从0开始,而这里设置是从1开始
}
return cdb.Update2();//方法update2里执行的就是ps.executeUpdate();
// return cdb.getPs().executeUpdate();//ps是pr