Struts2
y41992910
紧跟时代潮流,努力进步,走在前列
展开
-
struts2_2_搭建struts2基本环境
搭建 Struts2 的环境:加入 jar 包: 复制 struts\apps\struts2-blank\WEB-INF\lib 下的所有 jar 包到当前 web应用的 lib 目录下.在 web.xml 文件中配置 struts2: 复制 struts\apps\struts2-blank1\WEB-INF\web.xml 文件中的过滤器的配置到当前 web 应用的 web.xml 文件原创 2017-01-03 20:24:34 · 233 阅读 · 0 评论 -
16-17. Struts2_OGNL
导入s标签<%@ taglib prefix="s" uri="/struts-tags"%> 想在页面查看详细信息,可以导入标签<s:debug></s:debug>在页面显示属性值的方式: 使用EL表达式或者使用OGNL表达式s标签 若希望返回栈顶对象的 message 属性值: [0].message 或 [0][“message”] 或 [0][‘message’] 若在指定的对原创 2017-04-23 20:36:44 · 240 阅读 · 0 评论 -
18.Struts2__声明式异常处理
异常处理: exception-mapping 元素 exception-mapping 元素: 配置当前 action 的声明式异常处理 exception-mapping 元素中有 2 个属性 exception: 指定需要捕获的的异常类型。异常的全类名 result: 指定一个响应结果, 该结果将在捕获到指定异常时被执行, 既可以来自当前 action 的声明, 也可以来自 globa原创 2017-04-23 21:43:02 · 298 阅读 · 0 评论 -
38. Struts2_使用声明式验证
个人笔记D:\3开源框架jar包\SSH 框架\struts-2.3.15.3\docs\WW\docs,文档路径D:\3开源框架jar包\SSH 框架\struts-2.3.15.3\apps\struts2-blank\example,validator.xml参考文件D:\3开源框架jar包\SSH 框架\struts-2.3.15.3\src\xwork-core\src\main\reso转载 2017-05-15 22:07:42 · 210 阅读 · 0 评论 -
19_21.Struts2_通用标签
*property 标签示例: 输出 Action 属性 customerId 的值: 输出 session 属性 userName 的值: 如果 value 属性没有给出, ValueStack 值栈栈顶对象的值被输出 在许多情况下, JSP EL 可以提供更简洁的语法url 标签 <s:url value="/getProduct" var="url2"><!--原创 2017-04-24 22:32:29 · 317 阅读 · 0 评论 -
39-41.Struts2_短路验证&非字段验证&相同的验证规则使用同一条响应消息&自定义验证器
主要笔记7). 关于非字段验证: 不是针对于某一个字段的验证. <validator type="expression"> <param name="expression"><![CDATA[password==password2]]></param> <message>Password is not equals to password2</message></validator转载 2017-05-16 21:43:43 · 336 阅读 · 0 评论 -
42. Struts2_文件的上传
主要笔记 1. 文件的上传:1). 表单需要注意的 3 点2). Struts2 的文件上传实际上使用的是 Commons FileUpload 组件, 所以需要导入commons-fileupload-1.3.jar commons-io-2.0.1.jar3). Struts2 进行文件上传需要使用 FileUpload 拦截器4). 基本的文件的上传: 直接在 Action 中定义如下 3转载 2017-05-21 09:29:37 · 223 阅读 · 0 评论 -
44. Struts2_表单的重复提交问题
主要笔记:表单的重复提交问题1). 什么是表单的重复提交> 在不刷新表单页面的前提下: >> 多次点击提交按钮 >> 已经提交成功, 按 "回退" 之后, 再点击 "提交按钮". >> 在控制器响应页面的形式为转发情况下,若已经提交成功, 然后点击 "刷新(F5)"> 注意: >> 若刷新表单页面, 再提交表单不算重复提交 >> 若使用的是 redire翻译 2017-05-21 15:54:57 · 268 阅读 · 0 评论 -
45. Struts2_自定义拦截器
主要笔记自定义拦截器1). 具体步骤I. 定义一个拦截器的类> 可以实现 Interceptor 接口> 继承 AbstractInterceptor 抽象类II. 在 struts.xml 文件配置. <interceptors> <interceptor name="hello" class="com.atguigu.struts2.interceptors.MyIntercep翻译 2017-05-21 16:23:35 · 852 阅读 · 0 评论 -
26-28-29-31.struts2_CRUD操作
主要笔记: 2. 使用 paramsPrepareParamsStack 拦截器栈后的运行流程1). paramsPrepareParamsStack 和 defaultStack 一样都是拦截器栈. 而 struts-default 包默认使用的是 defaultStack2). 可以在 Struts 配置文件中通过以下方式修改使用的默认的拦截器栈3). paramsPrepareParams翻译 2017-05-21 17:38:26 · 394 阅读 · 0 评论 -
27. Struts2运行流程分析
请求发送给 StrutsPrepareAndExecuteFilterStrutsPrepareAndExecuteFilter 询问 ActionMapper: 该请求是否是一个 Struts2 请求(即是否返回一个非空的 ActionMapping 对象)若 ActionMapper 认为该请求是一个 Struts2 请求,则 StrutsPrepareAndExecuteFilter 把请转载 2017-05-21 21:28:40 · 212 阅读 · 0 评论 -
32-35. Struts2_类型转换错误消息的显示和定制&自定义类型转换器&类型转换器与复杂属性&集合协同使用
类型转换错误消息的显示和定制: ConversionActionpackage com.hgh.struts2.conversion;import com.hgh.struts2.pojo.Customer;import com.opensymphony.xwork2.ActionSupport;import com.opensymphony.xwork2.ModelDriven;public翻译 2017-05-22 16:34:19 · 432 阅读 · 0 评论 -
15. Struts2_值栈
1. 关于值栈:1). helloWorld 时, ${productName} 读取 productName 值, 实际上该属性并不在 request 等域对象中, 而是从值栈中获取的. 2). ValueStack: I. 可以从 ActionContext 中获取值栈对象II. 值栈分为两个逻辑部分 > Map 栈: 实际上是 OgnlContext 类型, 是个 Map, 也是对原创 2017-04-23 16:36:43 · 205 阅读 · 0 评论 -
14. Struts2_动态方法调用
作为了解即可,默认是不启用的,会暴露所调用的方法<!-- 打开允许动态方法调用的开关, 默认是 false --> <constant name="struts.enable.DynamicMethodInvocation" value="true"></constant>动态方法调用: 通过 url 动态调用 Action 中的方法 action 声明: <action name="te原创 2017-04-23 15:16:03 · 227 阅读 · 0 评论 -
13. Struts2_通配符映射
通配符映射 一个 Web 应用可能有成百上千个 action 声明. 可以利用 struts 提供的通配符映射机制把多个彼此相似的映射关系简化为一个映射关系 通配符映射规则 若找到多个匹配, 没有通配符的那个将胜出 若指定的动作不存在, Struts 将会尝试把这个 URI 与任何一个包含着通配符 * 的动作名及进行匹配 被通配符匹配到的 URI 字符串的子串可以用 {1}, {2} 来引原创 2017-04-23 11:59:03 · 318 阅读 · 0 评论 -
3,struts2_3_struts2的helloworld
首先配置好基本的环境 1,编写页面: index.jsp<body><a href="product_input.action">to product_input</a></body>input.jsp<body><form action="product_create.action" method="post">productName:<input type="text" name原创 2017-01-03 21:08:53 · 239 阅读 · 0 评论 -
4.struts2_4_配置文件详解
1.如果package配置了namespace,则需要在访问url的时候加上这个值,默认的值是/ (类似于springmvc中的在@controller注解上加上一个@RequestMapping(value=”xxx”))namespace 属性是可选的, 如果它没有给出, 则以 “/” 为默认值. 若 namespace 有一个非默认值, 则要想调用这个包里的Action, 就必须把这个属性所原创 2017-01-03 22:20:28 · 194 阅读 · 0 评论 -
6.Struts2_Action 概述
复习搭建 Struts2 的开发环境: 3 个步骤action VS Action 类1). action: 代表一个 Struts2 的请求. 2). Action 类: 能够处理 Struts2 请求的类. > 属性的名字必须遵守与 JavaBeans 属性名相同的命名规则.(页面的属性与setxxx中的xxx一致,而不是与属性名一致) 属性的类型可以是任意类型. 从字符串到非字转载 2017-01-04 20:06:39 · 266 阅读 · 0 评论 -
7. Struts2_通过 ActionContext 获取 WEB 资源
主要笔记: 主要是struts2通过使用ActionContext的方式,能部分的获取WEB资源。2. 在 Action 中访问 WEB 资源:1). 什么是 WEB 资源 ? HttpServletRequest, HttpSession, ServletContext 等原生的 Servlet API。 2). 为什么访问 WEB 资源? B\S 的应用的 Controller 中原创 2017-01-04 22:55:09 · 416 阅读 · 0 评论 -
8. Struts2_通过 Aware 接口获取 WEB 资源
通过实现RequestAware,ApplicationAware,SessionAware,ParameterAware这四个接口,struts2会自动注入资源,然后获取即可。 至于是用ActionContext还是用XxxAware接口来获取比较好,主要就是看使用范围 选用的建议: 若一个 Action 类中有多个 action 方法, 且多个方法都需要使用域对象的 Map 或 parame原创 2017-01-05 21:00:49 · 347 阅读 · 0 评论 -
9. Struts2_通过和 ServletAPI 耦合的方式获取 WEB 资源
主要就是通过ServletActionContext.getxxx的方式获取request,session,servletContext. 因为是原生的servletapi,所以跟servlet耦合在一起 一般的处理顺序: 1.后台的类和执行方法,和返回的页面 2.struts2.xml中配置这个类和方法,还有返回的页面指向的路径,接受请求的路径 3.编写请求发起的页面和表单或者url原创 2017-01-05 21:16:58 · 288 阅读 · 0 评论 -
strust2学习_1_简单的应用
简单的filter1.创建index.jsp<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.原创 2016-12-28 22:17:59 · 304 阅读 · 0 评论 -
Spring_36_集成 Struts2
他人的笔记和基本思路Spring 如何整合 Struts2 ?1). 整合目标 ? 使 IOC 容器来管理 Struts2 的 Action!2). 如何进行整合 ? ①. 正常加入 Struts2②. 在 Spring 的 IOC 容器中配置 Struts2 的 Action 注意: 在 IOC 容器中配置 Struts2 的 Action 时, 需要配置 scope 属性, 其值必须为 p转载 2017-02-19 10:32:14 · 285 阅读 · 0 评论 -
22-24_Struts2_表单标签(1)
<%@page import="java.util.ArrayList"%><%@page import="java.util.List"%><%@page import="com.hgh.struts2.common.City"%><%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding=原创 2017-05-02 21:06:23 · 381 阅读 · 0 评论 -
25.Struts2_主题
<!-- 配置struts2的默认主题 simple: 把 UI 标签翻译成最简单的 HTML 对应元素, 而且会忽视行标属性xhtml: xhtml 是默认的主题. 这个主题的模板通过使用一个布局表格提供了一种自动化的排版机制. css_xhtml: 这个主题里的模板与 xhtml 主题里的模板很相似, 但它们将使用 css 来进行布局和排版ajax: 这个主题里的模板以 xhtml原创 2017-05-02 21:07:04 · 240 阅读 · 0 评论 -
12. Struts2_result
每个 action 方法都将返回一个 String 类型的值, Struts 将根据这个值来决定响应什么结果. 每个 action 声明都必须包含有数量足够多的 result 元素, 每个 result 元素分别对应着 action 方法的一个返回值. result 元素可以有下面两个属性 name: 结果的名字, 必须与 Action 方法的返回值相匹配, 默认值为 success ty原创 2017-04-23 11:23:30 · 242 阅读 · 0 评论 -
35. Struts2_国际化&通过超链接动态加载国际化资源文件
主要笔记: 1. 国际化的目标1). 如何配置国际化资源文件I. Action 范围资源文件: 在Action类文件所在的路径建立名为 ActionName_language_country.properties 的文件 II. 包范围资源文件: 在包的根路径下建立文件名为 package_language_country.properties 的属性文件, 一旦建立,处于该包下的所有翻译 2017-05-22 16:53:07 · 325 阅读 · 0 评论