频道栏目
首页 > 资讯 > Java > 正文

javaEE SSH框架 BaseAction的抽取以及其他方面代码优化

16-03-31        来源:[db:作者]  
收藏   我要投稿
一:抽取BaseAction
(1)先说一下ModelDriven的使用,比如用户登录,我想得到界面输入的用户账号userNum和用户密码password,可以在Action类中声明并实现get、set方法,对应到界面input的name属性一致,然后就可以得到(也可以在Action中声明一个User user对象,对应到界面input的那么属性写user.userNum,user.password也可以得到)
使用ModelDriven后,界面中name属性对应到对象的属性
 
可以直接在类中声明一个对象model,通过model.get()方法得到对象对应的属性即可。
 
 
(2)抽取BaseAction类,先说一下为什么要抽取,因为我们在每个Action中都要定义对应的对象model,我们可以抽取出来声明为泛型,通过反射得到对象的类型即可。
还有就是每个Action中可能会重复用到的Service接口对象,我们也都在BaseAction中将用到的接口对象声明为protected类型(前几天刚好复试c++,复习了一下类的关系),只要继承BaseAction就可以得到父类的Service接口对象了。
 
二:关于Dao层的调用代码优化
(1)因为之前我们在BaseDao中将公共的增、删、改、查代码抽取出来了,可以参考我的这篇博客后面的说明:http://blog.csdn.net/u013082989/article/details/50964133
又因为我们Service层经常会调用到增、删、改、查,这样Service层又要重新写一遍,然后再去调用Dao层,这样就重复了(当然这样没有问题),我们现在将业务层Service和Dao层放在一起,将BaseDao改名为DaoSupport,Service层继承DaoSupport即可
dao层就不需要了
直接在Service层通过getSession()方法查询数据库(getSession是DaoSupport中的,声明为protected类型,子类中就可以得到了)
(2)优化后的图示:
相关TAG标签
上一篇:一起talk C栗子吧(第一百三十一回:C语言实例--C程序内存布局三)
下一篇:【LeetCode OJ 075】Sort Colors
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站