简单Struts2的目录结构

本文详细介绍了如何构建Struts2框架的目录结构,并通过一个简单的Struts.xml配置文件展示了如何配置Action类和结果跳转。同时,解释了web.xml文件中如何定义核心Filter来拦截用户请求,确保Struts2框架能够介入Web应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近看Struts2,留个脚印。自己构建一个Struct2后的目录结构


1、Java Resources的src下是源码,例如Action类。还有一个struts.xml的配置文件,主要内容是在Action等操作后需要跳转到的页面配置

<?xml version="1.0" encoding="GBK"?>
<!DOCTYPE struts PUBLIC
	"-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
	"http://struts.apache.org/dtds/struts-2.1.7.dtd">
<struts>
	<package name="lee" extends="struts-default">
		<action name="login" class="org.crazyit.app.action.LoginRegistAction" method="login">
			<result name="error">/error.jsp</result>
			<result name="success">/welcome.jsp</result>
			<result name="input">/login.jsp</result>		
		</action>
		<!-- 配置regist Action,处理类为LoginRegistAction,指定使用regist方法处理请求,这个必须添加否则无法处理Regist的方法!!! -->
		<action name="regist" class="org.crazyit.app.action.LoginRegistAction" method="regist">
		    <result name="error">/error.jsp</result>
		    <result name="success">/welcome.jsp</result>
		    <result name="input">/login.jsp</result>
		</action>
	</package>
</struts>
一个简单的Struts.xml配置。对应的error.jsp、welcome.jsp等都保存在WebContent目录下,所有这里对应的/是指该工程的WebContent目录。这里的jsp文件位置一定要和物理上所放的位置对应上,否则!!404。。

2、web.xml文件,在这个文件中定义核心Filter来拦截用户请求。由于Web应用是基于请求/响应架构的应用,所以不管哪个MVC Web框架,都需要在web.xml中配置该框架的核心Servlet或Filter这样该框架才可以让该框架介入Web应用中。下面是一个Struts2下的web.xml配置文件,首先定义Struts2的核心Filter然后让Struts2的核心Filter拦截所有请求。引入框架固定写法,没啥可说的。

<?xml version="1.0" encoding="GBK"?>

<web-app xmlns="http://java.sun.com/xml/ns/javaee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
	http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">
	<!-- 定义Struts 2的核心Filter -->
	<filter>
		<filter-name>struts2</filter-name>
		<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
	</filter>
	<!-- 让Struts 2的核心Filter拦截所有请求 -->
	<filter-mapping>
		<filter-name>struts2</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>
</web-app>

3、对应lib

现在用简单的几个Struts2的lib有如下几个,用的是Struts2的2.3.28版本,上来引lib的时候不要把Struts2的lib全部引用,会出错,先引这几个,后面需要的再添加。一定要放对位置。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值