在我们接收页面传来的数据时,这些数据都是以String类型接收的,所以要进行数据格式转换,这时候就能够统一为它们进行转换,并且在处理这些数据的类中能够继承ActionSupport类,然后让每个接收数据并做业务处理的action类继承该类,并调用该类中的数据格式转换方法对接收的数据进行处理。

部分关键代码例如以下:

/**

 * 超类BaseAction 数据格式转换

 * @author 七录斋

 *

 */

public class BaseAction extends ActionSupport{





public void write(Object obj){

HttpServletResponse response = ServletActionContext.getResponse();

response.setContentType("text/html;charset=utf-8");

try {

response.getWriter().print(obj);

} catch (IOException e) {

e.printStackTrace();

}

}



/**

* 把对应的数据转换成整型数据

* @param value String类型  要转换的数据

* @return 整型  转换失败时返回null

*/

public Integer $int(String value){

try {

return Integer.parseInt(ServletActionContext.getRequest()

.getParameter(value));

} catch (Exception e) {

e.printStackTrace();

}

return null;

}



/**

* 把对应的数据转换成Double类型的数据

* @param value String类型  要转换的数据

* @return Double类型  转换失败时返回null

*/

public Double $double(String value){

try {

return Double.parseDouble(ServletActionContext.getRequest()

.getParameter(value));

} catch (Exception e) {

e.printStackTrace();

}

return null;

}



/**

* 把对应的数据转换成String类型的数据

* @param value String类型  要转换的数据

* @return String类型  转换失败时返回null

*/

public String $str(String value){

try {

return ServletActionContext.getRequest().getParameter(value);

} catch (Exception e) {

e.printStackTrace();

}

return null;

}



/**

* 把对应的数据转换成BigDecimal类型的数据

* @param value String类型  要转换的数据

* @return BigDecimal类型  转换失败时返回null

*/

public BigDecimal $bigDecimal(String value){

try {

return new BigDecimal(ServletActionContext.getRequest()

.getParameter(value));

} catch (Exception e) {

e.printStackTrace();

}

return null;

}



/**

* 把对应的数据转换成Date类型的数据

* @param value String类型  要转换的数据

* @return Date类型  转换失败时返回null

*/

public Date $date(String value){

try {

return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")

.parse(ServletActionContext.getRequest().getParameter(value));

} catch (Exception e) {

try {

return new SimpleDateFormat("yyyy-MM-dd")

.parse(ServletActionContext.getRequest().getParameter(value));

} catch (Exception e2) {

e2.printStackTrace();

}

}

return null;

}



/**

* 把对应的数据转换成Time类型的数据

* @param value String类型  要转换的数据

* @return Time类型  转换失败时返回null

*/

public Time $time(String value){

try {

return new Time(new SimpleDateFormat("HH:mm:ss")

.parse(ServletActionContext.getRequest()

.getParameter(value)).getTime());

} catch (Exception e) {

e.printStackTrace();

}

return null;

}



/**

* 把对应的数据转换成Timestamp类型的数据

* @param value String类型  要转换的数据

* @return Timestamp类型  转换失败时返回null

*/

public Timestamp $timestamp(String value){

try {

return new Timestamp(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")

.parse(ServletActionContext.getRequest()

.getParameter(value)).getTime());

} catch (Exception e) {

e.printStackTrace();

}

return null;

}

}

