一开始敲ssh,完全被各种配置弄晕了,看着视频里的老师,一会儿往application中配置,一会儿往Struts里配置,最重要的是,他以为我都理解了,完全不告诉我为什么这样配!当时,我在心里哭啊,老师,我并不知道为什么啊!哭完了之后,自己研究,人就是这样,在哪里跌倒就在哪里爬起,然后跌倒,然后再爬起。。。所以,那些成功的人在人前虽然看着都是光鲜亮丽的,但他柜子里有几身磨破的衣服,只有他自己知道。
现以后台管理员登录来走一遍整个配置过程。
一、分层:
1、在项目中建立adminuser包,在包中建四个包:action,dao,service,vo;
2、在每个包中建类,如图:
二、编写类文件:
1、编写实体层vo:
1)在AdminUser类中,声明adminUser需要的字段,为每个字段设置get和set方法。
2)编写实体与表的映射文件 AdminUser.hbm.xml
2、Dao层要继承HibernateDaoSupport类;
3、在业务层追加事务:@Transactional。声明Dao对象,注入dao,添加set方法。
4、在action中使用模型驱动:继承Actionsupport类,实现了模型驱动的接口ModelDriven。
1) 使用模型驱动,需要提供模型驱动使用的对象adminUser,并未此对象设置get方法(为model编写get方法,在其他类中,可以通过模型驱动,直接找到adminUser的值,不再是每个层都引用实体类):
private AdminUser adminUser=new AdminUser(); publicAdminUser getModel() { returnadminUser; }
2)声明Service对象,注入service,添加set方法。
三、application管理
1、配置Hibernate的映射文件,添加实体vo和AdminUser.hbm.xml之间的映射 ;
2、编写依赖注入的配置:
1)后台用户登录的Action;
2)后台用户登录的Service;
3)后台用户登录的Dao;
到底, 配置结束,开始编写登录的代码。
这时你可能问,配置结束了吗?博主啊,你这忒糊弄人了吧。。。Struts在编写的时候不是也得配置吗?Jdbc.properties是用来做什么的呀?为什么在实体vo中要为字段这样设置get和set的方法而为注入的对象只设置set方法?还有还有,映射文件的作用是什么???博主,你都没讲啊!!!
回各位读者的问题:本篇博客主要讲解的我们在使用SSH时做的一些配置,属于宏观认识。具体关于这样配置的原因,在接下来的系列文章中,我会为各位读者一一解答,请各位继续关注《SSH框架》系列文章。