Struts2初始(一)
1、过滤器:org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
位置:在struts2的核心包struts2-core.jar包中
----------------------------------------
2、如何编写struts2的配置文件?
struts.xml关联了控制器(Action)与视图(view)之间的联系,
通过配置struts.xml进行视图与Action之间的一一对应关系。
1)、导入struts的doctype--
目的是为了导入struts的核心文件,
告诉编译器怎么去读文件
2)、<struts></struts>--
相当于与html的<html></html>,
标志着struts的开始
3)<package></package>
声明使用的struts框架的资源
extends属性,声明请求/继承的struts中的包的资源是哪个
struts-default值是指包资源来自于struts的默认包
name:包名称
namespace:包的命名空间是哪个
4)<action></action>
其作用是使我们的Action与显示页面进行一一的对应。
name属性:用户定义的action标签的名称,访问该资源
的url也是使用action的名称作为访问路径
class:关联其所对应的Action类,填写该Action的路径
<result></result>
通过result标签关联jsp视图
name:当执行完Action execute方法后的结果,
对应的结果就显示对应的jsp页面,
通过配置多个result标签是可以实现Action和
视图形成一对多的关系
----------------------------------------
使用struts的必要配置及作用:
1)、Create a class to store the welcome message (the model)
创建一个类存储欢迎信息--这个类属于业务层
2)、Create a server page to present the message (the view)
创建一个页面去显示这个信息--这个页面属于视图层
3)、Create an Action class to control the interaction between the user, the model, and the view (the controller)
创建一个实现Action接口的类去控制用户、业务、视图之间的交互---这个类属于控制层/器
4)、Create a mapping (struts.xml) to couple the Action class and view
创建一个映射文件(struts.xml)去关联Action与视图之间进行沟通
通过这四个组件实现业务、视图、控制器之间的分离,降低
这些层之间的耦合度。
-----------------------------------------
Action的其他实现方法
Action实现由3种方式
1、使用普通的java类,编写 execute 方法
2、实现Action接口,实现execute方法。
3、继承actionsupport类实现
--------------------------------------
static String ERROR
The action execution was a failure.
控制器执行失败,返回error
static String INPUT
The action execution require more input in order to succeed.
控制器执行需要用户进行输入之后才会成功
static String LOGIN
The action could not execute, since the user most was not logged in.
控制器没有执行时,则不能登录成功
static String NONE
The action execution was successful but do not show a view.
控制器执行成功,但不显示页面
static String SUCCESS
The action execution was successful.
控制器执行成功,并显示页面。
String execute()
Where the logic of the action is executed.
重写此方法,当控制器执行时,会执行当前方法的业务逻辑。
并会返回一个结果,告诉配置文件当前执行状态是哪个
Struts2初始(一)的更多相关文章
- struts2框架 初始别
struts2 是webwork和struts合并而来. 1.下载struts2 说明: Full Distribution: 为完整版下载,建议下载它 Example Applications:st ...
- shiro + struts2 在action 中使用 shiro 注解 @requiresPermissions 报错: 方法找不到,类初始失败
06:36:34,405 ERROR http-8084-2 dispatcher.Dispatcher:38 - Exception occurred during processing reque ...
- 分享知识-快乐自己:初始 Struts2 (基本概念)及 搭建第一个Demo
1):struts2 的基本概念: 1-1):Struts2 是什么? 1.Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2 ...
- SSH面试题(struts2+Spring+hibernate)
struts2 + Spring +hibernate Hibernate工作原理及为什么要用? 原理: 1.读取并解析配置文件 2.读取并解析映射信息,创建SessionFactory ...
- Struts与Struts2的区别
Struts与Struts2的区别 首先看一张Struts2的发展路线图: 从Struts2的发展过程来看,Struts2继承了Struts与Webwork的特性,形成了新的框架.但是它的 ...
- 搭建一个简单struts2框架的登陆
第一步:下载struts2对应的jar包,可以到struts官网下载:http://struts.apache.org/download.cgi#struts252 出于学习的目的,可以把整个完整的压 ...
- Struts2拦截器的使用 (详解)
Struts2拦截器的使用 (详解) 如何使用struts2拦截器,或者自定义拦截器.特别注意,在使用拦截器的时候,在Action里面必须最后一定要引用struts2自带的拦截器缺省堆栈default ...
- Struts2相关面试题
Struts2面试题 1.struts2工作流程 Struts 2框架本身大致可以分为3个部分: 核心控制器FilterDispatcher.业务控制器Action和用户实现的企业业务逻辑组件. 核心 ...
- 浅谈 Struts2 面试题收藏
Struts2面试题 一.工作原理 一个请求在Struts2框架中的处理大概分为以下几个步骤 1 客户端初始化一个指向Servlet容器(例如Tomcat)的请求 2 这个请求经过一系列的过滤器(Fi ...
随机推荐
- Centos6.x 下安装Jexus独立版
操作步骤: #cd /tmp #wget linuxdot.net/down/jexus-5.8.1-x64.tar.gz 注:如果有新版本,则修改为相应版本号即可. #tar -zxvf jexus ...
- 基于Netty打造RPC服务器设计经验谈
自从在园子里,发表了两篇如何基于Netty构建RPC服务器的文章:谈谈如何使用Netty开发实现高性能的RPC服务器.Netty实现高性能RPC服务器优化篇之消息序列化 之后,收到了很多同行.园友们热 ...
- Go语言实战 - revel框架教程之缓存和Job
所有的网站应该都会有一个非常简单的需求,首页一秒之内打开. 满足的方式主要有两种: 页面静态化,效果最好,对服务器基本没负担,只要带宽足够就好了.我知道一个PV过亿的站点就是全站静态(以前新浪也是), ...
- [Solr] (源) Solr与MongoDB集成,实时增量索引
一. 概述 大量的数据存储在MongoDB上,需要快速搜索出目标内容,于是搭建Solr服务. 另外一点,用Solr索引数据后,可以把数据用在不同的项目当中,直接向Solr服务发送请求,返回xml.js ...
- 实现ABP中Person类的权限功能
菜单项的显示功能已经完全OK了.那么我们就开始制作视图功能吧. 首先测试接口是否正常 我们通过代码生成器将权限和application中大部分功能已经实现了.那么我们来测试下这些接口ok不. 浏览/a ...
- iOS-推送,证书申请,本地推送
介绍一点点背景资料 众所周知,使用推送通知是一个很棒的.给应用添加实时消息通知的方式.这样做的结局是,开发者和用户之间,彼此永远保持着一种令人愉悦的亲密关系. 然而不幸的是,iOS的推送通知并非那么容 ...
- [OAuth]基于DotNetOpenAuth实现Client Credentials Grant
Client Credentials Grant是指直接由Client向Authorization Server请求access token,无需用户(Resource Owner)的授权.比如我们提 ...
- OpenCASCADE Ring Type Spring Modeling
OpenCASCADE Ring Type Spring Modeling eryar@163.com Abstract. The general method to directly create ...
- KindEditor 给KindEditor赋值
在项目的过程中,使用了KindEditor编辑器,然后在赋值的时候,我的编辑器ID是content,然后我想通过$("#content").html()来赋值,发现赋值失败,后来百 ...
- 设计模式(十):从电影院中认识"迭代器模式"(Iterator Pattern)
上篇博客我们从醋溜土豆丝与清炒苦瓜中认识了“模板方法模式”,那么在今天这篇博客中我们要从电影院中来认识"迭代器模式"(Iterator Pattern).“迭代器模式”顾名思义就是 ...