Struts2数据类型转换(页面数据库数据类型转换)
2016-10-20 19:41
555 查看
数据转换,为了页面和数据库数据的转换,两种情况:
Struts2也提供了自动类型转换,比如:
在我们继承的struts-default配置文件中,加载了数据转换的方法
如下:
但有时默认的转换器不能满足需要,因此我们需要自己定义,比如:
我们输入的日期是: 09/01/1999,
那么自动类型转换就会报错了,我们自己实现下类型转换。
实现自定义转换器
我们通过默认的转换器找到,转换器的继承顺序是这样的
TypeConverter—DefaultTypeConverter—StrutsTypeConverter
那么我们的MyConverter继承StrutsTypeConverter类,我们只需要实现
coverterFromString和converterToString方法。
代码如下
这样,我们的类型转换器就实现了。
下面我们就可以配置需要类型转换的数据了。
有两种方式,一种是局部配置,写在bean包下
只要包下的birthday属性可以转换。
第二种方式,全局配置文件,写在src文件下
Date形式的数据都可以转换了。
结果图:
数据库中
数据类型转换完成。
1:把页面上的字符串类型的数据转成数据库中的类型 insert,update,delete 2:把数据库中某种类型的数据转成字符串显示在页面上 select
Struts2也提供了自动类型转换,比如:
1:基本数据类型的转换 2:本地格式的日期类型(yyyy-MM-dd)---Date 3: 把值是 String[]类型的转换成了用, 间隔的字符串
在我们继承的struts-default配置文件中,加载了数据转换的方法
如下:
但有时默认的转换器不能满足需要,因此我们需要自己定义,比如:
我们输入的日期是: 09/01/1999,
那么自动类型转换就会报错了,我们自己实现下类型转换。
实现自定义转换器
我们通过默认的转换器找到,转换器的继承顺序是这样的
TypeConverter—DefaultTypeConverter—StrutsTypeConverter
那么我们的MyConverter继承StrutsTypeConverter类,我们只需要实现
coverterFromString和converterToString方法。
代码如下
public class MyConverter extends StrutsTypeConverter { private SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy"); @Override /* * 第一个参数是OGNL上下文,第二个参数是被转换的数据,第三个数据是转换的类型 */ public Object convertFromString(Map context, String[] values, Class toClass) { //判断有没有被转换的数据 if(values==null||values.length==0){ return null; } //得到被转换的数据 String data = values[0]; if(toClass==java.util.Date.class){ try { return sdf.parse(data); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); return null; } } return null; } @Override //第一个参数是OGNL上下文,第二个参数是被转换的数据 public String convertToString(Map context, Object o) { //判断是不是Date类型的实例 if(o instanceof Date){ Date d = (Date) o; //把Date转换为字符串 sdf.format(d); } return null; } }
这样,我们的类型转换器就实现了。
下面我们就可以配置需要类型转换的数据了。
有两种方式,一种是局部配置,写在bean包下
#局部的类型转换器,文件名的命名规则:javabean名称-conversion.properties #键是字段名,值是类型转换器的类路径 birthday=com.qianfeng.web.converter.MyConverter
只要包下的birthday属性可以转换。
第二种方式,全局配置文件,写在src文件下
# 定义全局的类型转换器,文件的命名规则是xwork-conversion.properties java.util.Date=com.qianfeng.web.converter.MyConverter
Date形式的数据都可以转换了。
结果图:
数据库中
数据类型转换完成。
相关文章推荐
- 数据库Date数据类型在页面展示时如何数据类型转换成String类型
- struts2页面上double类型的数据转换成整数
- OAF FlexField中数据库与页面的前后台数据类型转换
- 怎样解决thephile中的数据库由于排序造成的问题:对 text 数据类型不支持代码页转换。从: 1252 到: 936
- 使用ASP.NET AJAX异步调用Web Service和页面中的类方法(6):服务器端和客户端数据类型的自动转换:复杂类型
- 使用ASP.NET AJAX异步调用Web Service和页面中的类方法(9):服务器端和客户端数据类型的自动转换:DataTable和DataSet
- 数据库 数据类型转换
- 使用ASP.NET AJAX异步调用Web Service和页面中的类方法(7):服务器端和客户端数据类型的自动转换:泛型集合类型
- 读取数据库(SQL 、Access)、数据类型转换(Convert.Tostring)、数据库链接
- Struts2中从数据库中取数据到页面显示的常用方法
- VA利用反射进行数据库的读取免数据类型转换
- 使用ASP.NET AJAX异步调用Web Service和页面中的类方法:服务器端和客户端数据类型的自动转换:复杂类型
- 使用ASP.NET AJAX异步调用Web Service和页面中的类方法(5):服务器端和客户端数据类型的自动转换:基本类型和枚举类型
- 使用ASP.NET AJAX异步调用Web Service和页面中的类方法(6):服务器端和客户端数据类型的自动转换:复杂类型
- jquery里面调用getjson方法,将list类型转换为json格式数据,在页面迭代显示
- 如何将页面日期的String类型转换成SQL日期类型并写入数据库?
- 怎么转换数据库float类型的数据
- 使用ASP.NET AJAX异步调用Web Service和页面中的类方法(9):服务器端和客户端数据类型的自动转换:DataTable和DataSet
- Sql 数据库转换数据类型
- Struts2 Chater 4&5 Struts2中的验证输入和数据类型的转换