mvcdao层怎么写( 二 )


);dao.save()dao.delete 。.-------------------------------------------------------------------------1.有一个dao接口,里面有平时的增删查该的方法2.有一个具体的实体类3.有一个dao的实现类,有对实体操作的方法,继承1的接口4.如果有需要,还可以有一个工厂类,负责生产dao实现类---------------------------------------------------------------------------DAO层一般有接口和该接口的实现类! 接口用于规范实现类! 实现类一般用于用于操作数据库! 一般操作修改,添加,删除数据库操作的步骤很相似,就写了一个公共类DAO类 ,修改,添加,删除数据库操作时 直接调用公共类DAO类!-----------------------------------------------------------------------------com.公司名.系统名.模块名 代码目录结构Action : 负责页面逻辑,将调用service的结果返回到页面中Service : 接口定义---impl 接口的实现,负责业务逻辑Domain 对应数据库表的pojoDao : 只负责连接数据库,从数据库中查询结果,包装成对象后返回util :工具类 。
2.Dao层方法怎么写dao完成连接数据库修改删除添加等的实现细节,例如sql语句是怎么写的,怎么把对象放入数据库的
service层是面向功能的,一个个功能模块比如说银行登记并完成一次存款,UI要把请求给service层,然后service曾将这一个case分解成许多步骤调用底层的实现完成这次存款,dao就是下面那层
dao就是把数据存起来,之所以service的方法会有雷同只不过是因为service得需求不是很复杂不用再service里面完成太多包装或者处理过程可以直接调用dao的方法就完成的请求处理例如就要save一个对象,而这个对象是封装好的,dao里面有个方法专门save封装好的对象于是service的方法就仅仅调用一下就o了,函数签名自然很像了
service不能直接接触持久层,而dao是持久层或者直接访问持久层
有的时候只是为了分层清楚,为了将来scale up的时候方便我们才把service和dao分开,其实没必要分开的
3.MVC从数据库中查询修改删除数据的DAO 怎么写DAO这一层比较好写了,仅仅是访问数据库的JDBC操作,没有任何业务的代码,就是相应的 增删查改 操作
比如:
public class UserDAO(){
public boolean save(User user){
.
}
public boolean update(User user){
.
【mvcdao层怎么写】}
public User findById(User user){
.
}
}
4.MVC从数据库中查询修改删除数据的DAO 怎么写DAO这一层比较好写了,仅仅是访问数据库的JDBC操作,没有任何业务的代码,就是相应的 增删查改 操作
比如:
public class UserDAO(){
public boolean save(User user){
.
}
public boolean update(User user){
.
}
public User findById(User user){
.
}
}
5.你好 能解释下有的业务只用DAO一层 而有的要用MVC三层呢 我不是很看业务的复杂程度,但这里不凡有那种开发人把所有业务代码写在了控制层里 。MVC..
我总感觉我们要做的是软件,不是简单的写代码,写程序谁都会,但是开发软件就不同了 。
如果业务小确实可以直接DAO,比如在C里通过request,response就可以获取所需参数,直接传进DAO就可以了,没必要加中间的业务层 。这样写是没问题,但是如果未来有一个类突然碰到业务很复杂,中间计算也很复杂,那么以前的结构已经定了,不方便改,只能硬着头皮在C里写所有的业务代码,稍微好一点的就给业务和计算封装到工具类里去了,这样写运行是都不影响工作,但是这就好比你把所有的代码写到了main方法里一样,如果换其他人接手很不好维护,MVC就是一种规则,让大家都这样做,可以方便维护 。还有就是如今面向对象各种设计模式,我们应该面向接口开发,上下层之间互相调用是通过接口,达到解耦,出了名的spring等就是这个作用 。一般经常开发的人,会考虑到后期也许会有什么样的业务对应什么样的接口,那么会预留出业务层,怕出现尴尬的不好扩展局面.. 只要记得能完成功能就行,这种理论是不好的,当然不追求代码质量就无所谓了 。自己做个给自己玩的小软件随便怎么写,不用考虑内存,不用考虑性能,当然最好还是养成良好的习惯,但是也不要习惯学死了,呵呵