页面输入的数据格式转换类:BaseAction(经常使用于Struts框架中)的更多相关文章

  1. struts框架中OGNL表达式的使用之jsp页面获取action中的属性值

    在jsp页面中获取action中的值: 1.写一个action类OgnlAction类: 需要注意的地方: 如果在aciton中直接使用ognl表达式,将值存储的值栈中,是不能通过跳转将值传到jsp页 ...

  2. 完善GDAL与OpenCV间的数据格式转换与影像分块读写

    本博客为原创内容,未经博主允许禁止转载,商用,谢谢. 一.前言 关于GDAL与openCV间的数据格式转换,在我之前的博客中已有简要说明,这里,由于最近工作上经常用到openCV里的函数进行图像处理, ...

  3. (转载)OC学习篇之---Foundation框架中的NSDirctionary类以及NSMutableDirctionary类

    昨天学习了Foundation框架中NSArray类和NSMutableArray类,今天来看一下Foundation框架中的NSDirctionary类,NSMutableDirctionary类, ...

  4. C#日期转换类

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Te ...

  5. php 网站中文简体繁体转换类

    php 网站中文简体繁体转换类 <?php /* * define zh convert functions * 2017-4-28 use str_replace for speed * zh ...

  6. JavaBean组件<jsp:forward>动作<jsp:param>动作登录页面输入用户名和密码,然后进入检查页面判断是否符合要求,符合要求跳转到成功界面,不符合要求返回登录界面,显示错误信息。

    JavaBean组件 JavaBean组件实际是一种java类.通过封装属性和方法成为具有某种功能或者处理某个业务的对象. 特点:1.实现代码的重复利用.2.容易编写和维护.3.jsp页面调用方便. ...

  7. DataTable与DTO对象的简易转换类

    在web开发过程中,有时候为了数据传输的方便,比如:后台需要更新前端的ViewModel,此时我们定义一个与前端ViewModel结构一样的DTO对象,从数据层获取数据后,将数据封装成DTO然后序列化 ...

  8. 【转】【WPF】WriteableBitmap应用及图片数据格式转换

    使用 WriteableBitmap 类基于每个框架来更新和呈现位图.这对于生成算法内容(如分形图像)和数据可视化(如音乐可视化工具)很有用. WriteableBitmap 类使用两个缓冲区.“后台 ...

  9. zw版【转发·台湾nvp系列Delphi例程】Delphi 使用 HALCON库件COM控件数据格式转换

    zw版[转发·台湾nvp系列Delphi例程]Delphi 使用 HALCON库件COM控件数据格式转换 Delphi 使用 HALCON库件COM控件数据格式转换,与IHObjectX接口有关 va ...

随机推荐

  1. jQuery选择器(内容过滤选择器)第四节

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/stri ...

  2. linux-mv

    linux-mv 主要用于文件或者目录的移动或者改动, 命令参数 -i:ruguo目标文件或者目录存在,提示是否覆盖目标文件或目录 -f:无论目标文件是否存在,直接覆盖,不提示, 有好多参数,自己可以 ...

  3. windows系统扩展C盘的工具推荐(解决了C盘和压缩卷不相邻无法扩展C盘问题)

    1.下载分区工具 “分区助手3.0中文版” 下载地址:http://www.33lc.com/soft/14880.html 2.下载下来是一个压缩包,解压后运行安装程序. 3.安装完成后按以下步骤执 ...

  4. C#保留小数位数的方法

    1.System.Globalization.NumberFormatInfo provider = new System.Globalization.NumberFormatInfo();provi ...

  5. Array类的Sort()方法

    刚复习了Array类的sort()方法, 这里列举几个常用的,和大家一起分享. Array类实现了数组中元素的冒泡排序.Sort()方法要求数组中的元素实现IComparable接口.如System. ...

  6. CentOS7.x系统根目录分区扩容

    说明:系统版本为 Linux version 3.10.0-327.el7.x86_64 step1. 查看现有磁盘信息,可以看出根分区有45G [root@DEV-CMDB-DB02 ~]# df ...

  7. .net core2 发送电子邮件封装

    在.net core2 如何发送电子邮件呢,我们选择使用自带的System.Net.Mail,下面我们将如何使用封装成一个函数,供大家参考. /// <summary> /// 发送电子邮 ...

  8. 原生js绑定和解绑事件,兼容IE,FF,chrome

    主要是最近项目中用到了原生的js 解绑和绑定 事件  然后今天研究了一下,其实问题不大,不过要注意不要把单词写错了,今天我就找了好久单词写错了. 需求:当鼠标移上去以后,给Select加载元素,接着解 ...

  9. Python中文

    在python中有两种默认的字符串:str和unicode.在Python中一定要注意区分"Unicode字符串"和"Unicode对象"的区别. 后面所有的& ...

  10. python 面对post分页爬虫

    分享一则对于网抓中面对post请求访问的页面或者在分页过程中需要post请求才可以访问的内容! 面的post请求的网址是不可以零参访问网址的,所以我们在网抓的过程中需要给请求传表单数据,下面看一下网页 ...