Struts2的安装
安装Struts 2 ,并开发一个简单 Model
1、下载Struts 2
在Struts 2 官网下载:http://struts.apache.org ,下载 struts-2.3.16.3-all.zip 。
2、添加Struts 2 .jar文件
将 struts-2.3.16.3-all.zip 中 lib 目录下的所有不以struts 2*命名开头的.jar包、struts 2-core-2.3.16.jar 复制到项目:WebContent/WEB-INF/lib 目录下。
(其实只要导入基本包就行:
struts2-core-2.0.11.jar、 xwork-2.0.4.jar、 ognl-2.6.11.jar、 jstl.jar、 freemarker-2.3.8.jar、commons-logging-1.0.4.jar
;可以导入以下包:
)
3、添加Struts 2 配置文件
下载默认配置文件,将以下文件复制到 src 目录下:
struts.properties
struts.xml
commons-logging.properties
log4j.properties
simplelog.properties
修改 struts.properties 文件 struts.action.extension=action 为 struts.action.extension=do (为了让Struts 2 接收 *.do 形式的请求)
4、添加Struts 2 过滤器( web.xml 文件)
配置 web.xml 文件,添加以下代码:
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.FilterDispatcher
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
5、编写输入表单页面.jsp 文件
如以下代码:
<form action="test.do" method="post">
<input type="text" name="str1">
<input type="text" name="str2">
<input type="submit">
</form>
6、配置 struts.xml
如添加以下代码:
<package name="main" extends="struts-default">
<action name="test" class="com.demo.struts2.actions.TestAction">
<result name="success">success.jsp</result>
<result name="input">index.jsp</result>
</action>
</package>
7、编写处理器类 TestAction.java
package com.demo.struts2.actions; import com.opensymphony.xwork2.Action;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport; public class TestAction extends ActionSupport { private static final long serialVersionUID = 1L; private String str1;
private String str2; public String execute() throws Exception { if (!str1.equals("") && !str2.equals("")) {
ActionContext.getContext().getSession().put("str1", str1);
ActionContext.getContext().getSession().put("str2", str2);
return Action.SUCCESS;
} else {
//super.addActionError(super.getText("login.message.failed"));
return Action.INPUT;
} } public String getStr1() {
return str1;
} public void setStr1(String str1) {
this.str1 = str1;
} public String getStr2() {
return str2;
} public void setStr2(String str2) {
this.str2 = str2;
}
}
8、编写返回页面
如以下内容:
<table width="" border="">
<tr>
<td>str1=<%=(String) session.getAttribute("str1")%></td>
</tr>
<tr>
<td>str2=<%=(String) session.getAttribute("str2")%></td>
</tr>
<tr>
<td><a href="index.jsp">[Back]</a></td>
</tr>
</table>
最后完成简单的Struts 2 框架模型,可以在此基础上添加功能。
Struts2的安装的更多相关文章
- Struts2之Struts2的下载与安装
Struts2的下载 登陆struts的官网 下载Full Distribution这个选项的struts2的包. 这是Struts2的完整版,里面包括Struts2的实例应用,空实例应用,核心库,源 ...
- strust1与strust2,springmvc三者之间的区别?
strust1与struts2的区别 1.struts2是基于webWork的一个全新的框架,比struts1学习更方便 Struts2主要是改进了Struts1的servlet和acti ...
- 操作手册_MyEclipse
前言 假 如 你 的 人 生 有 理 想,那 么 就 一 定 要 去 追,不 管 你 现 在 的 理 想 在 别 人 看 来是 多 么 的 可 笑 , 你 也 不 用 在 乎 , 人 生 蹉 跎 几 ...
- 安装Struts2 类库
现在,如果一切正常,那么你可以继续设置您的Struts 2框架.以下是简单的步骤,下载并安装在机器上Struts2. 请选择是否要安装Hibernate在Windows或Unix,然后继续进行下一个步 ...
- Struts2安装与简单部署实例
打开http://struts.apache.org/网站,下载strut2 版本选择: Full Distribution: Struts2完整版 建议下载该项(此版包括以下4项): Example ...
- 13、零配置Struts2开发
Convention 插件 从 Struts 2.1 开始, Struts 可以使用 Convention 插件来支持零配置: Convention 插件完全抛弃配置信息, 不仅不需要使用 strut ...
- 深入浅出Struts2+Spring+Hibernate框架
一.深入浅出Struts2 什么是Struts2? struts2是一种基于MVC的轻量级的WEB应用框架.有了这个框架我们就可以在这个框架的基础上做起,这样就大大的提高了我们的开发效率和质量,为公司 ...
- Struts2框架简介和示例
struts2框架 Struts2是java web的框架,在Java Web开发中,表示层框架,其核心是通过扩展Servlet来帮助处理http请求. Struct2的基本流程 Struct2的框架 ...
- Struts2框架深入详解版
一.认识Struts2 1. 什么是Web框架? 1.1 模型1 1.2 模型2 和MVC 1.3 Web框架的诞生 2. Struts1 到Struts2 2.1 其他 Web框架 2.2 ...
随机推荐
- bootstrap面试题
1.你能描述一下渐进增强和优雅降级之间的不同吗? 优雅降级:Web站点在所有新式浏览器中都能正常工作,如果用户使用的是老式浏览器,则代码会检查以确认它们是否能正常工作.由于IE独特的盒模型布局问题,针 ...
- 对于League of Legends的分析
League of Legends是一款在国内甚至国际上都很受欢迎的一款网络竞技行的游戏.它是由美国Riot Games开发,腾讯游戏运营的英雄对战网游.<英雄联盟>除了即时战略.团队作战 ...
- spring中通过JNDI、DBCP、C3P0配置数据源
JNDI配置数据源 1.首先在tomcat的server.xml中配置数据源信息,找到Context,然后在里边加入如下代码 <Context docBase="SpringDemo& ...
- LeetCode 363:Max Sum of Rectangle No Larger Than K
题目链接 链接:https://leetcode.com/problems/max-sum-of-rectangle-no-larger-than-k/description/ 题解&代码 1 ...
- “数学口袋精灵”第二个Sprint计划(第六~八天)
“数学口袋精灵”第二个Sprint计划----第六天~第八天进度 任务分配: 冯美欣:欢迎界面的背景音乐完善 吴舒婷:游戏界面的动作条,选择答案后的音效 林欢雯:代码算法设计 第六天: 进度: 冯美欣 ...
- David Silver强化学习Lecture1:强化学习简介
课件:Lecture 1: Introduction to Reinforcement Learning 视频:David Silver深度强化学习第1课 - 简介 (中文字幕) 强化学习的特征 作为 ...
- Eclipse的Jar包解压出System.js里String与Boolean定义分号可有可无吗?
Eclipse的Jar包解压出System.js里String与Boolean定义分号可有可无吗? org.eclipse.wst.jsdt.core_1.3.300.v201410221502\li ...
- Vue 的语法
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- [转帖]关于网络编程中MTU、TCP、UDP优化配置的一些总结
关于网络编程中MTU.TCP.UDP优化配置的一些总结 https://www.cnblogs.com/maowang1991/archive/2013/04/15/3022955.html 感谢原作 ...
- [日常工作]vCenter下虚拟机设置与宿主机时间同步的方法
1. ESXi 能够实现CPU超售 同事开启多与CPU个数的虚拟机 不通的虚拟机采用了时间分片的处理, 所以有时候虚拟机内的时间可能会比宿主机的时间过的更慢, 越来越久之后虚拟机的时间就会比较离谱了. ...