Stuts2學習筆記(1):環境搭建及Demo
源碼:
github: https://github.com/liaotuo/Struts2-Demo/tree/master/struts2-demo
環境搭建
下載struts2
官網下載:http://mirror.bit.edu.cn/apache/struts/2.3.34/struts-2.3.34-all.zip
注:本教程使用2.3.34版本
目錄結構
所需基本jar包
解壓apps下一個demo能夠得到所需的基本jar包
創建web項目
創建一個web項目,并將所需jar包放入WEB-INFO/lib下面(web項目無需build-path)如下圖:
編寫Struts.xml配置文件
可以直接從struts-blank demo中Copy一個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>
</struts>
在web.xml中注冊Struts2啟動配置
往web.xml中加入如下配置
<filter>
<filter-name>struts2</filter-name>
<!-- 這個類全名不同版本不完全一樣 可以從struts-core.jar 中找-->
<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>
至此環境搭建完畢,接下來創建一個demo
Demo
創建我的第一個action
package com.lt.action;
public class HelloAction {
private String msg;
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
/***
* 默認的action執行方法為excute
* @return
*/
public String excute() {
this.setMsg("hello struts2...");
return "success";
}
/***
* 動態方法調用demo
* @return
*/
public String dynamic() {
this.setMsg("hello struts2-dynamicMethod...");
return "success";
}
}
在struts.xml中注冊Action
<?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>
<!-- 常量名可以從struts-core包下org.apache.struts2 下default.properties下查看 -->
<!-- 配置啟用動態方法調用 -->
<constant name="struts.enable.DynamicMethodInvocation" value="true"></constant>
<!-- 需要繼承自struts-default 執行默認的攔截器 -->
<package name="basePakage" namespace="/" extends="struts-default">
<!-- 配置action 默認method是excute可以不配置 -->
<action name="helloAction" class="com.lt.action.HelloAction" method="execute">
<result name="success">index.jsp</result>
</action>
</package>
</struts>
測試成功
注:訪問路徑需注意
deault-value
- 未指定action 默認執行的Class是ActionSupport
- 默認執行action中的execute() 方法
- 沒有指定result的name屬性,默認值為success
動態方法調用的方式
開啟常量
<!-- 配置啟用動態方法調用 -->
<constant name="struts.enable.DynamicMethodInvocation" value="true"></constant>
通配符配置
修改action配置
<action name="helloAction_*" class="com.lt.action.HelloAction" method="{1}">
<result name="success">index.jsp</result>
</action>
智能推薦
Spring學習筆記1,Spring框架入門及環境搭建
Spring框架介紹 Spring 是一個提供了解決J2EE問題的一站式框架 核心:控制反轉,通過配置文件來完成業務對象之間的依賴注入,他鼓勵一個良好的習慣,那就是注入對接口編程而不是對類編程 事務處理:他能夠在各種底層事務處理技術上提供一個統一的編程模型 Spring是分層的JavaSE/EE應用一站式的輕量級開源框架( 官網 ),以Ioc(Inverse of control)控制反轉和Aop...
學習筆記(1)Java GUI的前期環境搭建及使用方法
環境設置 1.1安裝JDK 下載地址:https://www.oracle.com/cn/java/technologies/javase- downloads.html 本次使用最新版本JDK JavaSE 14 ,單擊“JDK Download”即可下載 1.2設置Windows的環境變量 當JDK安裝過程完成后,開始設置環境變量 (1) 右擊“我的電腦&r...
webpack 學習筆記-1 demo
Webpack,是什么? 借用官方說法: webpack is a module bundler. Its main purpose is to bundle JavaScript files for usage in a browser, yet it is also capable of transforming, bundling, or packaging just about any r...
Hibernate之環境搭建及demo
Hibernate簡介 Hibernate是一個開放源代碼的對象關系映射框架,它對JDBC進行了非常輕量級的對象封裝,它將POJO與數據庫表建立映射關系,是一個全自動的orm框架,hibernate可以自動生成SQL語句,自動執行,使得Java程序員可以隨心所欲的使用對象編程思維來操縱數據庫。 Hibernate可以應用在任何使用JDBC的場合,既可以在Java的客戶端程序使用,也可以在Servl...
python scrapy環境搭建及demo分享
前言 一個高級測試工程師在自學Python后,向我推薦的一個比較容易上手的Python 框架scrapy。在網上搜索了一下資料后感覺挺有趣的,就想著自己也搭建個環境,然后做一個爬取圖片的demo玩下。 開發環境搭建 Python安裝 下載地址:https://www.python.org/getit/ 這里我下載的是3.8.0的版本(我的安裝目錄是:D:\python\Python38-32) 安...
猜你喜歡
freemarker + ItextRender 根據模板生成PDF文件
1. 制作模板 2. 獲取模板,并將所獲取的數據加載生成html文件 2. 生成PDF文件 其中由兩個地方需要注意,都是關于獲取文件路徑的問題,由于項目部署的時候是打包成jar包形式,所以在開發過程中時直接安照傳統的獲取方法沒有一點文件,但是當打包后部署,總是出錯。于是參考網上文章,先將文件讀出來到項目的臨時目錄下,然后再按正常方式加載該臨時文件; 還有一個問題至今沒有解決,就是關于生成PDF文件...
電腦空間不夠了?教你一個小秒招快速清理 Docker 占用的磁盤空間!
Docker 很占用空間,每當我們運行容器、拉取鏡像、部署應用、構建自己的鏡像時,我們的磁盤空間會被大量占用。 如果你也被這個問題所困擾,咱們就一起看一下 Docker 是如何使用磁盤空間的,以及如何回收。 docker 占用的空間可以通過下面的命令查看: TYPE 列出了docker 使用磁盤的 4 種類型: Images:所有鏡像占用的空間,包括拉取下來的鏡像,和本地構建的。 Con...
requests實現全自動PPT模板
http://www.1ppt.com/moban/ 可以免費的下載PPT模板,當然如果要人工一個個下,還是挺麻煩的,我們可以利用requests輕松下載 訪問這個主頁,我們可以看到下面的樣式 點每一個PPT模板的圖片,我們可以進入到詳細的信息頁面,翻到下面,我們可以看到對應的下載地址 點擊這個下載的按鈕,我們便可以下載對應的PPT壓縮包 那我們就開始做吧 首先,查看網頁的源代碼,我們可以看到每一...