ssh2疑问,myeclipse反向生成了DAO,我是否有需要再对这个DAO进行补充?

比如我想查找score!=0的记录,感觉自动生成的DAO没办法完成,我是应该自己写一个hql语句还是应当在现有的DAO方法里想办法解决呢?如果应当自己写一个DAO函数,应当将该方法写的很通用,还是可以只专注于某一个功能即可(即不在该函数里传递参数,里面的hql是固定的,只能实现某一种的查询)。还有就是service层有什么用,为什么不能直接在action中调用DAO函数,需要在service层中调用DAO函数,action中再调用service的函数呢?
第一次接触ssh,不太懂的框架的好处,谢谢各位的指导~O(∩_∩)O

哈哈。因为才给5分,那我就懒得开自己的机器写代码了。只是稍微提示下。回答问题一,反向Dao后,如何查询score!=0。很简单。自己写一个方法,Dao接口中直接写List getScore();实现类中方法体直接写return List list=this.getHibernate(这个是SSH自带的方法,具体代吗打点就能显示出来).find(from score所在的那个实体类名 where score>0);然后service层的实现类中调用Dao实现的这个方法用一个 List 集合对象来接收,并且通过集合对象的size()方法就能显示出来查询的结果。
关于第二个问题为什么action中不直接调用Dao层的方法。其实呢,你都开始学习到框架了,怎么MVC设计模式还不懂呢?
代码的低耦合性和可维护性,Dao层在项目中一般是作为数据访问层,是要和数据库进行交互的。而service层只是业务逻辑层,并不与数据库直接进行交互,action是核心控制部分。
action的核心控制部分只要调用业务逻辑层的方法,不用去理会数据层。建议自己好好去看看MVC设计模式。要是不懂MVC模式,SSH框架你理解起来会比较困难。追问

十分感谢你的回答,分实在是不多了,所以……老师要我们学习ssh,所以是这我第一次接触框架,挺多不懂的,你的讲解很透彻,很感谢你。
我还想请问下,如果我选择在DAO层中选出所有的对象,在jsp页面中通过0">语句实现仅显示score>0的对象可以吗?我一直不知道这样写和在DAO中选出score>0的对象那个更好。请高手解答下~

追答

肯定是在Dao层中放到集合里然后在页面上迭代好啊。还是因为MVC设计模式的缘故,页面只是负责用来显示结果的,一般不做逻辑判断,还有就是页面一般最好不要有太多或者就不要有小脚本~~

温馨提示:内容为网友见解,仅供参考
无其他回答

ssh2疑问,myeclipse反向生成了DAO,我是否有需要再对这个DAO进行...
很简单。自己写一个方法,Dao接口中直接写List getScore();实现类中方法体直接写return List list=this.getHibernate(这个是SSH自带的方法,具体代吗打点就能显示出来).find(from score所在的那个实体类名 where score>0);然后service层的实现类中调用Dao实现的这个方法用一个 List 集合对象来接收,并且...

MyEclipse开发客户管理系统 框架是ssh2 在jsp页面中有个页面需要计算出...
你应该在业务逻辑层对Dao层对数据库查询到的数据进行计算,然后送至action,再跳转至页面显示结果。不应该在jsp页面进行计算!!!

...哪位大神给解答一下感激不尽myeclipse10.7.1+mysql+tomcat_百度...
解决方法:把applicationContext.xml 放到和struts.xml同级目录下,重启tomcat 解决。或者,在web.xml里面把contextConfigLocation classpath 配置正确。测试结果:

相似回答
大家正在搜