欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Struts2环境搭建

程序员文章站 2024-03-09 17:52:47
...

一.搭建struts2应用需要使用到的最基本的JAR包

%STRUTS2_HOME%\lib\commons-fileupload-1.2.1.jar    文件上传组件,2.16版本后必须加入此文件

%STRUTS2_HOME%\lib\commons-io-1.3.2.jar    日志包

%STRUTS2_HOME%\lib\freemarker-2.3.16.jar    struts2的UI标签的模板使用FreeMarker编写

%STRUTS2_HOME%\lib\javassist-3.7.ga.jar

%STRUTS2_HOME%\lib\ognl-3.0.jar    对象图导航语言,通过OGNL读写对象属性

%STRUTS2_HOME%\lib\struts2-core-2.2.1.1.jar    struts2核心类库

%STRUTS2_HOME%\lib\xwork-core-2.2.1.1.jar    XWork类库,struts2在其上构建

 

二.在类路径下加入Strus2配置文件:struts.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
	<!-- 指定请求后缀 -->
	<constant name="struts.action.extension" value="do,action" />
	<!-- 指定默认编码集,作用域HttpServletRequest的setCharacterEncoding方法 -->
	<constant name="struts.i18n.encoding" value="UTF-8" />
	<!-- 设置浏览器是否缓存静态内容,默认为true(生产环境下使用) -->
	<constant name="struts.serve.static.browserCache" value="false" />
	<!-- 系统是否自动重新加载该文件,默认为false(生产环境下使用) -->
	<constant name="struts.configuration.xml.reload" value="true" />
	<!-- 开发模式 -->
	<constant name="struts.devMode" value="true" />
	<!-- 与Spring集成时,指定由Spring负责action对象的创建 <constant name="struts.objectFactory" 
		value="spring" /> -->
	<!-- 是否支持动态方法调用,默认值为true -->
	<constant name="struts.enable.DynamicMethodInvocation" value="true" />
	<!-- 上传文件的大小限制 -->
	<constant name="struts.multipart.maxSize" value="10701096" />

	<!-- sturt2中使用包(package)来管理action,
		name属性指定了包名,方便其他包继承 ,
		namespace属性指定了命名空间,其指定了action的访问路径
		extends属性指定了该包继承自哪个包,struts-default包定义了struts框架常用的一些拦截器,通常每个包都应继承struts-default包-->
	<package name="hello" namespace="/test" extends="struts-default">
		<!-- 定义action
			name属性指定了action的名称,同时也作为action访问路径的一部分
			class属性指定了action的实现类
			method方法指定了action处理请求的方法名称 -->
		<action name="helloWorld" class="com.chris.action.HelloWorldAction" method="doAction">
			<!-- result属性指定了action的返回视图
				name属性指定了返回视图的名称 -->
			<result name="sucess">/WEB-INF/page/hello.jsp</result>
		</action>
	</package>
</struts>
 

三.在web.xml中加入struts2 MVC框架启动配置

	<filter>
		<filter-name>struts2</filter-name>
		<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
	</filter>

	<filter-mapping>
		<filter-name>struts2</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>

 四.开发HelloWorldAction

package com.chris.action;

public class HelloWorldAction {
	
	/**
	 * 处理请求的方法
	 * 方法名与配置文件中method属性一致
	 * 返回类型必须为String类型
	 */
	public String doAction() {
		return "sucess";
	}
}

 

将应用部署到服务器上,这样就可以处理访问路径为/test/helloWorld.do的请求了