
正文
javadao通用代码 java的代码规范
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
java开发,通用DAO接口是指什么
一个接口可以从三方面去考察:
制定者(或者叫协调者),实现者(或者叫生产者),调用者(或者叫消费者)。
接口本质上就是由制定者来协调实现者和调用者之间javadao通用代码的关系。
所以通常说javadao通用代码的“面向接口编程”可以理解为:
只有实现者和调用者都遵循“面向接口编程”这个准则,制定者的协调目的才能达到。
一个老生常谈的例子就是JDBC。
优点:
接口和实现分离javadao通用代码了,适于团队的协作开发。
更具体的优点:可以参看IDP原则。
缺点:
设计难了,在你没有写实现的时候,就得想好接口,接口一变,全部乱套,这就是所谓的设计比实现难。
所以设计接口的人工资都高啊!!!
——————————————————————
Java本身也是一个不断完善的语言,他也在频繁的改动他的系统API来完善,他的API是一个庞大的体系,互相关联,如果不采用接口,而都是用实现类的话,那么API的改动就会给整个体系带来不稳定。而且如果改动API,那么就会有大量采用旧API的项目因无法正常运行,会损失大量客户。换句话说,JDK已经发布的API是一种承诺,一经发布就不能更改,即使原来API存在各种各样的问题(例如java.util.Properties类就是一个失败的例子)也必须保留,于是在Java里就出现了不建议使用的方法,但JDK依然提供该方法。而且Java语言本身是一个跨平台的语言,为了满足在各个平台下运行,就必须把各种操作做成接口,在编写各个平台下的实现类
请参考
相关问答
Q1: 使用java SSH写通用dao层和service层。
import java.io.Serializable;
import java.util.List;
import java.util.Map;
public interface ICommonDao {
public Serializable save(Object entity);
public void update(Object entity);
public void merge(Object entity);
public void delete(Object entity);
public Object findObject(Class clazz, Serializable id);
public List findList(String queryString);
public List findList(String queryString, Map args);
public Object findUniqueResult(String hql);
public List findList(final String hql, final int num);
}
import java.io.Serializable;
import java.util.List;
import java.util.Map;
public interface ICommonService {
public Serializable save(Object entity);
public void update(Object entity);
public void merge(Object entity);
public void delete(Object entity);
public Object findObject(Class clazz, Serializable id);
public List findList(String queryString);
public List findList(String queryString, Map args);
public Object findUniqueResult(String hql);
public List findList(final String hql, final int num);
}
实现类javadao通用代码,用CommonDaoImpl实现ICommonDao
用CommonServiceImpl实现ICommonService
实现javadao通用代码的时候直接调用hibernateTemplate中javadao通用代码的方法就行,或者自己写点儿,都不难
Q2: java中一次添加多条数据的DAO怎么写
java连接数据库时javadao通用代码,往数据库一次添加多条数据javadao通用代码,可以在DAO层,使用executeBatch()批量插入数据,如下代码:
conn = DBToolkit.getConnection();
Statement stmt = conn.createStatement();
//连续添加多条SQL
stmt.addBatch("insert into testdb.book (kind, name) values ('java', 'java in aciton')");
stmt.addBatch("insert into testdb.book (kind, name) values ('c', 'c in aciton')");
//执行批量执行
stmt.executeBatch();
javadao通用代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java的代码规范、javadao通用代码的信息别忘了在本站进行查找喔。








