struts2标签

学习Struts--Chap02:Struts2框架各个功能模块和程序执行流程的介绍

不问归期 提交于 2020-02-02 21:24:27
1、Struts2的系统架构: 2、架构中不同Key的作用介绍: servlet Filters: 过滤器链,client的全部请求都要经过Filter链的处理。 Struts Core:Struts2的核心部分,Struts2中已经做好的功能,在实际开发中不需要动它们 Interceptors:Struts2的拦截器。Struts2提供了很多默认的拦截器,可以完成日常开发的绝大部分工作;当然,也可以自定义拦截器,用来实现具体业务需要的功能。 User Created:由开发人员创建的,包括struts.xml、Action、Template,是每个使用Struts2来进行开发的人员都必须会的。 3、各个模块功能的介绍: FilterDispatcher是整个Struts2的调度中心,根据ActionMapper的结果来决定是否要Struts2做出处理,如果ActionMapper指出该URL应该被Struts2处理,那么它将会执行Action处理,并停止过滤器链上还没有执行的过滤器。同时还负责创建ActionProxy对象实例。( 注意:如论什么Struts2应用都要有这个配置,并且要放在过滤链的最后边。 ) ActionMapper简单点说,ActionMapper负责识别当前请求是否应该被Struts2处理,如果需要Struts2处理, ActionMapper 会通知

struts2中s:select标签的使用

馋奶兔 提交于 2020-01-28 02:25:27
1.第一个例子: <s:select list="{'aa','bb','cc'}" theme="simple" headerKey="00" headerValue="00"></s:select> 2.第二个例子: <s:select list="#{1:'aa',2:'bb',3:'cc'}" label="abc" listKey="key" listValue="value" headerKey="0" headerValue="aabb"> 3.第三个例子: <% HashMap map = new LinkedHashMap(); map.put(1,"aaa");map.put(2,"bbb"); map.put(3,"ccc"); request.setAttribute("map",map); request.setAttribute("aa","2"); %> <s:select list="#request.map" label="abc" listKey="key" listValue="value" value="#request.aa" headerKey="0" headerValue="aabb"></s:select> 摘抄自 http://www.cnblogs.com/modou/articles/1326683.html --------

struts2环境配置

天大地大妈咪最大 提交于 2020-01-28 02:21:28
struts2框架,大多数框架都在使用。由于工作需要,开始做Java项目。先学个struts2。   一、下载struts2   有好多版本,我下载的是struts-2.2.1.1。   二、创建web项目,导入使用struts2所必须的jar包。   我使用的是MyEclipse 7.5。建立web项目,给项目添加外部引用包(project-properties-Java Build Path-Add External Jars...)。添加的包有:commons-fileupload-1.2.1.jar,commons-io-1.3.2.jar,commons-logging-api-1.1.jar,freemarker-2.3.16.jar,javassist-3.7.ga.jar,ognl-3.0.jar,struts2-core-2.2.1.1.jar,xwork-core-2.2.1.1.jar。注意:由于struts2版本的差异性,上面提到的包不一定满足所有版本的需求。配置完struts2后,请部署运行一下。根据运行时的错误提示来添加jar包解决问题。比如,配置struts-2.2.1.1时需要commons-io-1.3.2.jar包和javassist-3.7.ga.jar包,但是2.1版本就不需要这两个包。   三、编写struts.xml文件  

Struts2学习笔记(1)

依然范特西╮ 提交于 2020-01-25 06:57:46
今天看了一个视频,终于搞定了第一个Struts2的实例,下面总结一下今天的成果。(以后每天都会更新Struts2的学习,呵呵) 1.搭建开发和运行环境 (1)到Apache下载Struts 2.0.11包 在文件夹下有很多jar包,但是最基本的就只有五个:commons-logging.jar,freemarker.jar,ognl.jar,struts2-core.jar,xwork.jar。 (2)新建一个名为FirstStruts的工程,把上面说的四个jar包加到lib下。 (3)打开web.xml文件,将其修改为以下代码: Code <? xml version="1.0" encoding="ISO-8859-1" ?> <! DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" > < web-app > < display-name > Struts 2.0 Hello World </ display-name > < filter > < filter-name > struts2 </ filter-name > < filter-class > org.apache

java三大框架的各自作用

泄露秘密 提交于 2020-01-23 20:28:39
java三大框架的各自作用: hibernate是底层基于jdbc的orm(对象关系映射)持久化框架,即:表与类的映射,字段与属性的映射,记录与对象的映射 数据库模型 也就是Model; struts提供的丰富标签是用于显示层View;同时struts也充当了实现Control的功能(不管是Struts1,还是Struts2),接收参数,视图分发。 Spring是用于降低层与层间耦合度的,就是所有的类都可以由spring统一创建,用时只需注入即可(IOC) 从功能上来说,hibernate为M,struts2 为V,也可以为C,spring可以为C。 但大多数项目中,hibernate为M,struts2 为V+C,spring用来帮助管理类以及实现一些业务无关功能,如日志记录等,大多数都是用struts来做C的。 来源: CSDN 作者: 孙士海 链接: https://blog.csdn.net/weixin_43821182/article/details/104076934

struts2

