`
PerfectPlan
  • 浏览: 122195 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论
阅读更多

 

Struts2入门

 

Struts2是基于Struts 和webwork形成的,比Struts1提供了更多更强大的功能。(可以说Struts2是webwork的衍生)

一、使用Struts2所必须的jar包

:commons-filoupload-1.2.1.jar

commons-io-1.3.2.jar

commons-logging-1.0.4.jar

ognl-3.0.jar //对象表达语言

strus2-core-2.2.1.1.jar//struts2核心库

xwork-core-2.2.1.1.jar

freamarker-2.3.16.jar //从struts2.0开始需要此jar包

javassist-3.7.ga.jar

 

二、创建Struts2的配置文件

:在 src下面创建struts.xml //导入struts2.0.dtd 它在struts2-core-2.2.1.1.jar的目录下

/*为什么要在src下面创建struts.xml

因为Struts2框架真正的配置文件在项目中的classes文件中

创建在src下面是为了让IDE能够自动拷贝到Struts真正执行的配置文件中

*/

 

//如何配置struts.xml
		<?xml version="1.0" encoding="UTF-8"?>
		   
<!DOCTYPE struts PUBLIC 
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
			"http://struts.apache.org/dtds/struts-2.0.dtd">
			
<struts>
<package name="struts2" extends="struts-default">
        //继承了struts-default.xml
	//配置一个Action对象
	/*package 中name的值无任何实际意义 可以用于其它packeage的继承*/
	<action name="login" class="org.viancent.action.LoginAction">
		<result name="success">/result.jsp</result>
/*
		result标签中还有一个属性Type用于指定跳转的类型它默认的是使用dispathcer 请求转发redirect则是重定向等等在struts-default.xml都有定义
*/
	</action>
</package>	
</struts>

//在struts2 在web.xml的配置如下:struts2需要配置在web.xml文件文件中配置一个过滤器

<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> //注意啦,这里不能用"/*.action" (能够使用“*.action” 但是只有在项目中没有Jsp使用struts2标签的时候才能使用,否则会抛出异常)
</filter-mapping>

 

//在LoginAction类中的信息
		public class LoginAction {
		private String username;  
		/*
		当表单将数据发送进来后,表单中的属性名会与LoginAction中的
		(set+表单元素的名称的方法 如:setUsername()方法对应
		<input type="text" name="userName" id="userName">元素)进行比对,
		*/		
		private String password;
		//如果相同则将数据信息赋值给该属性,并且将数据信息保存在request作用域中

		public String getUsername() {
			return username;
		}

		public void setUsername(String username) {
			this.username = username;
		}

		public String getPassword() {
			return password;
		}

		public void setPassword(String password) {
			this.password = password;
		}

		public  String execute() {
			return "success";
		}
		}

//在index.jsp中的信息为:

 

<body>
	<form action="login.action"> 
       //这里填写struts.xml 文件中配置的与之处理相关的Action 标签的name属性的值+.action
		username:<input type="text" name="username" id="username" />
		<br />
                password:<input type="password" name="password" id="password"/>
		<br />
		<input type="submit" value="submit" />
	 </form>
</body>

//配置一个result.jsp 显示结果页面

//启动服务器

		//在tomcat apache-tomcat-6.0.14服务器中config文件夹中的service.xml
		/*文件中的<host>标签中添加项目启动信息
		<Context path="/struts2" docBase="C:\Users\Administrator\Workspaces\MyEclipse 8.5\Struts2\WebRoot"
		reloadable="true"/>
		reloadable :设置当工程有改动的时候是否自动加载
		path: 浏览器访问时需要的路径
		docBase:启动的项目路径 对应WebRoot路径
		*/

//在浏览器中

//使用 http://localhost:8080/struts2/ 访问index.jsp界面

//struts2 项目中可能出现的异常

a):java.lang.reflect.InvocationTargetException
Caused by: java.lang.IllegalArgumentException: Javassist library is missing in classpath! Please add missed dependency!
解析:这个问题说明项目中缺少javassist-3.7.ga.jar 此异常常出现在struts2.2.1.1版本中老版中将此jar包封装在struts2库中所以不会出现此类异常

b):There is no Action mapped for namespace / and action name login
解析:这个问题出在服务器没有找到对应的acion对象 可能出现的原因有一下几点:
1.struts.xml 写错了,大小写都会去区分
2.url访问的ation 的名称错误
3.struts.xml的位置错误

以前写的东西,贡献出来尽一点绵力吧。后续会有更多文章,希望与大家互相学习。如果有错误请不吝赐教。
分享到:
评论

相关推荐

    struts2-tags-文档.rar

    对于初学者,"struts2.chm"提供了入门指导;对于有一定经验的开发者,"struts2-tags-API.chm"和"struts2 2.chm"将帮助他们更好地利用Struts2的高级特性,提升开发效率。总的来说,这个压缩包是学习和开发Struts2应用...

    struts2-blank

    "struts2-blank"项目是一个基础的Struts2示例代码,可以帮助初学者快速理解和入门Struts2框架。 在Struts2框架中,核心组件包括Action、Interceptor、Result、ValueStack等。Action是业务逻辑的执行者,Interceptor...

    struts2-例子

    在这个"struts2-例子"压缩包中,我们主要关注的是一个名为"struts2-blank"的项目,这是一个基础的、空白的Struts2应用模板,用于新手快速入门和理解框架的基本工作原理。 首先,Struts2的核心在于Action类,它是...

    struts2--1.入门程序

    Struts2是一个强大的MVC(Model-View-Controller)框架,它是Apache软件基金会下的一个开源项目...通过学习,开发者可以掌握如何创建Action、配置Struts2、使用拦截器、处理表单验证以及结合其他技术进行Web应用开发。

    struts2-docs

    11. ** strut2-docs 中的详细内容**:压缩包中的文档可能包括框架概述、快速入门指南、配置参考、API文档、插件介绍、示例代码和最佳实践等多个部分,为开发者提供全方位的学习材料。 通过阅读这些文档,开发者能够...

    struts2-----之一

    在本学习资料中,初学者将能深入理解Struts2的核心概念和工作原理,从而轻松入门。 Struts2框架的核心功能包括: 1. **请求分发**:Struts2通过Action类来处理HTTP请求。每个Action类对应一个业务逻辑,接收请求后...

    Struts2学习案例--------入门篇

    输出Hello World 使用到struts2标签和jstl表达式 2、 URL:http://localhost:8080/struts100515 输入用户名XXX ------&gt; 提交 ,显示 你好 XXX 使用ONGL表达式 3、 URL:...

    struts2简单入门教程

    在入门Struts2之前,需要准备以下开发环境和工具: - 开发工具:MyEclipse6(尽管它不直接支持Struts2,但可以使用其进行基础开发) - Web服务器:Tomcat6(用于部署和测试Web应用程序) - Struts版本:Struts*.*.**...

    starting-struts2-chinese.rar

    这个"starting-struts2-chinese.rar"压缩包文件包含了一份中文版的"starting-struts2-chinese.pdf"文档,很显然是为帮助初学者理解和入门Struts2框架而准备的。 Struts2的核心是模型-视图-控制器(MVC)设计模式,...

    jcaptcha4struts2-demo-2.0.1.zip_DEMO_JCaptcha4Struts2.jar_jcaptc

    这个DEMO旨在帮助开发者快速理解和应用Jcaptcha4Struts2,为初学者提供了一个基础入门级的学习资源。 Jcaptcha4Struts2是基于Jcaptcha(Just Another CAPTCHA)的Struts2插件,它将Jcaptcha的功能无缝集成到Struts2...

    struts2-easyui.

    在"struts2-easyui"的例子中,我们看到的是一个基础的快速入门教程,它演示了如何将这两个技术整合在一起,实现数据的增删改查功能。下面将详细解释这个组合的应用场景、工作原理以及相关的知识点。 1. **Struts2...

    Struts2 的入门简单的hello

    这个“Struts2 的入门简单的hello”项目是一个非常适合初学者了解和学习Struts2的基础知识的实例。 首先,让我们从创建一个基本的Struts2应用开始。在Java世界里,MVC模式是web开发的核心,它将业务逻辑、数据和...

    struts2(1-7)源码 struts2学习入门 源码学习

    struts 初步认识Struts2并部署验证 struts2 将要进行自定义类型转换的点数据从1个增加到3个 struts3 进行全局的类型转换 struts4 使用Struts2中内部类中的方法进行自定义类型转换,用到的类StrutsTypeConverter ...

    struts2-docs部分

    Struts2是一个强大的Java web...学习和掌握Struts2框架,需要深入理解这些概念,并通过实际项目进行实践。文档中的每个章节都会帮助开发者逐步理解Struts2的各个方面,从而更好地利用这个框架构建高效、稳定的Web应用。

    struts2.5.16-jar包

    在"Struts2 入门\struts2基本jar包"目录下,你可以找到一组基础的jar包,这些是学习和搭建Struts2入门级应用所需的基本组件。它们包括了处理HTTP请求、映射请求到Action、视图渲染等功能的关键类。通过这些基本jar包...

    struts2开发入门以及webWork开发入门文档

    - `Struts2学习入门.pdf`可能是一个全面的PDF教程,涵盖Struts2的各个方面,适合初学者系统学习。 - `webwork2开发指南.pdf`则是针对WebWork框架的指导手册,帮助理解WebWork的设计原理和用法。 通过以上文档,你...

    struts-2.3.16.1-docs.zip

    1. **快速入门**:这通常是一份简明教程,帮助开发者快速了解Struts2的基本概念和配置,如Action、Result、Interceptor等,并指导如何搭建第一个运行的Struts2应用。 2. **使用文档**:这部分详细介绍了如何在实际...

    struts-2.3.14-pro

    这些示例可以帮助开发者快速入门,了解如何在实际项目中应用Struts 2框架。 6. **学习与开发**: 对于开发者来说,熟悉Struts 2.3.14-Pro意味着要掌握Action类、配置文件(struts.xml)、拦截器、结果类型、动态...

    struts2入门学习源码

    这个入门学习源码包包含了关于Struts2的基础知识、学习笔记以及源码实例,旨在帮助初学者快速理解和掌握Struts2的核心概念和技术。 首先,让我们深入了解Struts2的基本原理。Struts2是Apache软件基金会的一个开源...

Global site tag (gtag.js) - Google Analytics