前面说过,Hibernate的配置信息是添加在spring的配置文件里的,在上面的userDAO中引用的sessionFactory就需要用到这些信息「如下」。
< !-- 配置连接数据库和事物管理参数 -->
< bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource">
< property name="driverClassName"
value="com.mysql.jdbc.Driver">
< /property>
< property name="url"
value="jdbc:mysql://127.0.0.1:3306/test">
< /property>
< property name="username" value="root">< /property>
< property name="password" value="root">< /property>
< /bean>
< bean id="SessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
< property name="dataSource">
< ref bean="dataSource">< /ref>
< /property>
< property name="hibernateProperties">
< props>
< prop key="hibernate.dialect">
org.hibernate.dialect.MySQLDialect
< /prop>
< prop key="hibernate.show_sql">true< /prop>
< prop key="hibernate.format_sql">true< /prop>
< /props>
< /property>
< property name="mappingResources">
< list>
< value>com/dc/pojo/User.hbm.xml< /value>< /list>
< /property>
< /bean>
userDAO的验证方法「如下」:在这个类中继承了一个HibernateDaoSupport类,继承后在配置文件中就可以添加一个sessionFactory属性,用于获取HibernateSessionFactory.
public class UserDAOImpl extends HibernateDaoSupport implements UserDAO {
public User checkUser(String name, String password) {
String sql = "from User u where u.name=? and password=?";
List userList = this.getHibernateTemplate().find(sql.toString(),
new Object[]{name, password});
return userList.size() == 0 ? null : (User) userList.get(0);
}
}
4)、找到action后处理用户的登录,「如下」。 userService调用了getUserByParam方法,而在getUserByParam方法中又调用了userDAO的checkUser方法。验证通过后转到成功页面,否则转到失败页面。
//用户登录验证
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
LoginActionForm laf = (LoginActionForm) form;
String name = laf.getName();
String password = laf.getPassword();
User user=userService.getUserByParam(name, password);
if(user!=null){
HttpSession session=request.getSession();
session.setAttribute("user", user);
return mapping.findForward("success");
}
return mapping.findForward("failed");
}
这就是一个简单的流程,当然还有一些细节的东西需要我们去摸索。在这过程中,三个框架都发挥了各自的作用,如果在一些比较复杂的应用里面这是很方便的。这种模式使一个系统变得灵活、易于扩展和维护,所以得到了比较广泛的应用。
以上就介绍了MyEclipse整合SSH的流程。
上一页 [1] [2]
责任编辑:小草