Struts2入門——基礎詳解
什麼是Struts?
Struts是流行和成熟的基於MVC設計模式的Web應用程式框架。
使用Struts的目的:
為了幫助我們減少執行MVC設計模型來開發Web應用的時間。
什麼是MVC模式?
MVC全名是Model View Controller(模型檢視控制器),一種軟體設計典範,用一種業務邏輯、資料、介面顯示分離的方法組織程式碼,將業務邏輯聚集到一個部件裡面,在改進和個性化定製介面及使用者互動的同時,不需要重新編寫業務邏輯。
搭建Struts2環境步驟
下載相關jar包
Apache Struts官網:http://struts.apache.org/download
我使用的是struts-2.3.33這個版本
解壓我們下載好的struts-2.3.33.zip,開啟apps資料夾,然後解壓struts2-blank.war,開啟\struts2-blank\WEB-INF\lib檔案,如下圖所示(即所需的最小jar包):
建立Web專案並匯入Struts2所需的jar包
完善相關配置檔案
配置web.xml檔案
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns ="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
id="WebApp_ID" version="3.0">
<display-name>struts2_demo</display-name>
<!-- struts2 配置
1.新增過濾器filter
2.filter對映filter-mapping
-->
<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>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
任何MVC框架都需要Web應用整合,不得不借助web.xml檔案,只有配置在web.xml檔案中Servlet才會被應用載入。
建立struts.xml
在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="default" namespace="/" extends="struts-default">
<action name="helloWorldAction" class="com.demo.action.HelloWorldAction">
<result>/index.jsp</result>
</action>
</package>
</struts>
struts.xml檔案struts2的核心配置檔案,在開發過程中利用率最高(該檔案主要負責管理應用程式中的Action對映,以及包含Result定義等)。
主要包含:
1. 全域性屬性
2. 使用者請求和響應Action之間的對應關係
3. Action可能用到的引數和返回結果
4. 各種攔截器的配置
建立Action並測試啟動
建立HelloWorldAction.java類,程式碼如下:
package com.demo.action;
import com.opensymphony.xwork2.ActionSupport;
public class HelloWorldAction extends ActionSupport {
private String message;
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
@Override
public String execute() throws Exception {
setMessage("This is index.jsp");
return SUCCESS;
}
}
這個類主要用於struts2跳轉到相對應的action後,預設執行execute()方法,並根據返回結果返回字元,struts.xml根據返回的字元跳轉到相對相的介面。
編寫index.jsp頁面,如下:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags" %> <!-- struts2唯一的標籤庫 -->
<!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>
<s:property value="message"/>
</body>
</html>
部署專案
總結
最簡單的Struts2的使用總結完畢,歡迎小夥伴們學習。
相關推薦
Struts2入門——基礎詳解
什麼是Struts? Struts是流行和成熟的基於MVC設計模式的Web應用程式框架。 使用Struts的目的: 為了幫助我們減少執行MVC設計模型來開發Web應用的時間。 什麼是MVC模式? MVC全名是Model View Control
spark大資料架構初學入門基礎詳解
Spark是什麼 a) 是一種通用的大資料計算框架 b) Spark Core 離線計算 Spark SQL 互動式查詢 Spark Streaming 實時流式計算 Spark MLlib 機器學習 Spark GraphX 圖計算 c) 特點:
Django入門基礎詳解
本次使用django版本2.1.2 安裝django 安裝最新版本 pip install django 安裝指定版本 pip install django==1.10.1 檢視本機django版本 pip show django 建立專案 建立
Redis入門基礎詳解
val nlp 安裝ruby led 服務 後臺運行 參數 migrating install Redis 簡介Redis 是完全開源免費的,遵守BSD協議,是一個高性能的key-value數據庫。Redis 與其他 key - value 緩存產品有以下三個特點:Redi
Hibernate入門——基礎詳解
什麼是ORM? ORM全名是Object Relational Mapping(物件關係對映),用來把物件模型表示的物件對映到基於S Q L 的關係模型資料庫結構中去。 它的方法論基於三個核心原則: 簡單:以最基本的形式建模資料。 傳達性:資料庫結構被任
java基礎原來這麼容易入門(詳解)
8種基本型別 int 整形 long 長整形 short 段整形 double 雙精度 float 單精度 char 字元型別 boolean 布林型別 byte 位元組型別 2 1995年由sun公司開發的 2009年 由oracle收購 3 2種技術平臺 java SE:標準版 java
Skynet基礎入門例子詳解(5)
Socket通訊協議Sproto 在和客戶端通訊時,需要制訂一套通訊協議。 skynet 並沒有規定任何通訊協議,所以你可以自由選擇。 sproto 是一套由 skynet 自身提供的協議,並沒有特別推薦使用,只是一個選項。sproto 有一個獨立專案存在
spring security 基礎入門(配置詳解)
<filter> <filter-name>springSecurityFilterChain</filter-name> <filter-class>org.springframework.web.filter.DelegatingFilterPr
Scrapy 爬蟲框架入門案例詳解
tin mon setting 爬蟲框架 finished perror project 原因 create 歡迎大家關註騰訊雲技術社區-博客園官方主頁,我們將持續在博客園為大家推薦技術精品文章哦~ 作者:崔慶才 Scrapy入門 本篇會通過介紹一
vim基礎詳解
退出 代碼 舉例 soc 成了 grey 好用 ica 執行命令 目錄: 什麽是vim Vim能做什麽 如何學習vim 如何用vim打開一個文件 Vim的三種模式 插入模式 命令模式 擴展命令模式 光標
struts2使用配置詳解
doc jsp 特定 ext mes struts-2 system 瀏覽器 con struts2.xml的文件配置 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC
C文件操作基礎詳解·········關於fopen,fwrite,,fseek,fgetc的使用。
基礎 user fseek fse app c2c etc 基礎詳解 open 05Y1L7j蝕3UKAhttp://huiyi.docin.com/sina_6355806917 Q托9MCS南9善EU晃喲http://huiyi.docin.com/qfptt159
vuex基礎詳解及項目實例
export DDU 整合 輸入 發的 .com return isp 分享 1、概念 Vuex 是一個專為 Vue.js 的SPA單頁組件化應用程序開發的狀態管理模式插件,它包括State(數據源)、Getters(計算屬性)、Modules(模塊)、Mutation
Python學習一:序列基礎詳解
list ava author 萬裏 單個 使用下標 不能 get 分別是 作者:NiceCui 本文謝絕轉載,如需轉載需征得作者本人同意,謝謝。 本文鏈接:http://www.cnblogs.com/NiceCui/p/7858473.html 郵箱:moyi
Haproxy 基礎詳解及動靜分離配置
haproxy 動靜分離 haproxy 介紹 1 工作在ISO 七層 根據http協議(或者工作在ISO四層 根據tcp協議) 提供web服務的負載均衡調度器負載均衡調度器分類 工作在四層: # lvs 工作在七層: # nginx (web,http reverse proxy,cache
mybatis 基礎詳解
batis 添加用戶 主鍵 actor cor @override iba 基本功 ide 轉 https://www.cnblogs.com/Mr-Kenson/p/8124680.html mybatis 是一個開源的 用於對數據庫操作的框架, 讀者基本都大體了解其
Tomcat基礎詳解
都是 特殊 host access 報文 jvm classname 實例 toc Tomcat基礎詳解組件原理圖如下:任何tomcat實例就是一個server,而一個server內部要想能夠解析jsp頁面轉義編譯serlet程序,要靠其引擎來實現而引擎才是真正意義上執行j
linux網絡防火墻-iptables基礎詳解(重要)
lte 目前 targe udp 安全 們的 tina 設計 常見 一:前言 防火墻,其實說白了講,就是用於實現Linux下訪問控制的功能的,它分為硬件的或者軟件的防火墻兩種。無論是在哪個網絡中,防火墻工作的地方一定是在網絡的邊緣。而我們的任務就是需要去定義到底
Struts2的Action詳解
Struts2的Action詳解Struts2中的action,主要是完成業務邏輯操作。Action替代在servlet中完成的作用。Action的學習主要有兩點如何創建一個struts2的action如果訪問一個struts2的action1. Action類創建方式(三種)創建一個pojo類Pojo(pl
JAVA 圖形界面開發基礎詳解
.so 積木 並且 init 中間 ram stat 字符 tle /*文章中用到的代碼只是一部分,需要源碼的可通過郵箱聯系我 [email protected]*/ 與C的win32一樣,JAVA也有自己的圖形界面開發,將在此篇博客中對基礎部分進行講解。 1.Java提供