Struts2入门案例
简介
Struts2是一个MVC开源框架。是一个表现层的框架。它是由struts1和WebWork2框架的核心组合起来的一个框架。
下载Struts2开发包
导入需要的jar包
配置web.xml
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1"> <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> </web-app>
建立struts2的配置文件
<?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="p1" extends="struts-default"> <action name="hello" class="com.yundoku.action.HelloAction" method="sayHello"> <result name="success">/success.jsp</result><!--当调用sayHello的返回结果为success,转发到/success.jsp--> </action> </package> </struts>
创建Action动作类和动作方法
public class HelloAction { /** * Action的方法书写要求: * 1.都是public修饰 * 2.返回值为String类型 * 3.方法不能代有参数 * * @return */ public String sayHello(){ System.out.print("HelloWorldAction的sayHello方法访问了"); return "success";//与struts.xml文件中的result标签的name属性值对应 } }
index.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Struts2入门案例</title> </head> <body> <%-- 在Struts2中,控制器会默认拦截.action为后缀名的请求(url以.action为后缀)除此之外,什么都不写也可以 --%> <a href="${pageContext.request.contextPath}/hello.action" target="_blank">访问struts2的入门案例带有.action的</a><br/> <a href="${pageContext.request.contextPath}/hello" target="_blank">访问struts2的入门案例不带有.action的</a><br/> </body> </html>
success.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Success</title> </head> <body> 操作成功 </body> </html>
时序图