- 浏览: 532483 次
- 性别:
- 来自: 武汉
文章分类
最新评论
-
rgqancy:
终于明白为啥XML里要带jdbcType=XXXX了。
mybatis 需要注意的点 MyBatis 插入空值时,需要指定JdbcType (201 -
rzh0001:
Thanks a lot
mybatis 需要注意的点 MyBatis 插入空值时,需要指定JdbcType (201 -
guji528:
学习了,谢谢
mybatis 需要注意的点 MyBatis 插入空值时,需要指定JdbcType (201 -
AKka:
彻底清楚这个错误的原因了。向楼主学习了。
mybatis 需要注意的点 MyBatis 插入空值时,需要指定JdbcType (201 -
远去的渡口:
武汉小吃,我最爱热干面和鸭脖,想念啊~~
过年时候还学习编程, ...
过年的心情
struts2 的web 项目中为了方便的编写jsp,标签是最好的选择 1:struts2 标签库的定义在**-core-版本号.jar META-INF 路径下找到struts-tags.tld文件;使用该标签需要在web 项目里面导入标签库: A:在web.xml文件 (默认 可以省略) <taglib> <taglib-uri>/struts-tags</taglib-uri> <taglib-location>/WEB-INF/lib/*.jar</taglib-location> <taglib> B:在jsp 导入标签的dingyi <%@ taglib prefix="s" uri="/struts-tags"%> 注意uri要一直,上面定义的是默认写法 2:OGNL struts2 利用了内建的ognl表达式,它基于XWork,增加了对ValueStack的支持 ,在jsp里面通过ognl访问属性,struts2会自动搜寻栈内的所有实体。直到找到位置。 如:#person.address.ip 等于 person.getAddress().getIp();翻译结果为条用get方法 或是jstl的${person.address.ip} <s:if>用法 A:直接写表达式 <s:set name='china' value='china'> <s:if test="${china=='china'}">show</s:if> result: show <s:set name="count" value="99"> <s:if test="${count>0}">bigger than 0</s:if> <s:else>not</s:else> result: bigger than 0 B:在遍历里面使用判断: <s:iterator id="id" value="label"> <s:if test="%{#id.attrValueId!=0}"> <s:property value="#id.attrValue" /> <s:property value="#id.countAll" /> <s:property value="#id.countRequest" /> </s:if> <s:else> <s:property value="#id.attrValue" /> </s:else> </s:iterator> label是一个List<Attribu> Attribu 包含属性attrValueId和countAll 在s:iterator域内这是id的值是"id",使用ognl读取遍历对象的方法是 #id test="%{#id.attrValueId!=0}" 看子对象的属性attrValueId是否为0 <s:property value="#id.attrValue" /> 打印子对象的attrValue属性 C:直接读取对象 <s:if test="request.price==null||request.price<=0"> </s:if> 读取对象request,判断price是否小于0; request 可以是如何的javaBean,也可以是基本属性 D:直接读取对象的另一种写法 <s:if test="%{aTransactionSummaryBean!=null}"> E:多个条件的判断 <s:if test='%{isShowAll=="Y"||isShowAll==null||isShowAll==""}'> <li class="selected"> </s:if> <s:else> <li>else </s:else> isShowAll 为Action 里面的字符串属性 F:直接拿Action里面的boolean 貌似不xing Action里面 private boolean choosed = true; public boolean isChoosed(){ return choosed; } <s:if test="choosed"></s:if> 发现这个判断无法正确运行,也许是ognl 是通过get方法来获取对象的,如果在action 里面有下面的方法; public String getChoosed(){ return "true"; } 上面那个s:if可以正确执行 最后注意一点:ognl和jstl标签不能互相嵌套
2011-12-14
引用
字符串N一定要用“”双引号包含,从test的包含则用单引号 ‘ ’,如果相反,则不能正确判断该属性是否与该字符串相等。
正确:
<s:if test='activityBean.searchForce=="N" '>
错误:
<s:if test="activityBean.searchForce=='N' ">
因为java是强类型语言,单引号表示char类型,只能赋给一个字符给char类型,
而双引号则表示String类型
所以我的activityBean.searchForce属性是String类型,那么N必须要用双引号
/*******************************************
例如这个语句
要判断struts堆栈里systemSettingModel.settingValue 是否等于 "A"
写成
<s:if test="systemSettingModel.settingValue == 'A'">...</s:if>
是不对的。
这样A被认为是字符,而systemSettingModel.settingValue是单字符的字符串,不匹配
应写成
<s:if test='systemSettingModel.settingValue == "A"'>。。。 </s:if>
或
<s:if test="systemSettingModel.settingValue == \"A\"">... </s:if>
参考:
http://struts.apache.org/2.1.8.1/docs/why-wont-the-if-tag-evaluate-a-one-char-string.html
另外systemSettingModel.settingValue的值可以这样取得
${systemSettingModel.settingValue}
<s:property value="systemSettingModel.settingValue"/>
<s:property value="#request.systemSettingModel.settingValue"/>
#表示不在struts堆栈里,没有#表示从struts堆栈里取
/***********************************
Struts2堆栈
struts2中的标签
s:a 中的href 什么时候使用“# ” 什么时候该用“%{ }” 什么时候该用“%{# }” 什么时候用“”
s:select 中的list 什么时候使用“# ” 什么时候该用“%{ }” 什么时候该用“%{# }” 什么时候用“”
s:if 中的test 什么时候使用“# ” 什么时候该用“%{ }” 什么时候该用“%{# }” 什么时候用“”
s:iterator 中的value什么时候使用“# ” 什么时候该用“%{ }” 什么时候该用“%{# }” 什么时候用“”
s:checkboxlist 中的list 什么时候使用“# ” 什么时候该用“%{ }” 什么时候该用“%{# }” 什么时候用“”
Struts2中有值堆栈和堆栈上下文的概念,你用 <s:debug />可以看出.
S标签中用#可以取出堆栈上下文中的存放的对象.
用%{}可以取出存在值堆栈中的Action对象,直接调用它的方法.例如你的Action如果继承了ActionSupport .那么在页面标签中,用%{getText('key')}的方式可以拿出国际化信息. %{#}, 这是JSP2.1最新规范中的语法,是Struts2为其解决兼容性问题而写成%{#}的
在域对象中使用%{#}
比如%{#session.user.userName}
将获得user对象的 userName属性值
%{}强调的是从你设定的root点取
%{}用于计算表达式
如%{10+20}结果将输出30
如%{"a"+"b"}结果将输出"ab"
#通常强调从上下文取
如#parameters.name[0]等价于request.getParameter("name")
如#session.name等价于session.getAttribute("name")
如#request.name等价于request.getAttribute("name")
%{#}仍然用于计算表达式,只不过操作元可以是变量
如先定义一个变量
<s:set name="age" value="%{25}"/>
则%{#age}将输出25,也可以省略"#",写为%{age}
若将age加10,可这么写:
%{#age+10},将输出30.不能省略"#"。也就说变量用于计算时不能省略"#"
需求:在做项目的时候,从后台取了一个list到前端jsp显示,显示时需要对某一时间字段进行判断(如:判断某调查问卷是否过了截止日期,如果过 了则不添加问卷连接,如果当前时间没过截止日期则对问卷标题添加问卷链接,<无论是否过期的问卷都要供用户查看统计结果>)。
方法:1、在后台进行处理。
2、在前台用js处理。
3、在前台用structs2标签处理。
在此由于数据库已固定(只提供了截止日期),并且项目中采用structs框架,所以采用方法三。具体代码如下:
<s:set name="nowTime" value="new java.util.Date()"></s:set>
罩杯越大是不是胸罩越厚?
<s:set name="lessTime" value="endTime"></s:set>
<s:if test='#lessTime == null || #lessTime.getTime()>#nowTime.getTime()'>
其中其中endTime是从服务端读来的截止日期。
总结:
<s:if test='#lessTime == null || #lessTime.getTime()>#nowTime.getTime()'>
上面代码中的#不能漏,访问用structs标签<s:set>在jsp中存储的属性时要加上#。
发表评论
-
四位计算机的原理及其实现
2015-09-05 19:23 938你是否想过,计算机为什么会加减乘除?或者更直接一点,计算机的原 ... -
ubuntu13.04安装mysql5.6RPM包1、使用的安装包MySQL-5.6.12-2.l
2014-11-20 23:08 1028ubuntu13.04安装mysql5.6 RPM包 1、 ... -
字典树相关代码
2014-08-10 18:21 1008package com.myway.study; i ... -
两有序数组求交集
2014-05-01 00:27 1073package com.myway.study; i ... -
JVM垃圾收集器异同
2014-04-22 09:48 1266VM 垃圾收集器有3类,这里主要介绍我们常用的 并行和并发收集 ... -
idea 11 如何实现热部署
2014-02-17 13:37 1042idea 如何配置 热部署呢? 如图: 然后配置 t ... -
java位操作符总结
2013-08-04 20:42 933二进制负数以它正值的 ... -
快速排序简要算法
2013-07-21 22:21 1111package math; import jav ... -
memcached安装
2013-03-10 09:32 4859今天 ,心血来潮 想安装下memcached 先给自己测试一下 ... -
温习温习 aop的原理
2013-02-11 22:23 1436在我工作这几年里,spring aop 用得最多的有两点 1 ... -
URL编码以及GET和POST提交乱码解决方案
2012-09-14 16:59 16941. 什么是URL编码。 ... -
Struts2 IF 判断 SESSION值
2012-08-16 15:12 1208<s:if test="ticke ... -
@me 如何处理
2012-07-28 22:37 1165红薯 分享了这个代码 ,我觉得很好 在这个社区与大家分享 。 ... -
mybatis 需要注意的点 MyBatis 插入空值时,需要指定JdbcType (201
2012-07-27 22:59 161762前天遇到一个问题 异常显示如下: 引用 Exception i ... -
猜测 javaye的分页设计
2012-07-05 21:32 1136非常喜欢javaeye的分页 ,自己也写了一个 按照逻辑测试了 ... -
java控制事务级别
2012-06-18 20:40 1167JDBC事务并发产生的问题和事务隔离级别 原子操作使用事务,一 ... -
ibatis / mybatis 存储过程调用 区别 以及例子
2012-06-11 21:16 1582ibatis: 如下: xml配置文件: 请看 ... -
java timerTask timer分析
2012-06-07 20:37 1569首先看一看 timer timerTask如何调用 ? ... -
MapWrapper 学习
2012-01-04 16:25 1574MetaObject 有一个 setValue方法 这个方 ... -
mybatis 学习
2011-12-24 22:59 2444这篇博客是我学习mybatis的心得。也是对自己的鞭策。 这些 ...
相关推荐
Struts2是一款非常流行的Java Web框架,用于构建企业级应用。然而,随着时间的推移,Struts2在安全方面暴露出了一些重要的漏洞,这给使用该框架的系统带来了潜在的安全风险。"Struts2漏洞检查工具Struts2.2019.V2.3...
Struts2是一个强大的Java EE应用程序框架,主要用于构建企业级的Web应用。它的核心是MVC(Model-View-Controller)设计模式,可以帮助开发者组织代码,提高开发效率,并且提供了丰富的特性来支持表单验证、国际化、...
Struts2 项目开发 Struts2 是一个基于 Java Web 的框架,广泛应用于 Web 应用程序的开发。下面将从 Struts2 项目开发的角度,详细介绍 Struts2 框架的应用、开发流程、技术架构、实践经验等方面的知识点。 项目...
### Struts2核心知识点解析 #### 一、Struts2框架概述 - **定义与特点**:Struts2是一款基于MVC(Model-View-Controller)设计模式的Java Web应用程序框架,它继承了Struts1的优点,同时在设计上更加灵活、易用,...
struts2-core-2.0.1.jar, struts2-core-2.0.11.1.jar, struts2-core-2.0.11.2.jar, struts2-core-2.0.11.jar, struts2-core-2.0.12.jar, struts2-core-2.0.14.jar, struts2-core-2.0.5.jar, struts2-core-2.0.6.jar,...
该工具的打开路径为:\Struts2VulsTools-2.3.20190927\Test\bin\Release\Text.exe 2019-09-25: 优化部分EXP在部分情况下被WAF拦截的问题,提高检测成功率,优化自定义上传路径exp,文件所在目录不存在时自动创建...
Struts2是一个强大的Java web应用程序开发框架,它基于Model-View-Controller(MVC)设计模式,旨在简化创建用户交互式、数据驱动的web应用的过程。这个“Struts2接口文档”是开发者的重要参考资料,提供了关于...
Struts2-showcase是一个用于演示和学习Apache Struts2框架功能的开源项目。这个压缩包“struts2-showcase.rar”包含了完整的源代码,旨在帮助开发者深入理解Struts2框架的工作原理及其各种特性。以下是对Struts2和...
从给定的文件信息来看,标题“struts2中文学习文档”和描述“struts2的根本webwork2”表明这是一份关于Struts2框架的学习资料,特别强调了Struts2与WebWork2的关系。Struts2是Apache Struts的一个版本,它是一个用于...
-- 为修复struts2 s2-016、s2-017漏洞,重写DefaultActionMapper --> <bean type="org.apache.struts2.dispatcher.mapper.ActionMapper" name="myDefaultActionMapper" class=...
"struts2 jar"文件包含了Struts2框架的核心库,可能包括struts2-core、struts2-convention、struts2-json-plugin等依赖,这些是开发Struts2应用必不可少的组件。 "Struts2"可能是项目实例代码,包括Action类、视图...
Struts2是一个非常著名的Java Web开发框架,由Apache软件基金会维护。它基于MVC(Model-View-Controller)设计模式,极大地简化了构建基于Java EE的Web应用程序的过程。本资源包含"struts2所有jar包程序文件",是...
Struts2是一个强大的Java web开发框架,用于构建可维护、可扩展且结构良好的应用程序。它在MVC(Model-View-Controller)设计模式的基础上提供了一种实现方式,使得开发者能够更方便地处理用户请求,控制业务逻辑,...
Struts2是Apache软件基金会下的一个开源框架,主要用于构建企业级的Java web应用程序。张龙圣思园的Struts2学习笔记,无疑为Java开发者提供了一份宝贵的参考资料,它可能涵盖了Struts2的基础概念、核心组件、配置...
struts2 chm 程序包 org.apache.struts2 接口概要 接口 说明 StrutsStatics Constants used by Struts. 类概要 类 说明 RequestUtils Request handling utility class. ServletActionContext Web-specific ...
包含struts2-core-2.5.10.1.jar,struts2-jfreechart-plugin-2.5.10.1.jar,struts2-json-plugin-2.5.10.1.jar,struts2-junit-plugin-2.5.10.1.jar,struts2-bean-validation-plugin-2.5.10.1.jar,struts2-cdi-...
整合使用最新版本的三大框架(即Struts2、Spring4和Hibernate4),搭建项目架构原型。 项目架构原型:Struts2.3.16 + Spring4.1.1 + Hibernate4.3.6。 此外,还有:log4j、slf4j、junit4、ehcache等知识点。 项目...
Struts 2是一款基于Java的开源MVC框架,它在Web应用开发中广泛使用,但同时也因其复杂的架构和历史遗留问题,成为了网络安全的焦点。这个标题提到的是一个全面的Struts 2漏洞检测工具,旨在帮助开发者和安全专家识别...
struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全...
Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试...