页面输入的数据格式转换类:BaseAction(经常使用于Struts框架中)
在我们接收页面传来的数据时,这些数据都是以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框架中)的更多相关文章
- struts框架中OGNL表达式的使用之jsp页面获取action中的属性值
在jsp页面中获取action中的值: 1.写一个action类OgnlAction类: 需要注意的地方: 如果在aciton中直接使用ognl表达式,将值存储的值栈中,是不能通过跳转将值传到jsp页 ...
- 完善GDAL与OpenCV间的数据格式转换与影像分块读写
本博客为原创内容,未经博主允许禁止转载,商用,谢谢. 一.前言 关于GDAL与openCV间的数据格式转换,在我之前的博客中已有简要说明,这里,由于最近工作上经常用到openCV里的函数进行图像处理, ...
- (转载)OC学习篇之---Foundation框架中的NSDirctionary类以及NSMutableDirctionary类
昨天学习了Foundation框架中NSArray类和NSMutableArray类,今天来看一下Foundation框架中的NSDirctionary类,NSMutableDirctionary类, ...
- C#日期转换类
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Te ...
- php 网站中文简体繁体转换类
php 网站中文简体繁体转换类 <?php /* * define zh convert functions * 2017-4-28 use str_replace for speed * zh ...
- JavaBean组件<jsp:forward>动作<jsp:param>动作登录页面输入用户名和密码,然后进入检查页面判断是否符合要求,符合要求跳转到成功界面,不符合要求返回登录界面,显示错误信息。
JavaBean组件 JavaBean组件实际是一种java类.通过封装属性和方法成为具有某种功能或者处理某个业务的对象. 特点:1.实现代码的重复利用.2.容易编写和维护.3.jsp页面调用方便. ...
- DataTable与DTO对象的简易转换类
在web开发过程中,有时候为了数据传输的方便,比如:后台需要更新前端的ViewModel,此时我们定义一个与前端ViewModel结构一样的DTO对象,从数据层获取数据后,将数据封装成DTO然后序列化 ...
- 【转】【WPF】WriteableBitmap应用及图片数据格式转换
使用 WriteableBitmap 类基于每个框架来更新和呈现位图.这对于生成算法内容(如分形图像)和数据可视化(如音乐可视化工具)很有用. WriteableBitmap 类使用两个缓冲区.“后台 ...
- zw版【转发·台湾nvp系列Delphi例程】Delphi 使用 HALCON库件COM控件数据格式转换
zw版[转发·台湾nvp系列Delphi例程]Delphi 使用 HALCON库件COM控件数据格式转换 Delphi 使用 HALCON库件COM控件数据格式转换,与IHObjectX接口有关 va ...
随机推荐
- centos命令自动补全增强
CentOS默认没有像Ubuntu系统一样命令参数补全功能,例如yum install无法补全.通过安装bash-completion安装命令参数补全增强. CentOS6 默认情况下,CentOS6 ...
- css伪类的说明以及使用(css事件)
CSS伪类的使用(css事件) 转载请注明源地址:http://www.cnblogs.com/funnyzpc/p/7670959.html 之前有开发开发App的时候,有同事问我那个列表的条目按下 ...
- 通过Xshell连接CentOS虚拟机
1.通过"setup"配置网络ip(CentOS7不支持setup配置) 2.通过"service network restart"来重启网络服务 3.&quo ...
- [转]SQL Server为啥使用了这么多内存?
原文地址:http://support.microsoft.com/gp/anxin_techtip6/zh-cn SQL Server为啥使用了这么多内存? SQL Server的用户,常常会发现S ...
- Python——正则表达式特殊符号及用法
由于正则表达式的内容比较多,所以单独写成一系列文章,主要内容是根据小甲鱼所讲的内容综合一下正则表达式的笔记. 贴上小甲鱼的<Python3 如何优雅地使用正则表达式>系列可观看的博客地址: ...
- 使用dropwizard(6)-国际化-easy-i18n
前言 Dropwizard官方文档并没有提供国际化的模块,所以只能自己加.Spring的MessageResource用的很顺手,所以copy过来. Easy i18n 在整合Dropwizard的时 ...
- [转] 深刻理解Python中的元类(metaclass)
非常详细的一篇深入讲解Python中metaclass的文章,感谢伯乐在线-bigship翻译及作者,转载收藏. 本文由 伯乐在线 - bigship 翻译.未经许可,禁止转载!英文出处:stacko ...
- Lucene入门-安装和运行Demo程序
Lucene版本:7.1 一.下载安装包 https://lucene.apache.org/core/downloads.html 二.安装 把4个必备jar包和路径添加到CLASSPATH \lu ...
- 【微服务】之二:从零开始,轻松搞定SpringCloud微服务系列--注册中心(一)
微服务体系,有效解决项目庞大.互相依赖的问题.目前SpringCloud体系有强大的一整套针对微服务的解决方案.本文中,重点对微服务体系中的服务发现注册中心进行详细说明.本篇中的注册中心,采用Netf ...
- python并发编程之多进程二
一,multiprocessing模块介绍 python中的多线程无法利用多核优势,如果想要充分地使用多核CPU的资源(os.cpu_count()查看),在python中大部分情况需要使用多进程.P ...