Springmvc中对日期类型的属性转换问题和自定义的参数解析器
来源:互联网 发布:淘宝购买魔术道具 编辑:程序博客网 时间:2024/04/28 19:10
springmvc属性编辑器:
对于日期类型的属性转换通过注入属性编辑器。
可以在action类中通过@Binder注解注册属性编辑器。
通过自定义属性编辑类方法,定义属性编辑器。
定义方法:
需要实现implements Converter<String, java.util.Date>
String就是原始类型
java.util.Date就是目标类型
目标:
将页面输入的开始采购时间cjtime_start(原始类型),向YycgdCustom类中java.util.Datecjtime_start属性(目标类型)赋值,需要将原始类型字符类型转成日期java.util.Date。
注意 :属性编辑器中目标类型和对象中属性类型一致。
接口方法:
public Date convert(String source) {
如果原始类型转换目标类型成功,通过return 向对象的属性赋值。
如果原始类型转换目标类型不成功,通过return 向对象的属性赋值为null.
日期类型转换的属性编辑器:
public class DateConverter implements Converter<String, Date> { public Date convert(String source) { if(source != null){//如果从浏览器传入字符串不等于开始转换 source = source.trim();//去除前后空格 if(source.equals("")){ source = null; } if(source!=null){//去除空格后不为空则开始转换 SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); try { return simpleDateFormat.parse(source); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); return null; } } } return null; }}
配置属性编辑器:
在springmvc.xml中配置:
<!-- 注解驱动 --> <mvc:annotation-driven conversion-service="conversionService"> </mvc:annotation-driven><!-- 自定义注册属性编辑器 --> <bean id="conversionService" class="org.springframework.format.support.FormattingConversionServiceFactoryBean"> <property name="converters"> <list> <bean class="yycg.base.action.converters.StringTrimConverter" /> <bean class="yycg.base.action.converters.DateConverter" /> <bean class="yycg.base.action.converters.DatetimeConverter" /> </list> </property> </bean>
1.1.2 自定义的参数解析器
Springmvc调用action方法过程,通过参数解析器:
Springmvc自带了很多的参数解析器,一般能满足需求。
可以自定义参数解析器:
需求:
从session中取当前用户身份信息。
实现:
通过形参定义ActiveUser activeUser,需要由参数解析器来解析这个值,
解析过程:从session取出activeUser给形参赋值。
自定义参数解析器方法:
实现:implements WebArgumentResolver
public class UserArgumentResolver implements WebArgumentResolver { //methodParameter存储action方法的参数信息 //webRequest是springmvc封装对象,通过此对象获取request和session等域的值 @Override public Object resolveArgument(MethodParameter methodParameter, NativeWebRequest webRequest) throws Exception { //如果参数的类型是activeUser从session中取当前用户信息设置到action方法形参上 if(methodParameter.getParameterType().equals(ActiveUser.class)){ //从session中取当前用户信息 ActiveUser activeUser = (ActiveUser) webRequest.getAttribute(Config.ACTIVEUSER_KEY, WebRequest.SCOPE_SESSION); return activeUser;//将参数值向action的方法形参赋值 } return UNRESOLVED; }}
配置自定义的参数解析器:
在springmvc.xml中配置:
<mvc:annotation-driven conversion-service="conversionService"> <mvc:argument-resolvers> <bean class="yycg.base.action.converters.UserArgumentResolver"/> </mvc:argument-resolvers> </mvc:annotation-driven>
1.1.3 修改链接
由于修改窗口较大,新开的标签窗口。
var sendUrl = “${baseurl}cgd/editcgd.action?id=”+bm;
parent.opentabwindow(bm+’采购单修改’,sendUrl);//调用父窗口打开一个新标签
function yycgdedit(bm){
var sendUrl = “${baseurl}cgd/editcgd.action?id=”+bm;
parent.opentabwindow(bm+’采购单修改’,sendUrl);//打开一个新标签
}
1.1.4 维护功能和查询功能区别
维护功能:增、删、改、查
查询功能:仅查询
采购单维护功能:给医院使用的,医院对自己创建的采购单进行维护。
通常实现时,让用户通过维护可以查询所有信息。
采购单查询功能:给监管单位和医院用户使用,卫生局可以查询所有医院下的采购单,卫生院可以查询本区域医院创建的采购单,医院只查询自己创建 采购单
通常实现时,让用户通过查询功能仅查询有权限看见的内容。
通常将查询功能和维护功能分别开发。
- Springmvc中对日期类型的属性转换问题和自定义的参数解析器
- SpringMVC对日期类型的转换
- SpringMVC对日期类型的转换
- SpringMVC对日期类型的转换
- SpringMVC对日期类型的转换
- springmvc中搜集日期参数对日期的处理
- Java 中对日期Date的操作 及 类型转换
- springMVC中对日期的格式化
- SpringMVC中自定义参数解析器及内置类型的绑定
- MySQL对日期时间类型的处理和限制
- springmvc属性编辑器和自定义参数解析器
- springMVC接收日期类型参数的自定义转换
- SpringMVC接收日期类型参数的自定义转换
- springMVC接收日期类型参数的自定义转换
- mysql 对日期类型的字段处理
- java对日期的一些转换
- Java对日期格式的统一转换
- Cocoa中对日期和时间的处理 NSDate
- labview做上位机+3D显示+MPU6050
- 详解JS作用域和this关键字
- 日期时间:Calendar的使用
- hadoop学习009
- 理解 redux
- Springmvc中对日期类型的属性转换问题和自定义的参数解析器
- Mastering Portals with a Portlet Bridge
- 聊聊 Statsd 和 Collectd 那点事!
- js 获取浏览器请求头的URL
- cell高度自适应
- 更新Xcode9后phoneGap中的ajax操作
- STL sort源码剖析
- 系列文章--HTML5学习系列链接
- Linux学习笔记(二十三、通配符)