首页 尚学堂-------Struts笔记

尚学堂-------Struts笔记

举报
开通vip

尚学堂-------Struts笔记尚学堂-------Struts笔记 前言 假 如 你 的 人 生 有 理 想,那 么 就 一 定 要 去 追,不 管 你 现 在 的 理 想 在 别 人 看 来是 多 么 的 可 笑 , 你 也 不 用 在 乎 , 人 生 蹉 跎 几 十 年 , 如 果 年 轻 的 时 候 计 较 得 失 前 怕 狼 就 后 怕 虎 而 不 去 追 逐, 等 到 了 40, 50 岁 的 时 候 , 你 唯 一 能 做 的 就 是 感 叹 岁 月 的 消 逝 和 无 情; 实验软件下载 1. 下载struts2.1.6 ...

尚学堂-------Struts笔记
尚学堂-------Struts笔记 前言 假 如 你 的 人 生 有 理 想,那 么 就 一 定 要 去 追,不 管 你 现 在 的 理 想 在 别 人 看 来是 多 么 的 可 笑 , 你 也 不 用 在 乎 , 人 生 蹉 跎 几 十 年 , 如 果 年 轻 的 时 候 计 较 得 失 前 怕 狼 就 后 怕 虎 而 不 去 追 逐, 等 到 了 40, 50 岁 的 时 候 , 你 唯 一 能 做 的 就 是 感 叹 岁 月 的 消 逝 和 无 情; 实验软件下载 1. 下载struts2.1.6 #struts217 (选择下载full distribution) 2. 下载myeclipse, 3. 下载tomcat, 4. 下载xwork,(要注意的是下载与struts2.1.6的对应版本,即2.1.2) 安装与设置 1. 解压struts2.1.6,假设解压后位于d:/struts2目录 2. 安装MyEclipse,任何版本都可以 3. 假设你已经安装好jdk和tomcat了,如d:/tomcat HelloWorld 1. 建立项目 a) 打开eclipse b) 新建项目 c) 选择myeclipse-java enterprise projects-web project d) 项目名称:struts2_0100_introduction e) 选择java ee 5.0 2. 设定server a) window – preferences – myeclipse – servers – tomcat – 6.x b) 选择tomcat home directory c) 选择enable d) finish 3. 设定jdk环境 a) window – preferences – java – installed jres b) 如果没有对应的JDK(不是JRE),选择add c) 选择standard VM -> next d) 选择JDK对应的Directory e) 将刚刚设定的JDK设为默认 4. 建立第一个struts2.1的程序 a) 找到struts目录下对应的apps目录 b) 解压struts2-blank-2.1.6.war c) Copy对应的lib的jar文件,需要除junit和spring-test之外的所有文件,其中commons-io的jar包会在文件上传和下载时需要,其他为必须 d) Copy对应的struts.xml到src目录,在package explorer视图进行操作 e) 注释掉struts.xml的多余内容 f) 建立HelloStruts2_1.jsp文件 g) *修改jsp文件的默认编码属性window-preferences-web-jspfiles-设为 Chinese,National Standard h) 在struts.xml中照原配置进行对应的配置 i) 修改对应的web.xml,建立struts2的filter(参考struts自带的项目) 5. 运行项目 a) 可以首先部署到tomcat上项目 b) 也可以项目右键debug as – myeclipse server app,选择刚刚建立好的server 6. 其他 a) 学习建立struts的dev-mode,好处在于我们修改了配置文件的时候能够自动热替换 b) 建立jar文件对应的源码D:/share/tools/struts-2.1.6/src/core/src/main/java,以及xwork对应的源码,以及对应的javadoc location,(更好的方式是建立自己的user-library) c) 浏览struts的目录 d) 认识eclipse jee的项目部署目录,认识如何修改webapp的context-root,项目copy改名后可能会出现的问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 e) package explorer – 建立jar的源文件和目标关联,navigator – 观察所有的内容 f) 认识Action的后缀名,在struts2默认中,带不带action都可以 常见问题: 1. struts.xml不自动提示 a) window – preferences – 搜索 catalog – add b) 选择key type为URI c) key: d) location: 对应的dtd文件,位于struts-core包中,解压开,指定相应位置,如:D:/share/0750_Struts2.1.6/soft/struts-2.1.6/lib/struts2-core-2.1.6/struts-2.0.dtd 2. 导入示例项目 a) 注意JDK的版本,应该是JDK6,否则会出class version的问题 b) 如果总是项目出问题,可以重建项目,单独拷文件 c) 还有一种情况是项目右键,properties – java – compiler 选择6.0 d) 另外,在tomcat配置中也要使用jdk6 3. devMode设为true就会出问题空指针问题 a) tomcat路径带了空格 4. 在使用ActionContext.getContext().get(“request”)取不到对象,为null值 a) web.xml不要使用2.0的filter,用新的 5. 在action的试验中,遇到一个奇怪的bug a) 用default-action-ref指定一个action b) 用*_*映射 c) 在地址栏中访问一个不存在的action,如adfsdfsfs d) 结果居然会映射到*_*上 e) 如果换成*__*就没问题了 f) 靠,只能认为是bug g) 下次用*-*,不用*_* 学习 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 说明 1. 先阅读老师的代码 2. 再建立自己的项目进行动手学习 Action 1. 实现一个Action的最常用方式:从ActionSupport继承 2. DMI动态方法调用 ~ 3. 通配符配置 * {1} {2} … a) *_* 4. 接收参数的方法(一般用属性或者DomainModel来接收) 5. 简单参数验证addFieldError a) 一般不使用Struts2的UI标签 6. 访问Web元素 a) Map类型 i. IoC ii. 依赖Struts2 b) 原始类型 i. IoC ii. 依赖Struts2 7. 包含文件配置 8. 默认action处理 Result 1. 常用四种类型: a) dispatcher(默认) b) redirect c) chain d) redirectAction 2. 全局结果集 a) global-results | extends 3. 动态结果(了解) a) 在action中保存一个属性,存储具体的结果location 4. 传递参数 a) 客户端跳转才需要传递 b) ${}表达式(不是EL) OGNL 1. Object Graph Navigation Language 2. 想初始化domain model,可以自己new,也可以传参数值,但这时候需要 保持参数为空的构造方法 3. 其他参考ognl.jsp 4. 什么时候在stack中会有两个Action,chain Struts-Tags 1. 通用标签: a) property b) set i. 默认为action scope,会将值放入request和ActionContext中 ii. page、request、session、application c) bean d) include(对中文文件支持有问题,不建议使用,如需包含,改用jsp包含) e) param f) debug 2. 控制标签 a) if elseif else b) iterator i. collections map enumeration iterator array c) subset 3. UI标签 a) theme i. simple xhtml(默认) css_xhtml ajax 4. AJAX标签 a) 补充 5. $ # %的区别 a) $用于i18n和struts配置文件 b) #取得ActionContext的值 c) %将原本的文本属性解析为ognl,对于本来就是ognl的属性不起作用 i. 参考 分析 定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析 3. Interceptor拦截器过程模拟 4. 定义自己的拦截器 a) acegi – spring security 5. 使用token拦截器控制重复提交(很少用) 6. 类型转换 a) 默认转换 i. 日期处理 b) 写自己的转换器: publicclass MyPointConverter extends DefaultTypeConverter{ @Override public Object convertValue(Object value, Class toType) { if(toType == Point.class) { Point p = new Point(); String[] strs = (String[])value; String[] xy = strs[0].split(","); p.x = Integer.parseInt(xy[0]); p.y = Integer.parseInt(xy[1]); return p; } if(toType == String.class) { return value.toString(); } returnsuper.convertValue(value, toType); } } publicclass MyPointConverter extends StrutsTypeConverter{ @Override public Object convertFromString(Map context, String[] values, Class toClass) { Point p = new Point(); String[] strs = (String[])values; String[] xy = strs[0].split(","); p.x = Integer.parseInt(xy[0]); p.y = Integer.parseInt(xy[1]); return p; } @Override public String convertToString(Map context, Object o) { // TODO Auto-generated method stub return o.toString(); } } c) 三种注册方式: i. 局部:XXXAction-conversion.properties 1. p(属性名称) = converter ii. 全局:xwork-conversion.properties 1. com.xxx.XXX(类名)= converter iii. Annotation d) 如果遇到非常麻烦的映射转换 i. request.setAttribute(); ii. session 补充视频中讲解的内容 1. Lambda表达式 2. 验证框架 3. UI标签 4. 类型转换中的异常处理 5. 上传与下载文件 6. Struts2注解 Struts2总结 1. Action a) namespace(掌握) b) path(掌握) c) DMI(掌握) d) wildcard(掌握) e) 接收参数(掌握前两种) f) 访问request等(掌握Map IOC方式) g) 简单数据验证(掌握addFieldError和
本文档为【尚学堂-------Struts笔记】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_009226
暂无简介~
格式:doc
大小:31KB
软件:Word
页数:0
分类:
上传时间:2018-07-31
浏览量:12