SSH框架學習(三、struts+spring搭建,spring註解注入)

http://blog.csdn.net/wuyt2008/article/details/8237150

這裏,還可以用spring的註解注入的方式進行注入。

導入的包和之前一樣不變,web.xml不變

applicationContext.xml

[html] view plaincopy
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <beans xmlns="http://www.springframework.org/schema/beans"  
  3.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  4.     xmlns:context="http://www.springframework.org/schema/context"  
  5.     xsi:schemaLocation="http://www.springframework.org/schema/beans  
  6.            http://www.springframework.org/schema/beans/spring-beans-3.0.xsd  
  7.            http://www.springframework.org/schema/context   
  8.            http://www.springframework.org/schema/context/spring-context-3.0.xsd">  
  9.   
  10.     <context:component-scan base-package="demo.myssh.business" />  
  11. </beans>  

struts.xml

[html] view plaincopy
  1. <?xml version="1.0" encoding="UTF-8" ?>  
  2. <!DOCTYPE struts PUBLIC  
  3.     "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"  
  4.     "http://struts.apache.org/dtds/struts-2.3.dtd">  
  5. <struts>  
  6.     <package name="mysshdemo" extends="struts-default">  
  7.         <action name="user" class="demo.myssh.action.UserAction">  
  8.             <result>/index.jsp</result>  
  9.         </action>  
  10.     </package>  
  11. </struts>  

UserAction.java

[java] view plaincopy
  1. package demo.myssh.action;  
  2.   
  3. import org.springframework.beans.factory.annotation.Autowired;  
  4. import org.springframework.stereotype.Controller;  
  5.   
  6. import com.opensymphony.xwork2.ActionSupport;  
  7. import demo.myssh.business.UserService;  
  8.   
  9.   
  10. public class UserAction extends ActionSupport {  
  11.   
  12.     @Override  
  13.     public String execute() throws Exception {  
  14.   
  15.         this.addActionMessage("UserAction working");  
  16.         // this.addActionMessage("hello world.");  
  17.         this.addActionMessage(userService.doing());// 修改下,確認注入成功。  
  18.   
  19.         return ActionSupport.SUCCESS;  
  20.     }  
  21.   
  22.     // 注入屬性  
  23.     @Autowired  
  24.     private UserService userService;  
  25. }  

UserService.java

[java] view plaincopy
  1. package demo.myssh.business;  
  2.   
  3. import org.springframework.stereotype.Service;  
  4.   
  5. @Service  
  6. public class UserService {  
  7.   
  8.     public String doing()  
  9.     {  
  10.         return "UserService working.";  
  11.     }  
  12. }  

運行結果和之前的一樣。

這樣的注入方式可以省去一些代碼,不需要大量的配置文件。

沒有大量的配置文件,好處是省了不少代碼,壞處是沒有統一地方查看。

不過個人認爲,如果採取這樣的注入方式的話,不如直接把struts踢掉直接用spring3的mvc好了。

發佈了32 篇原創文章 · 獲贊 5 · 訪問量 16萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章