Struts2为Action中的属性提供了依赖注入功能,在struts2的配置文件中,我们可以很方便地为Action中的属性注入值。注意:属性必须提供setter方法。下面举例说明:
配置文件如下:
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apache.org/dtds/struts-2.3.dtd"> <struts> <package name="struts" namespace="/test" extends="struts-default"> <action name="inject" class="com.struts.action.InjectValueForActionParam" method="execute"> <param name="message">测试值</param> <result name="success">/WEB-INF/pages/injectValueForActionParam.jsp</result> </action> </package> </struts>
上面通过<param>节点为action的message属性注入“测试值”
下面是action:
package com.struts.action; public class InjectValueForActionParam { private String message; public String getMessage() { return message; } public void setMessage(String message) { this.message = message; } public String execute() { return "success"; } }
injectValueForActionParam.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>为Action的属性注入值</title> </head> <body> 注入值为:${message } </body> </html>
部署项目到服务器,页面显示:注入值为:测试值