1. 程式人生 > >Struts2的快速入門案例

Struts2的快速入門案例

Struts2是一個基於MVC設計模式的Web層框架
Struts2的核心相當Struts1已經發生了巨大改變

基於前端控制器的模式

在這裡插入圖片描述

下載Struts2

官網:https://struts.apache.org/

解壓

在這裡插入圖片描述
apps:Struts2提供的war檔案
docs :Struts2開發的文件和Api
lib:Struts2開發的 jar包
src: Struts2的原碼

建立web工程並匯入相關包

在這裡插入圖片描述

建立一個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>Insert title here</title>
</head>
<body>
	<h1>Struts2的快速入門案例</h1>
	<a href="${ pageContext.request.contextPath }/hello.action">訪問Struts2的action</a>
</body>
</html>

建立一個包建立一個Action

package cn.zhicheng.action;

public class HelloAction {
	public String execute(){
		System.out.println("HelloAction執行了");
		return null;
		
	}
}

配置src下的struts.xml檔案

<?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="demo" extends="struts-default" namespace="/">
		<!--配置一個action,hello是jsp介面寫入的hello.action去掉action,class是類全路徑 -->
		<action name="hello" class="cn.zhicheng.action.HelloAction"></action>
	</package>
	

</struts>

配置核心過濾器(web.xml)

<!--配置Struts2核心過濾器 -->
  <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>

執行結果

在這裡插入圖片描述

改進完成跳轉

設定返回值為success

ublic class HelloAction {
	public String execute(){
		System.out.println("HelloAction執行了");
		return "success";
		
	}
}

修改配置檔案

增加了/demo1/success.jsp

<package name="demo" extends="struts-default" namespace="/">
		<!--配置一個action -->
		<action name="hello" class="cn.itheima.action.HelloAction">
			<result name="success">/demo1/success.jsp</result>
		</action>
	</package>
	

建立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>Insert title here</title>
</head>
<body>
	<h1>成功跳轉到success.介面</h1>
</body>
</html>

在這裡插入圖片描述