点点圈 提交于 2020-01-15 20:02:20
Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller),像servlet中的Filter管理用户请求,建立模型与视图的数据交互。 实际上struts在web的配置文件中就是以过滤器filter的形式配置的。 ONGL表达式:就是对象图形化导航语言,在前端页面中,访问action的属性 interceptor拦截器 工作流程: (1)客户端浏览器发送HTTP请求到Web应用 (2)Web容器将请求传递到标准ActionContextCleanUp过滤器以消除属性,而不让后续过滤器清楚,以延长Action中属性(包括自定义属性)的生命周期。 (3)再经过如stimesh等其他过滤器后,请求传递给StrutsPrepareAndExecuteFilter核心控制器 (4)StrutsPrepareAndExecuteFilter调用ActionMapper(Action映射器)确定调用哪个Action,再将控制权转移给ActionProxy代理 (5)ActionProxy代理调用配置管理器ConfigurationManager从配置文件struts.xml中读取配置信息,然后创建ActionInvocation对象 (6

springmvc和struts2的区别

泄露秘密 提交于 2020-01-15 09:03:41
谈谈springmvc和struts2的区别 相同点 :二者都是基于mvc的web层的框架,都是负责接收用户浏览器提交的请求参数,通过某些校验操作调用业务层,而后获取到业务层返回的数据,将数据通过某种方式在前台展示。 不同点 :   (1)springmvc是基于方法开发的,struts2是基于类开发的。   (2)因为二者基于的出发点不同,所以在接收请求参数时区别比较大。     springmvc是通过参数绑定接收浏览器请求参数(方法上各种形参(request、response、session、Model、ModelMap、简单类型、简单pojo、包装类pojo)浏览器的请求参数),方法执行结束,形参数据就会销毁。    struts2是通过类中的成员变量接收浏览器请求参数的。   (3)由于接收请求参数方式的不同     springmvc:因为方法之间是线程隔离的,所以springmvc支持单例和多例的开发方式。    struts2:成员变量在开发中多线程会存在线程安全问题,所以struts2只能支持多例的开发方式。  (4)springmvc是通过存储数据ModelAndView,在前台页面通过jstl(默认)展示数据的    struts2是通过值栈存储数据,在页面通过OGNL展示数据的 还有一点扩展的,想起来就大概说说  

Android开发最佳学习路线图

可紊 提交于 2020-01-09 14:47:18
为了帮助大家更好的学习Android开发的相关知识,尚观4G智能操作系统研究室(www.up4g.com)为大家制作以下学习路线图;希望能帮助到广大的android爱好者。 在开始之前我们先来对相关知识进行一个简单的了解: 行业背景: 今天,涉及通信产业链中的每个环节,都有Android的身影,Android是第一款完全完整打通了整个通信产业链中的操作系统,手机方案商、集成商、运营商、内容提供商、用户,都在玩Android,都惊讶于Android的爆发式增长速度,Android现在每天有超过50万台新的Android设备启用。 随着Android平台的扩张,引发了Android人才荒,未来人才需求缺口将达百万。但符合条件的Android工程师屈指可数,企业招聘难度可想而知。据新京报等媒体报道Android工程师一年经验月薪8000元,对此李开复曾在微博谏言学生转学Android软件开发。我们相信,在未来几年内,Android开发工程师将成为3G行业炙手可热的岗位之一。 什么是Android: Android是一种以Linux为基础的开放源码操作系统,主要使用于便携设备。目前尚未有统一中文名称,中国大陆地区较多人使用安卓(非官方)或安致(官方)。Android操作系统最初由Andy Rubin开发,最初主要支持手机。2005年由Google收购注资

【SSI开发总结.6】Struts+Spring+Ibatis环境配置(一)

自作多情 提交于 2020-01-01 01:01:35
为了使struts2和spring集成,必须下载一个struts2的spring插件,实际上,struts2以上版本已经提供了这些插件,只要下载一个struts2.0以上版本就可以了。 总结一些,配置struts2+spring+ibatis项目开发环境需要的几个jar: struts2-core-2.0.11.jar(struts2框架) commons-lang.jar (struts2基础设施1,提供java常用操作API,比如字符串处理,XML解析等) commons-logging.jar(struts2基础设施2,提供java日志操作API,抽象出日志接口,方便操作) freemarker-2.3.8.jar(struts2基础设施3,freemarker模板视图支持,struts2标签主题支持) xwork-2.0.4.jar(struts2基础设施4, 命令模式框架支持 ) ognl-2.6.11.jar(struts2基础设施5,OGNL表达式支持) struts2-spring-plugin-2.0.11.jar (struts2基础设施6,struts集成spring插件) struts2-sitemesh-plugin-2.0.11.jar(struts2基础设施7,struts集成sitemesh插件) spring.jar(spring框架)

Struts2 Day02

試著忘記壹切 提交于 2019-12-28 05:45:06
本节内容: 1.结果页面配置 2.在Action获取表单提交数据 3.Struts2提供获取表单数据的方式 4.Struts2获取数据封装到集合 5.扩展-表达式封装和模型驱动比较 一、结果页面配置 1.全局结果页面 在struts.xml中我们的package标签中有一个标签叫做<global-results> 全局结果集 <package name="login" namespace="/" extends="struts-default" > <!--全局结果页面只能在一个package中有效 package中的所有的action都有作用--> <global-results> <result name="success">/index.jsp</result> </global-results> </package> 2.局部结果页面 <package name="login" namespace="/" extends="struts-default" > <!--全局结果页面只能在一个package中有效 package中的所有的action都有作用--> <global-results> <result name="success">/index.jsp</result> </global-results> <action name="userLogin" class