首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

施用spring的annotation配置项目

2013-01-02 
使用spring的annotation配置项目在spring中提供了如下几个Annotation来标注Spring Bean:@Component:标注一

使用spring的annotation配置项目
在spring中提供了如下几个Annotation来标注Spring Bean:
@Component:标注一个普通的Spring Bean类。@Controller:标注一个控制器组件类。@Service:标注一个业务逻辑组件类。@Repository:标注一个Dao组件类。
另外两个常用的Spring Annotation:
@Autowired:用来自动装配Bean,可以标注setter方法、普通方法、Field和构造器等。@Scope:用来标注一个Spring Bean的作用域,默认是singleton,对于action类我们会通常将其scope设置为prototype。

下面看如何使用Spring的annotation,首先需要在Spring的配置文件applicationContext.xml中添加如下配置:

@Scope("prototype")@Controllerpublic class LoginAction implements Action {@Autowiredprivate UserService userService;private User user;public User getUser() {return user;}public void setUser(User user) {this.user = user;}public UserService getUserService() {return userService;}public void setUserService(UserService userService) {this.userService = userService;}public String execute(){String pwdMD5 = DigestUtils.md5Hex(user.getPassword());if(this.userService.login(user.getUsername(), pwdMD5)){ActionContext.getContext().getSession().put("username", this.user.getUsername());return SUCCESS;}return ERROR;}}

这里使用@Scope("prototype")来指定了该action是原型类型的,即每来一个请求都要new一个这个类的对象,而不是使用单例,使用单例时如果有多个请求同时请求该action就会出现错误。

热点排行