日期:2014-05-19 浏览次数:21044 次
package com.portal.user.web;
import java.util.Map;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;
import com.portal.user.model.User;
import com.portal.user.service.IUserService;
//通过实现ModelDriven来获取表单的内容
public class UserAction extends ActionSupport implements ModelDriven<User>{
private static final Logger log =
(Logger) LoggerFactory.getLogger(UserAction.class);
private IUserService userService;
private User model = new User();
//private String username;
//private String password;
//private String email;
@Override
public User getModel() {
// TODO Auto-generated method stub
return model;
}
//依赖注入业务逻辑组件
public void setUserService(IUserService userService) {
this.userService = userService;
}
/*
* 处理用户登录
* */
public String login(){
log.debug("user login!");
Map session = ActionContext.getContext().getSession();
//获取用户请求的表单的值
try{
//查找是否有该用户
int va = userService.login(model.getUserName(), model.getPassWord());
//如果没有,返回错误界面
if(va!=-1){
//把用户名放入session对象
session.put("username", model.getUserName());
userService.addUser(model);
return SUCCESS;
}
}catch(RuntimeException e){
log.error("login failed", e);
throw e;
}
return LOGIN;
}
/**
* 用户注册
* */
public String register()throws Exception{
log.debug("User register!");
int emailnum=1;
//try{
//查找用户名是否已经存在
int va = userService.findUserByName(model.getUserName());
if(va!=-1){
//邮箱是否注册过了
emailnum = userService.findByEmail(model.getEmail());
if(emailnum!=-1){
userService.addUser(model);
return SUCCESS;
}
}
return INPUT;
}
}
<bean id="UserDAO" class="com.portal.user.dao.UserDAO">
<property name="sessionFactory">
<ref bean="sessionFactory"></ref>
</property>
</bean>
<!-- 部署业务逻辑组件,并把它所依赖的DAO组件注入到业务逻辑组件中 -->
<bean id="UserService" class="com.portal.user.service.UserService">
<property name="userDAO" ref="UserDAO"></property>
</bean>
<!-- 把业务逻辑组件注入到Action中 -->
<bean id="UserAction" class="com.portal.user.web.UserAction">
<property name="userService" ref="UserService"></property>
</bean>