日期:2014-05-17  浏览次数:20872 次

涉及查询操作,jsp直接访问dao层行不行?
如果用jsp和servlet开发,是否所有涉及到操作数据库的页面,都得从servlet走啊?我现在做的项目,暂时用了3层,jsp、servlet,dao。比如一个显示所有用户列表的jsp页面,只要调一次相关dao类的方法就获得列表了,但如果要保持清晰的分层的话,好像得先调servlet,然后调dao,然后dao再调jdbc,我觉得servlet其实什么都没做,不过是重新调一次dao,然后把数据存入request,然后jsp提取request中的数据显示出来,这和jsp直接调dao有什么区别?

增删的操作涉及一些判断啥的好像servlet有存在的必要,但就单是查询的页面,请问还需要从jsp调sevrlet吗?jsp直接访问dao层似乎破坏了分层啊,正确的做法到底是什么?

------解决方案--------------------
dao层只跟数据库打交道,不涉及逻辑
逻辑相关的都写在servlet里面,调用dao层数据
以后要是改逻辑了也方便,别人调用也方便啊
------解决方案--------------------
你现在的程序应该不复杂,当你的项目足够复杂的时候,你就知道清晰的层次结构会带来多大的好处,
 
 还有就是提高代码重用性,不要每次都写一堆代码只解决一个问题,要想一想会不会在其他地方用到这段代码,将有共用性的代码分离出来
------解决方案--------------------
JSP到servlet啊,再从servlet调用dao,dao调用service,service操作数据库
------解决方案--------------------
可以。
http://blog.csdn.net/xiazdong/article/details/6895465
我博客上就是不用Servlet,让JSP直接访问DAO。