struts2 Action 經過Spring管理, 並經過Spring的方式讀取配置文件

是這樣的項目用的是Struts2 和Spring。我想在action層中測試下配置文件讀取是否正常,Spring 版本有點低是3.1如下的,無法用@Value註解 讀取配置文件。java

還不讓經過文件讀取的形式直接讀配置文件,那我只能經過xml 配置Bean 的形式注入了json

1、首先在Spring 配置bean的xml中,將action 當成一個bean配置好安全

(有一個須要注意的地方就是Spring bean 默認是單例的,而Struts2 的 action不是,因此須要修改 scope。)測試

<bean id="TestAction" class="com.zjl.TestAction" scope = "prototype">
        <property name="username" value="${username}"/>
        <property name="estoken" value="${estoken}"/>
    </bean>

2、在struts2 的配置文件中也有變化 :下面action標籤 的class屬性中要把原來的全類路徑,改成Spring bean name。加密

(若是仍是全類路徑,那這個action還規struts2 管理)spa

<package name="testProperties" namespace="/json/properties" extends="json-protected-default">
        <action name="*" class="TestAction" method="{1}"><!--這個class 用Spring bean name -->
            <!-- 返回信息 -->
            <result name="infoResult" type="json">
                <param name="root">infoJson</param>
            </result>
        </action>
    </package>

3、在action 中讀取配置文件.net

public class TestAction extends BaseAction {
   

    private String estoken;

    private String username;

    /**
     * 測試配置文件安全的返回json
     */
    private String infoJson;


    /**
     * 測試配置文件安全加密
     */
    public String testProperties() {
        infoJson = "zjl:" + "username:" + username + "---" + "estoken:" + estoken;
        return "infoResult";
    }

4、在properties 配置文件中寫好配置prototype

XXX.propertiescode

estoken=hahaha
username=lalala

 

參考 :https://blog.csdn.net/u012881904/article/details/50976100xml

         :https://blog.csdn.net/StackFlow/article/details/79255916

相關文章
相關標籤/搜索