如有错误请。。。只用了注入 没有用注解)
在这个苦逼的色月里,对《北风博客系统》进行码农般的干活。
跟着厉风行大师的思路学完了博客注册和博客登录。第一次学到的新东东太多了。
首先还是酝酿一下整体思路:ssh_MVC三大框架的整合,
一:导入jar包,(struts2,mysql,hibernate,spring)
二:新建数据库,(另外新建一个库,在去库里面建表比较好)(数据库管理软件Navicat)
user表用于注册和登录(username, password, nickname, question, answer)。
三:配置struts2的过滤器(web.xml),<filter>内部有<filter-name><filter-name/>和<filter-class></filter-class>两个属
性</filter>
<filter-mapping>内部有<filter-name><filter-name/>和<url-patterm></url-
pattern>两个属性<filter-mapping/>
任何action的操作都要经过它过滤 才有权利去struts.xml配置文件里调用(相当于是你爸)。
四:配置spring的监听器(web.xml) ,<listener>里面有<listener-class></listener-class>属性</listener>.
通过它才能进入applicationContext.xml配置文件进行操作
五:进入applicationContext.xml文件进行数据源的配置。
六:对注册和登录模块的po实体类User进行编写.。同时对它转换成持久层数据的操作User.hbm.xml。
七:进入applicationContext.xml文件进行数据管理 配置sessionFactory。
八:编写DAO层,一个UserDAO接口类 , 一个UserDAOImpl实现类 。(添加用户,按id查询用户 )。
九:因为UserDAOImpl实现类extends HibernateDaoSupport implements UserDAO,同时是用了hibernate中的
getHibernateTemplate()。
所以要注入进来
十: 编写service层的业务逻辑代码,一个UserService接口 ,一个UserServiceImpl实现类,有两个判断方法 一个用来判断用
户注册,一个用来判断用户登录。
十一:将DAO注入UserService里面, UserServiceImpl就可以使用 UserDAO的方法进行业务逻辑代码的编写。
public boolean registerService(User user);
注册逻辑:if(按id查询用户去数据库查询用户不等于空,说明该用户存在){返回一个false值,不让他注册}
else{就是没有该用户,就使用添加用户的方法添加一个用户,在返回一个true值,注册成功}
public boolean loginService(User user);
登录逻辑:if(按id查询用户去数据库查询用户等于空,说明该用户还没有注册){返回一个false值,不让他登录}
else{该用户是存在的 获得该用户 在判断密码,if(该用户的数据库密码与当前输入的密码相等){返回一个true让他登录}
else{返回一个false不让他登录}}
十二:将UserService注入action里面,action 对业务逻辑和表现层进行控制,在去struts.xml里面配置action. action的登录和注册类对UserService进行登录和注册的业务逻辑的操作。十三:校验 在struts2里面有自己的校验框架,校验时的校验文件命名是:action类名加上(Login-validators.xml)。