action代码:
dao代码:
package com.yj.action;
import javax.annotation.Resource;
import org.apache.struts2.convention.annotation.Result;
import org.apache.struts2.convention.annotation.Results;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;
import com.opensymphony.xwork2.Action;
import com.opensymphony.xwork2.ActionSupport;
import com.yj.model.User;
import com.yj.service.UserService;
//配置action转发
@Results( { @Result(name = Action.SUCCESS, location = "/success.jsp"),
@Result(name = Action.ERROR, location = "/error.jsp") })
//把userAction注入到spring中
@Component("userAction")
//spiring中bean的作用域,一个bean定义对应多个对象实例
@Scope("prototype")
public class UserAction extends ActionSupport
{
/**
* Comment for <code>serialVersionUID</code><br>
*
*/
private static final long serialVersionUID = -1897649005162084989L;
private UserService userService;
private User user;
public User getUser()
{
return user;
}
public void setUser(User user)
{
this.user = user;
}
public UserService getUserService()
{
return userService;
}
//把UserService注入到userAction中
@Resource
public void setUserService(UserService userService)
{
this.userService = userService;
}
public String addUser()
{
if (userService.exits(user.getUsername()))
{
return ERROR;
}
userService.save(user);
return SUCCESS;
}
}
dao代码:
package com.yj.dao;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.orm.hibernate3.HibernateTemplate;
import org.springframework.stereotype.Component;
import com.yj.model.User;
@Component
public class UserDAO
{
private HibernateTemplate hibernateTemplate;
public HibernateTemplate getHibernateTemplate()
{
return hibernateTemplate;
}
@Resource
public void setHibernateTemplate(HibernateTemplate hibernateTemplate)
{
this.hibernateTemplate = hibernateTemplate;
}
public void save(User user)
{
hibernateTemplate.save(user);
}
@SuppressWarnings("unchecked")
public List<User> findByUsername(String username)
{
return hibernateTemplate.find("from User u where u.username = ?",
username);
}
}