- 浏览: 1277481 次
- 性别:
- 来自: 常州
文章分类
- 全部博客 (499)
- java (101)
- linux (82)
- mysql (30)
- javascript (45)
- Oracle (12)
- ext (14)
- 虚拟机 (1)
- 搜索引擎 (2)
- struts2 (11)
- 设计模式 (9)
- nginx (17)
- tomcat (12)
- 随想 (10)
- spring (18)
- svn (1)
- flash (3)
- UML (1)
- 数据结构 (7)
- 算法 (2)
- 网摘 (9)
- 数据库 (15)
- ibatis (3)
- jquery (31)
- lucene (1)
- hibernate (14)
- Myeclipse (4)
- 线程 (7)
- jbpm (4)
- 重构 (1)
- mantis (3)
- MediaWiki (4)
- ExtMail (1)
- MDaemon (1)
- egit (1)
- dwr (7)
- sitemesh (2)
- mybatis (1)
- ico (1)
- hadoop (5)
- jsoup (1)
- urlrewrite (2)
- jstl (1)
- spring3 (2)
- aop (2)
- 定时器 (1)
- Quartz (2)
- apache (1)
- php (1)
- security (1)
- iptables (2)
- QQ (1)
- mysqldump (1)
- vim (1)
- memcached (4)
- jad (1)
- 微博 (1)
- html5 (1)
- css3 (1)
- httpclient (10)
- google (1)
- shortUrl (1)
- json (2)
- virtualBox (1)
- mantisBT (2)
- htmlunit (1)
- selenium (2)
- mail (1)
- 正则表达式 (4)
- html (3)
- css (2)
- jatoolsPrinter (1)
- 图片处理 (1)
- hql (1)
- webservice (1)
- 分词 (3)
- 短信 (1)
- VPS (1)
- 事务 (1)
- 广告 (1)
- 画廊 (1)
- git (3)
- github (1)
- openshift (1)
- 缓存 (1)
- web (3)
- android (3)
- c3p0 (1)
- 邮箱 (1)
- memcache (2)
- windows (2)
- js (14)
- 编辑器 (1)
- 打印 (1)
- centos (5)
- boneCP (1)
- 连接池 (1)
- sql (1)
- nosql (1)
- MongoDB (1)
- 浏览器 (1)
- node (1)
- node.js (1)
- backbone.js (1)
- lazyload (1)
- Switch Off (1)
- Titanium (1)
- 网站架构 (1)
- WebDriver (1)
- APJP (1)
- 代理 (1)
- comet (1)
- kendoui (1)
- UI (2)
- 互联网 (1)
- localStorage (1)
- 记录 (1)
- 微信 (2)
- Sphinx (1)
- netty (1)
- js,mvvm,Avalon (1)
- 安卓 (1)
- Tengine (1)
- 大数据 (1)
- 手机 (1)
- paypal (1)
- SaaS (1)
- gitlab (1)
- nodejs (1)
- React (1)
- shadowsocks (0)
- vpn (0)
- 验证码 (1)
- SSL (2)
- SEO (1)
- IntelliJ (1)
- 敏捷开发 (1)
- 项目管理 (1)
- 爬虫 (1)
- 正则 (1)
- owncloud (1)
- 云存储 (1)
- ajax (1)
- pjax (1)
- jdk (1)
- zookeeper (1)
- phantomjs (1)
- ELK (1)
- springcloud (1)
- IDEA (1)
- hexo (1)
- ss (1)
- letencrypt (1)
最新评论
-
peakandyuri:
这个是有BUG的,数字小体现不出来,数字大了就不对了,但是Ja ...
java十进制转换N进制并反转换的工具类 -
ginolai:
然后是相关配置:/etc/sysconfig/iptables ...
Linux中iptables设置详细 -
bzhao:
我测试没啥区别啊!
Thread.sleep()和Thread.currentThread().sleep()区别 -
zhl549342097:
match == false
Spring Security 3.1 中功能强大的加密工具 PasswordEncoder -
hellotieye:
renzhengzhi 写道drager 写道用jsoup后解 ...
jsoup select 选择器
本篇应用了最基本的struts跳转程序来解释最基本的struts2的配置代码,具体看代码吧,没啥难点:
首先去下载struts2的包,刚才也说到官网地址下载很慢,官网的另外一个链接则很快,进入这个地址下吧,保证您能满速下载:http://archive.apache.org/dist/
1.下载完成后首先建立一个web工程名字叫TestStruts,lib中导入struts必须的包:freemarker-x.jar,ognl-x.jar,struts2-core-x.jar,xwork-x.jar,commons-logging-x.jar,commons-fileupload-x.jar
2.配置web.xml:
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <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>*.action</url-pattern> </filter-mapping> </web-app>
这里可以看到struts2的后缀是action而不再是do了。。嘛。。对于urlrewrite来说这些都无所谓了。。。
3.写action类,继承ActionSupport类,嘛。。。这个比struts1要好很多了,属性啥的都很独立,遭了,那我要用的request和response哪去了呢?好吧,去Context里找吧。。。还有session和上下文呢,OK,都封装一下到一个基类里,名字就叫BaseAction吧!
BaseAction.java:
package com.xuyi.action; import javax.servlet.ServletContext; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import org.apache.struts2.ServletActionContext; import com.opensymphony.xwork2.ActionSupport; public class BaseAction extends ActionSupport{ /** * 获得request * * @return */ public HttpServletRequest getRequest() { return ServletActionContext.getRequest(); } /** * 获得response * * @return */ public HttpServletResponse getResponse() { return ServletActionContext.getResponse(); } /** * 获得session * * @return */ public HttpSession getSession() { return getRequest().getSession(); } /** * 获得servlet上下文 * * @return */ public ServletContext getServletContext() { return ServletActionContext.getServletContext(); } public String getRealyPath(String path) { return getServletContext().getRealPath(path); } }
然后使用我们需要的action继承这个BaseAction类即可:
HelloStruts2.java:
package com.xuyi.action; public class HelloStruts2 extends BaseAction { public String hello() { return SUCCESS; } }
4.在src下建立一个struts.xml来对struts的action进行配置:
struts.xml:
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts> <!--package: name可以随便指定 namespace指定页面的目录(/为根目录) extends指定为 struts-default.xml文件(此文件包含默认的设置和定义) --> <package name="struts" namespace="/" extends="struts-default"> <!--action:name是访问action的名称 class是action的类 method是访问的action里的方法等同于struts1的method result是返回url--> <action name="helloStruts2" class="com.xuyi.action.HelloStruts2" method="hello"> <result name="success">/pages/hello_struts2.jsp</result> </action> </package> </struts>
5.在WebRoot下建立一个pages文件夹并在里面建立hello_struts2.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> <title>Hello</title> </head> <body> hello,strut2! </body> </html>
6.启动tomact后访问地址:http://localhost:8080/TestStruts/helloStruts2.action
发表评论
-
2017年Struts漏洞修复:版本从2.3.15.1升级到2.3.32
2017-03-24 15:10 2020如果你当前的项目使用了Struts2.3.5至 Strut ... -
struts2国际化信息
2011-12-06 15:44 11871.资源文件 中文文件messageResour ... -
struts2中action的重定向和转发的设置
2011-12-04 18:39 3058<?xml version="1.0&quo ... -
Myeclipse自动加入struts 2 Core Libraries导致antlr错误
2011-12-02 18:31 1048解决方法: 选择windows---preferences- ... -
struts2拦截器简单介绍
2011-10-18 22:10 1135一、理解Struts2拦截器 1. Struts2拦截器是在 ... -
struts1与struts2的区别
2011-10-18 21:52 979本文是转载,来源互联 ... -
struts2初学之form上传
2010-04-13 17:41 1497以前struts1使用的FormFile我不是很喜欢,这下好了 ... -
struts2初学之form提交登录验证
2010-04-13 14:35 2554本篇介绍了struts2的最基本的form提交,并且使用了其P ... -
引用一下:struts1和struts2之间的区别
2010-04-13 12:05 1288Struts2与Struts1的对比 ... -
开始学习struts2
2010-04-13 10:01 1206说来惭愧,做了几年java技术基本都用的struts1,感觉跟 ...
相关推荐
在Struts2中,HelloWorld程序是初学者入门的典型示例,通过这个例子,我们可以了解Struts2的基础架构和核心概念。 1. **MVC模式** MVC模式是软件设计中的一个重要模式,它将业务逻辑、数据和用户界面分离,使得...
Struts2是一个强大的Java web应用程序开发框架,它简化了MVC(模型-视图-控制器)架构的实现,尤其在处理HTTP请求和响应时。...对于初学者来说,这是一个很好的起点,能够帮助他们理解和掌握Struts2的基本工作原理。
这个"struts2_HelloWorld代码"是初学者了解和学习Struts2的一个基础实践,它展示了如何使用Struts2框架创建一个简单的“Hello, World!”应用程序。 在Struts2中,`Action`类是核心组件,它负责处理用户请求。在这个...
这个"Struts2 Helloworld 源代码"压缩包很可能是为了帮助初学者理解Struts2框架的基础工作原理和配置。 在Struts2的Helloworld示例中,我们通常会看到以下几个关键知识点: 1. **环境配置**:首先,你需要一个Java...
学习"Struts2 HelloWorld"不仅能够帮助初学者理解框架的基本用法,还能让他们对MVC模式有一个直观的认识。在实际开发中,Struts2提供了大量的插件和拦截器,可以实现复杂的业务逻辑和验证,使其成为企业级应用的理想...
Struts2是一个强大的MVC(Model-View-Controller)框架,广泛应用于Java Web开发中。在本示例中,"struts2完整的Hello Word例子"是帮助开发者理解并熟悉...对于初学者,理解并实践这些步骤是掌握Struts2的第一步。
这个"struts2的helloworld例子"是为初学者准备的一个基础教程,旨在帮助理解Struts2框架的基本工作原理和配置过程。下面将详细阐述这个例子中的关键知识点。 首先,Struts2框架的核心是Action类,它是处理用户请求...
对于初学者来说,理解并动手实践Struts2的第一个实例是非常重要的,这将帮助他们快速掌握该框架的基本用法。下面,我们将详细讲解如何创建并运行一个简单的Struts2应用实例。 首先,你需要确保已经安装了Java SDK和...
"Struts2入门使用案例HelloWorld"是一个典型的教程,旨在帮助初学者快速理解并开始使用Struts2框架。下面我们将深入探讨这个案例涉及的关键知识点。 首先,我们需要创建一个Maven工程。Maven是Java项目管理和构建...
这个“Struts2 视频之Struts2 HelloWorld”项目旨在引导初学者入门Struts2框架,通过实际操作理解其基本概念和工作原理。 在“Struts2-helloworld”压缩包中,我们通常会找到以下组件: 1. **源码**:源代码文件夹...
这个"jamesby-struts2-helloworld.rar"压缩包提供了一个基础的Struts2入门示例,名为“helloworld”,对于初学者了解和学习Struts2的工作原理非常有帮助。 首先,我们来看看"index.jsp"。这通常是一个应用的入口点...
在Struts2中,HelloWorld程序是初学者入门的经典示例,它帮助我们快速掌握框架的基本用法。首先,我们需要了解Struts2的结构和主要组件。核心组件包括Action、ActionMapping、Result和Interceptor等。 1. **Action*...
这个“Struts2 的入门简单的hello”项目是一个非常适合初学者了解和学习Struts2的基础知识的实例。 首先,让我们从创建一个基本的Struts2应用开始。在Java世界里,MVC模式是web开发的核心,它将业务逻辑、数据和...
对于初学者来说,"struts2学习制作helloworld"是一个很好的起点,它可以帮助理解Struts2的基础概念和核心功能。以下是这个主题中涵盖的一些关键知识点: 1. **Struts2项目的搭建步骤**: - 创建一个新的Java项目,...
这个“Struts2 HelloWorld示例”是一个基础的Maven项目,旨在帮助初学者理解如何在实际开发环境中设置和运行一个简单的Struts2应用。 首先,让我们了解Maven。Maven是一个项目管理工具,它通过使用一个项目对象模型...
这个"Struts2_HelloWorld"例子是初学者踏入Struts2世界的绝佳起点,它通过一个简单的实例展示了如何在Struts2框架下创建并运行一个基本的Web应用。 首先,我们来看"HelloWorld"的实现过程。在Struts2中,我们通常会...
在本章中,我们将深入理解如何通过一个简单的HelloWorld实例来启动和运行Struts2应用,同时了解其核心组件和配置过程。 首先,HelloWorld实例是初学者学习新框架时常见的入门教程。在本例中,它的目标是帮助读者对...
- **Hello Struts2**:通过创建一个简单的“Hello World”示例,帮助开发者快速上手Struts2的基本配置和运行流程。 - **Action类详解**:Action类是Struts2的核心组件之一,负责处理用户的请求并返回相应的结果。...