Struts2
若节
这个作者很懒,什么都没留下…
展开
-
Struts2.0学习---第一个程序
刚开始接触框架,怀着崇敬的心情去学习Struts2.0,然后就被其强大的功能,简洁的代码所吸引,然而一开始还是碰了不少壁,有很多细节需要掌握,不然要一直和bug打交道了。我这个是Struts2.0框架,2.0以上的版本不保证可以正常运行。导包的话,直接导入样例中最小的包的lib。先在src下建个包action,里面一个继承ActionSupport类的ShowWords类。原创 2016-09-12 23:30:48 · 387 阅读 · 0 评论 -
Struts2使用Web组件
为了在Action中直接访问ServletAPI,Struts2还提供了一系列接口。ServletRequestAware:可以直接访问HttpServletRequest实例ServletResponseAware:可以直接访问HttpServletResponse实例SessionAware:可以直接访问Web应用的HttpServletResponse实例ServletCon原创 2016-11-25 22:22:14 · 277 阅读 · 0 评论 -
Struts2学习笔记---拦截器实例两个
这里自定义一个将特殊内容转化为指定内容的实例。这里将"java"字符串转化为"play"。这里列出核心代码struts.xml 定义及配置拦截器 index.jsp 内容:原创 2016-09-22 19:00:55 · 463 阅读 · 0 评论 -
Struts2学习笔记---动态方法的调用
若要调用action包下的ShowWords类中的动态方法,就是说,不是一加载类就会立刻调用的方法,可以这样写 111 /showWords.jsp /inputWords.jsp 其中“{1}”表示第一组,即前面第一个 * 所代表的字符串。例如:当你打算调用method方法,链接中应当这样写:....../showWords_原创 2016-09-15 22:07:11 · 317 阅读 · 0 评论 -
Struts2与Servlet API的交互
1.间接访问在Action方法中,获取 ActionContext 对象,然后可以获取到传入参数和Session,如: ActionContext context=ActionContext.getContext(); if(context.getParameters().get("name") instanceof Object[]) { for(Object obj:(原创 2017-01-21 09:09:41 · 292 阅读 · 0 评论 -
Struts2的工作流程
图 1 struts2体系的结构图 从图1我们不难看出struts2的工作流程大致分为一下几部分 1、客户端请求一个HttpServletRequest的请求,如在浏览器中输入http://localhost: 8080/bookcode/Reg.action就是提交一个(HttpServletRequest)请求。 2、这个请求经过一系列的原创 2017-02-22 17:35:24 · 438 阅读 · 0 评论 -
Struts2类型转换
①要写一个转换器,继承DefaultTypeConverter,覆盖方法convertValue,value表示需要转换的值,toType表示待转化的类型。public class DateTypeConvertor extends DefaultTypeConverter { private DateFormat[]formats={new SimpleDateFormat("yyyy-原创 2017-02-23 11:51:20 · 246 阅读 · 0 评论 -
Struts2.0学习笔记---ognl表达式的常见用法
比如你想获取request域中的内容,可以这样: <% request.setAttribute("name", "swk"); %>原创 2016-09-18 09:42:14 · 655 阅读 · 0 评论 -
Struts2方便实用的内置校验器
转自:点我阅读原文Struts2提供的声明式验证器在xwork-core-**.jar包的 com\opensymphony\xwork2\validator\validators\default.xml配置文件中 ,打开文件我们可以看到所有验证器声明: name="required" class="com.opensymphony.xwork2.validator.v原创 2017-02-02 22:13:55 · 3275 阅读 · 0 评论 -
Struts2常用标签
1.if elseif else 标签控制流程,类似于 if else ,这一点比 jstl 稍微好些,因为 jstl 没有else标签 id=1 id=2 id!=1&id!=2 2.iterator标签 价格大于18元的杂志共有 18}.size()" /> 本,分别是: 18}"> - ¥.原创 2017-02-23 20:01:05 · 1738 阅读 · 0 评论 -
Struts2常用拦截器
1.timer拦截器,常用来测试项目性能,只需要在struts.xml中的Action配置中加入一句话 /index.jsp 然后在控制台便可以看到这个Action所花费的时间 信息: Executed action [//timer!execute] took 2700 ms.2.防止重复提交的拦截器,普通的项目都会用到防止重复提交。向这个Action原创 2017-02-24 17:24:50 · 299 阅读 · 0 评论 -
Struts2上传与下载文件
upload.jsp username: file: UploadAction.javapublic class UploadAction extends ActionSupport{ private String username; //注意,file并不是指前端jsp上传过来的文件本身,而是文原创 2017-02-24 20:01:43 · 186 阅读 · 0 评论 -
Struts2.x常用技巧
1.提交按钮的特殊设置.......原创 2017-03-04 17:51:37 · 193 阅读 · 0 评论 -
Struts2.0学习笔记---注册时输入类型不匹配并显示
Struts2类型转换(一)-类型转换概述,错误消息显示与定制一、类型转换概述1、 从一个 HTML 表单到一个 Action 对象, 类型转换是从字符串到非字符串。 因为HTTP 没有 “类型” 的概念,每一项表单输入只可能是一个字符串或一个字符串数组。因此, 在服务器端, 必须把 String 转换为特定的数据类型。(详细讲述可参考《Struts2技术内幕-深入解析Strut原创 2016-09-22 21:22:09 · 345 阅读 · 0 评论 -
Struts2.0学习笔记---拦截器拦截方法
拦截器可以对指定的方法进行拦截,不仅可以去除某些不想拦截的方法,也可以包含某些希望拦截的方法。比如对方法一拦截,对方法二不拦截struts.xml index.jsp methods1 //Exclude表示排除在外,不需要拦截的方法 index.jsp me原创 2016-09-22 19:40:56 · 467 阅读 · 0 评论 -
Struts学习笔记---拦截器
【Struts2】☆★之Struts2自定义拦截器验证登录 在实际项目中我们的方法都是需要验证登录状态的,所以在使用Struts2框架的项目中,自定义拦截器是一个不错的选择,本文就简单介绍如何使用拦截器,对全局方法进行验证登录状态!第一步:搭建Struts2开发环境第二步:编写一个Action方法转载 2016-09-16 17:03:11 · 388 阅读 · 0 评论 -
Struts2.0学习---Action名称的搜素顺序及配置的默认值
若是在浏览器中访问的包不存在,则会访问上层包,寻找此action,若是找到了包,却没有找到action,则会在struts.xml中寻找默认的namespace的包(没有配置namespace或者namespace为空字符串的包),然后在其下寻找action。原创 2016-09-15 15:20:28 · 310 阅读 · 0 评论 -
Struts2.0学习笔记---plainText
plainText是 result 的type属性值之一,它可以将源代码打印到浏览器上比如说: /index.jsp UTF-8 其中 /index.jsp表示待解析的文件 。UTF-8设置了程序读取文件的字符集编码,为了读取汉字(可怜的中国程序员)。原创 2016-09-15 18:31:13 · 1458 阅读 · 0 评论 -
Struts2.0学习笔记---关于重定向与携带信息
/index.jsp?username=${username} 当有一个test.action请求时,会重定向到index.jsp页面,并携带action包下的username属性过去,若是jsp页面打算获取,只需${param.username}原创 2016-09-15 17:14:07 · 367 阅读 · 0 评论 -
Struts2.0学习笔记 --- 一些零碎知识点
1.改变Struts2处理请求的后缀在struts.xml 中struts标签下加入原创 2016-09-15 19:56:12 · 266 阅读 · 0 评论 -
Struts2.0学习笔记 --- 接收参数
一般来讲,参数的传递有两种方式,第一种:通过url来携带,第二种通过表单来携带。只需要在action所对应的class中添加所要携带的属性。然后就可以直接在jsp中获取了。通过url携带就是在action后+?属性1=value1&属性2=value2通过表单携带就是在表单中,name对应的值就是你将要初始化的属性。 id: name:原创 2016-09-16 07:22:13 · 272 阅读 · 0 评论 -
Struts2.0学习笔记---类型转换
分为两种一种为全局的,另一种为局部的。先介绍局部的。建一个conversion包,下面放各种转化器。若是要把String转化为Date,如yyyyMMdd转化为Date类型。先要写一个继承 DefaultTypeConverter 的类,重写 public Object convertValue(Map context, Object value, Class toType)原创 2016-09-16 10:18:20 · 381 阅读 · 0 评论 -
Struts2.0学习笔记 --- 访问或添加几个属性的三种方式
第一种方式:最常用到 public String execute() { ActionContext ac=ActionContext.getContext(); ac.getApplication().put("app", "application"); ac.getSession().put("ses", "session"); ac.put("req","context"原创 2016-09-16 11:05:25 · 350 阅读 · 0 评论 -
Struts2.0学习笔记---上传文件和多文件上传
粘上自己的代码:ShowWords.javapackage action;import java.io.File;import java.io.IOException;import org.apache.commons.io.FileUtils;import org.apache.struts2.ServletActionContext;public class Show原创 2016-09-16 15:08:51 · 358 阅读 · 0 评论 -
Struts2.0学习笔记---对所有方法进行校验和对某个方法进行校验
校验就是说进行验证,核对信息的有效性,然后才进行下一步。是这样做的:对要校验数据的类继承ActionSupport类,重写这个方法比如,校验这个类中username与phone的属性。 @Override public void validate() { if(username==null||"".equals(username.trim())) { thi原创 2016-09-16 20:53:27 · 397 阅读 · 0 评论 -
Struts2.0学习笔记---基于XML配置来进行校验
首先要在被校验的类的所在包下新建一个xml,xml必须这样命名:被校验的类的简单名-validation.xml,后面“-validation.xml”为固定格式,类的简单名就是指不加包名,只是类名。然后模板如下:<!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.2//EN"原创 2016-09-17 09:41:50 · 264 阅读 · 0 评论 -
Struts2.0学习笔记---设置国际化全局配置文件和包范围配置文件和Action范围配置
所谓国际化,就是指的是不同的浏览器,不同的显示,比如说我们的浏览器显示:嗨,朋友,而外国人的浏览器显示:hello。这个在项目中不常用到,但是学习下,以防不备之需。第一点. 第二点.在struts.xml中如下配置 其中value就是指你的配置文件的baseName,将其设置为全局化的,可供其他文件使用。第三点.测试的话,可原创 2016-09-17 11:04:23 · 951 阅读 · 0 评论 -
Struts2学习笔记---常用标签
一。interator标签举个小李子: 二。url标签 对于未被浏览器解析为ognl 标签的式子,需要在外边%{}包围起来原创 2016-09-18 11:18:49 · 343 阅读 · 0 评论 -
struts2学习笔记
1.struts.xml中配置action时 /WEB-INF/jsp/{1}.jsp 注意这里不为${1} 2.Struts2通常直接使用请求参数,只需要在Action中含有属性,属性名为请求参数的名称,并为属性提供 get set 方法。 3.配置Action时,若有多个配置的Action匹配到,则精确匹配优先,若没有精确匹原创 2017-04-05 23:53:30 · 411 阅读 · 0 评论