VoToucher
VoToucher
package com.isoftstone.pcis.policy.common.utils; import com.isoftstone.pcis.policy.common.context.Operator; import java.util.Date; import org.apache.commons.beanutils.PropertyUtils; import org.apache.commons.lang.StringUtils; import org.apache.log4j.Logger; public class VoToucher { private static final Logger logger = Logger.getLogger(VoToucher.class); public static void touchOnCreate(Object vo, String modifyUser, Date modifyTime) { try { PropertyUtils.setProperty(vo, "CCrtCde", modifyUser); PropertyUtils.setProperty(vo, "CUpdCde", modifyUser); PropertyUtils.setProperty(vo, "TCrtTm", modifyTime); PropertyUtils.setProperty(vo, "TUpdTm", modifyTime); } catch (Exception e) { logger.error("设置vo操作人/时间出错:" + vo.getClass().getName() + e.getMessage()); } } public static void touchOnCreate(Object vo, String modifyUser) { touchOnCreate(vo, modifyUser, new Date()); } public static void touchOnCreate(Object vo, Date modifyTime) { touchOnCreate(vo, Operator.getCurrentOperatorCde(), modifyTime); } public static void touchOnCreate(Object vo) { touchOnCreate(vo, Operator.getCurrentOperatorCde(), new Date()); } public static void touch(Object vo, String modifyUser, Date modifyTime) { try { String crtCde = (String)PropertyUtils.getProperty(vo, "CCrtCde"); Date crtTm = (Date)PropertyUtils.getProperty(vo, "TCrtTm"); if (StringUtils.isEmpty(crtCde)) { PropertyUtils.setProperty(vo, "CCrtCde", modifyUser); } if (crtTm == null) { PropertyUtils.setProperty(vo, "TCrtTm", modifyTime); } PropertyUtils.setProperty(vo, "CUpdCde", modifyUser); PropertyUtils.setProperty(vo, "TUpdTm", modifyTime); } catch (Exception e) { logger.error("更新vo操作人/时间出错:" + vo.getClass().getName() + e.getMessage()); } } public static void touch(Object vo, String modifyUser) { touch(vo, modifyUser, new Date()); } public static void touch(Object vo, Date modifyTime) { touch(vo, Operator.getCurrentOperatorCde(), modifyTime); } public static void touch(Object vo) { touch(vo, Operator.getCurrentOperatorCde(), new Date()); } public static void clearTouch(Object vo) { try { PropertyUtils.setProperty(vo, "CCrtCde", null); PropertyUtils.setProperty(vo, "TCrtTm", null); PropertyUtils.setProperty(vo, "CUpdCde", null); PropertyUtils.setProperty(vo, "TUpdTm", null); } catch (Exception e) { logger.error("清空vo操作人/时间出错:" + vo.getClass().getName() + e.getMessage()); } } }
VoToucher的更多相关文章
随机推荐
- ArcGis Javascript API (V3.6)加载天地图
Arcgis的Javascript api开发很活跃,不知不觉都发布了3.6的版本了.该版本基于dojo 1.8.3开发的. 从dojo 1.8开始,AMD机制用得越来越多了,而且require([& ...
- win8 iis安装及网站发布
win8 iis安装及网站发布 系统:win8 环境:vs2012 一:安装IIS 比较win7的安装来说,多选了几个钩钩,不然会报错,偶就遇到这样的错误. 控制面板->程序和功能->启动 ...
- C#分页类
using System.Linq; using System.Collections.Generic; namespace CommonLibrary { public class PagedLis ...
- MVC项目中应用富文本编辑器UEditor中的几个坑
UEditor:百度出品 官网连接:http://ueditor.baidu.com/website/ 错误现象:在官网上复制到本地后,上传图片功能不能用, 控制台提示:“请求后台配置项http错误, ...
- UVa 10815 Andy's First Dictionary
感觉这道题要比之前几个字符串处理的题目难度要大了一些. 题目大意:给若干行字符串,提取出所有单词并去掉重复的,最后按字典顺序输出. 对于输入大致有两种思路,一种是逐个读入字符,遇到字母的话就放到wor ...
- LA 3905 Meteor
给出一些点的初始位置(x, y)及速度(a, b)和一个矩形框,求能同时出现在矩形框内部的点数的最大值. 把每个点进出矩形的时刻分别看做一个事件,则每个点可能对应两个事件,进入事件和离开事件. 按这些 ...
- scala学习笔记(6):闭包
到本章这里,所有函数文本的例子仅参考了传入的参数.例如,(x: Int) => x > 0里,函数体用到的唯一变量,x > 0,是x,被定义为函数参数.然而也可以参考定义在其它地方的 ...
- T-SQL备忘(2):聚合函数运算和NULL
我们看表的数据: 而select AVG(Age) from Member1的结果为27.自己算一下就知道136/6 =22.666.而不是27,因此知道实际上Age为NULL的行没有参与运算.即: ...
- JAVA虚拟机内存分配与回收机制
Java虚拟机(Java Virtual Machine) 简称JVM Java虚拟机是一个想象中的机器,在实际的计算机上通过软件模拟来实现.Java虚拟机有自己想象中的硬件,如处理器.堆栈.寄存器等 ...
- AJax学习一
1.Ajax的准备工作,就是要先准备好服务器环境. 这边可以有好几种方式,例如服务器工具: http://www.php100.com/html/plugin/ser/2013/0905/91.htm ...