使用tomcat插件
放到myeclipse目录下的
中重启myeclipse就有了3个猫!!!
配置myeclipse中的tomcat
右键项目,发布到tomcat下。提示成功,OK!!!
搭建struts2框架环境
1.创建javaweb工程
2.开发struts2需要的jar文件
a.到http://struts.apache.org/download.cgi#struts2014下载struts-2.x.x-all.zip
b.下载后解压文件,把jar包放到WebRoot/WEB-INF/lib下,如下图:
struts2-core-2.3.1.1.jar:Struts 2框架的核心类库
xwork-core-2.3.1.1.jar:Command模式框架,WebWork和Struts2都基于xwork
ognl-3.0.3.jar:对象图导航语言(Object Graph Navigation Language), struts2框架通过其读写对象的属性
freemarker-2.3.18.jar:Struts 2的UI标签的模板使用FreeMarker编写
commons-logging-1.1.x.jar:ASF出品的日志包,Struts 2框架使用这个日志包来支持Log4J和JDK 1.4+的日志记录。
commons-fileupload-1.2.2.jar: 文件上传组件,2.1.6版本后需要加入此文件
commons-io-2.0.1.jar:传文件依赖的jar包
commons-lang-2.5.jar:对java.lang包的增强
asm-3.3.jar:提供了字节码的读写的功能,包含了核心的功能,而其他的jar包都是基于这个核心的扩展.
asm-commons-3.3.jar:提供了基于事件的表现形式。
asm-tree-3.3.jar:提供了基于对象的表现形式。
javassist-3.11.0.GA.jar:代码生成工具, struts2用它在运行时扩展 Java类
配置web.xml文件添加过滤器
struts2
org.apache.struts2.dispatcher.FilterDispatcher
struts2
/*
3.创建action文件
a、配置struts.xml文件
pacakage元素,表示包,action里面的所有配置都放置在包下,规范化管理
name:包的名字,配置包时必须指定name属性,该name属性值可以任意取名,但必须唯一,它和java的类包没有关系,如果其他包要继承该包,必须通过该属性进行引用。
namespace 命名空间,相当于房间号,唯一的,包的namespace属性用于定义该包的命名空间,命名空间作为访问该包下Action的路径的一部分。namespace属性可以不配置,如果不指定该属性,默认的命名空间为“”(空字符串)。namespace属性的属性值必须以”/”开头
extends struts-default.xml是struts2框架底层提供的。每个包都应该继承struts-default包,因为struts2很多核心的功能都是拦截器来实现的。
1>如果没有为action指定class,默认是ActionSupport。
2>如果没有为action指定method,默认执行action中的execute() 方 法。
3>如果没有指定result的name属性,默认值为success。
action标签:请求链接
name:action的名称,是唯一的
class:对应要执行的action类的完整路径
result标签 给个name要对应方法的返回值!!!
后面的文本部分,要转向的jsp页面
访问的路径:包名+namespace+action
快捷键操作alt +shift +s 可以调用set/get 快捷操作 按对应的下划线字母直接选取操作
配置struts.xml文件提醒
Windowpreferences搜索catalogXML catalogAdd
struts的dtd文件要从struts的lib目录中的struts-core文件中解压出来
返回不同的jsp页面
实现Action的方法
实现一个Action的3种方法
普通java类(Plain Ordinary Java Object )
实现com.opensymphony.xwork2.Action接口
继承ActionSupport(最常用)
result的默认值
如果没有指定result的name属性,默认值为success。
name:如果没指定此属性或此属性值为”“空串,缺省为success
type:如果没指定此属性或此属性值为”“空串,缺省值为dispatcher(转发)
配置一个action,可以访问多个方法
1.动态方法调用、可以通过在配置文件中添加method来指定调用哪个方法,当Action中存在多个方法时,我们可以使用!+方法名调用指定方法
①方法的动态调用方式:
action名称+!+方法名称+后缀
!!动态调用参数配置,默认为true,可以调用,否则不能调用
!!Action中的所有方法必须和execute方法一致(参数,返回值,异常最好也一样)
3.使用通配符
③使用通配符
具体配置
/{1}Success.jsp
在Struts2的标签class、name、method和result标签上都可以使用通配符
通配符的作用就是为了减少配置量,通配符需要建立在约定的基础上