IMPL方法实现

//  这个方法是通过ID修改数据

如果得到结果大于0 表明结果有重复

如果得到结果小于0 表明结果正确

@Override
public boolean checkVersion(Integer id, Integer verString,String positionNum) {
// TODO Auto-generated method stub
//
// return this.etlextractvalueIDao.getEm().createQuery("from Etlextractposition where id!=?1 and versionNum=?2").setParameter(1, id)
// .setParameter(2, verString).getResultList().size()>0?true:false;
List list = this.etlextractpositionIDao.query("from Etlextractposition e where e.id!='"+id+"' and e.versionNum= '"+verString+"' and positionNum= '"+positionNum+"'");
if(list.size()>0){
System.out.println(list.size());
return true;
}else{
return false;
}
}

//  这个方法是通过条件插入数据

如果得到结果大于0 表明结果有重复

如果得到结果小于0 表明结果正确

@Override
public boolean checkVersion2(Integer verString,String positionNum){
List list = this.etlextractpositionIDao.query("from Etlextractposition e where e.versionNum= '"+verString+"' and positionNum= '"+positionNum+"'");
// .query("from LcUser l where l.realnameLc='"+name+"' and l.idLc != '" +id+ "'");
if(list.size()>0){
System.out.println(list.size());
return true;
}else{
return false;
}
}

ACTION 中方法调用

/*
* 添加一条数据方法
*/
public void AddEtlExtractPositionInfo(){
int code = Integer.parseInt(get("code").toString());
this.getmenu(code, this.getRequest());
System.out.println("AddEtlExtractPositionInfo code=--->"+code);

Etlextractposition ep = new Etlextractposition();
// this.copyPropertiesToBean(ep);
// String id = entity.getId().toString();
// System.out.println("id---->"+ id);
// String versionString = entity.getVersionNum().toString();
// System.out.println("versionString---->"+ versionString);

// entity.setId()
// entity.setPositionNum(get("positionNum")!= null?get("positionNum").toString():null);
// entity.setClasstype(get("classtype")!= null?Integer.parseInt(get("classtype").toString()):null);
// entity.setVersionNum(get("versionNum")!= null?Integer.parseInt(get("versionNum").toString()):null);
// entity.setOrderNum(get("orderNum")!= null?Integer.parseInt(get("orderNum").toString()):null);
// entity.setType(get("type")!=null?Integer.parseInt(get("type").toString()):null);
// entity.setMeth(get("meth")!=null?Integer.parseInt(get("meth").toString()):null);

// StringBuffer sBuffer = new StringBuffer("");
Integer verString = Integer.parseInt(get("versionNum").toString());
String positionNum = get("positionNum").toString();

if(this.etlService.checkVersion2(verString,positionNum)){
out.print("<script>alert('添加失败,位置信息不可重复!');window.history.go(-1);</script>");
}else{
ep.setPositionNum(get("positionNum").toString());
ep.setClasstype(get("classtype")!= ""?Integer.parseInt(get("classtype").toString()):null);
ep.setVersionNum(get("versionNum")!= ""?Integer.parseInt(get("versionNum").toString()):null);
ep.setOrderNum(get("orderNum")!= ""?Integer.parseInt(get("orderNum").toString()):null);
ep.setType(get("type")!=""?Integer.parseInt(get("type").toString()):null);
ep.setMeth(get("meth")!=""?Integer.parseInt(get("meth").toString()):null);

if(ep != null || !("".equals(ep))){
this.EtlextractpositionDao.insert(ep);
out.print("<script>alert('添加成功!');if(window!=parent){parent.document.getElementById('popCloseBox').click();" +
"parent.frames['ovfirame'].location='../CheckAction/ListEtlExtractPositionOfAll.action?code="+code+"'}; </script>");
}else{
out.print("<script>alert('添加失败!');window.history.go(-1);</script>");
}
}
}

/*
* 通过ID修改提取位置表信息
*/
public void ModifyExtractPositionById(){
int code = Integer.parseInt(get("code").toString());
Integer id = Integer.parseInt(get("id").toString());
Integer verString = Integer.parseInt(get("versionNum").toString());
String positionNum = get("positionNum").toString();

System.out.println("checkVersion--》 ");
System.out.println("checkVersion--》 "+id);
System.out.println("checkVersion--》 "+verString);
System.out.println("checkVersion--》 "+positionNum);

if(this.etlService.checkVersion(id,verString,positionNum)){
System.out.println("checkVersion--》2 ");
System.out.println("checkVersion--》2 "+id);
System.out.println("checkVersion--》2 "+verString);
System.out.println("checkVersion--》2 "+positionNum);
out.print("<script>alert('添加失败,位置信息不可重复!');window.history.go(-1);</script>");
out.close();
}else{
System.out.println("checkVersion--》3 ");
System.out.println("checkVersion--》3 "+id);
System.out.println("checkVersion--》3 "+verString);

// 获得ID 查处出实体
Etlextractposition ep = this.etlService.QueryExtractPositionById(id.toString());
// ep.setId(get("id"));
// 获得页面更新的数据显示在页面上
ep.setPositionNum(get("positionNum").toString());
ep.setClasstype(get("classtype")!= ""?Integer.parseInt(get("classtype").toString()):null);
ep.setVersionNum(get("versionNum")!= ""?Integer.parseInt(get("versionNum").toString()):null);
ep.setOrderNum(get("orderNum")!= ""?Integer.parseInt(get("orderNum").toString()):null);
ep.setType(get("type")!=""?Integer.parseInt(get("type").toString()):null);
ep.setMeth(get("meth")!=""?Integer.parseInt(get("meth").toString()):null);

// ep.setType(get("type")!=null?Integer.parseInt(get("type").toString()):null);
// ep.setType(get("type")!=null?Integer.parseInt(get("type").toString()):0);
// ep.setMeth(get("meth")!=""?Integer.parseInt(get("meth").toString()):0);
// ep.setMeth(get("meth")!=""?Integer.parseInt(get("meth").toString()):null);

if(ep.getId() != null){
this.EtlextractpositionDao.update(ep);
out.print("<script>alert('保存成功!');if(window!=parent){parent.document.getElementById('popCloseBox').click();" +
"parent.frames['ovfirame'].location='../CheckAction/ListEtlExtractPositionOfAll.action?code="+code+"'}; </script>");
}else{
out.print("<script>alert('保存失败!请重新输入');window.history.go(-1);</script>");
}

}
// this.etlService.checkVersion(id,verString)

// String positionNum = get("positionNum").toString();
//
// System.out.println("ModifyExtractPositionById id=--->"+id);
// System.out.println("ModifyExtractPositionById code=--->"+code);
// Etlextractposition ep = new Etlextractposition();
// ep = this.etlService.QueryExtractPositionById(id);
//// this.copyPropertiesToBean(ep);
// if(get("id").toString()!="" || !("".equals(get("id").toString()))){
// ep.setId(Integer.parseInt(get("id").toString()));
// System.out.println(get("id").toString());
// }
// if(get("positionNum").toString()!="" || !("".equals(get("positionNum").toString()))){
// ep.setPositionNum(get("positionNum").toString());
// System.out.println(get("positionNum").toString());
// }
// if(get("classtype").toString()!="" || !("".equals(get("classtype").toString()))){
// ep.setClasstype(Integer.parseInt(get("classtype").toString()));
// }
// if(get("versionNum").toString()!="" || !("".equals(get("versionNum").toString()))){
// ep.setVersionNum(Integer.parseInt(get("versionNum").toString()));
// }
// if(get("orderNum").toString()!="" ||!( "".equals(get("orderNum").toString()))){
// ep.setOrderNum(Integer.parseInt(get("orderNum").toString()));
// }
// if(get("type").toString()!="" || !("".equals(get("type").toString()))){
// ep.setType(Integer.parseInt(get("type").toString()));
// System.out.println(get("type").toString());
// }
// if(get("meth").toString()!="" || !("".equals(get("meth").toString()))){
// ep.setMeth(Integer.parseInt(get("meth").toString()));
// }
}

唯一性校验 impl 和 action的更多相关文章

  1. 使用AJAX实现用户名的唯一性校验(注册界面)-JAVA(新手)

    (1)实现用户名的唯一性校验 所需要准备的: Servlet 注册界面的JSP 接口和实现类 所需要的接口和实现类: 接口: /* * 用户注册 * 账号的唯一性校验,需要传参(username) * ...

  2. struts2:数据校验,通过Action中的validate()方法实现校验,图解

    根据输入校验的处理场所的不同,可以将输入校验分为客户端校验和服务器端校验两种.服务器端验证目前有两种方式: 第一种 Struts2中提供了一个com.opensymphony.xwork2.Valid ...

  3. struts2:数据校验,通过Action中的validate()方法实现校验(续:多业务方法时的不同验证处理)

    前文:struts2:数据校验,通过Action中的validate()方法实现校验,图解 如果定义的Action中存在多个逻辑处理方法,且不同的处理逻辑可能需要不同的校验规则,在这种情况下,就需要通 ...

  4. C#实现请求唯一性校验支持高并发

    使用场景描述: 网络请求中经常会遇到发送的请求,服务端响应是成功的,但是返回的时候出现网络故障,导致客户端无法接收到请求结果,那么客户端程序可能认为判断为网络故障,而重复发送同一个请求.当然如果接口中 ...

  5. SQL 建立多个字段唯一性校验

    由于在做压力测试,同一时间占用的问题. 两个用户同时下同一时间的订单,需要增加校验,第一个能保存的用户保存,第二个就不能让保存了. 问题是通过代码,怎么都做不到毫秒级校验,所以解决办法就只能是通过数据 ...

  6. Laravel 校验规则之字段值唯一性校验

    版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[+] laravel validator unique 'name' => 'required|unique:test,disp ...

  7. struts_20_对Action中所有方法、某一个方法进行输入校验(基于XML配置方式实现输入校验)

    第01步:导包 第02步:配置web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app ...

  8. struts2视频学习笔记 22-23(基于XML配置方式实现对action的所有方法及部分方法进行校验)

    课时22 基于XML配置方式实现对action的所有方法进行校验   使用基于XML配置方式实现输入校验时,Action也需要继承ActionSupport,并且提供校验文件,校验文件和action类 ...

  9. Struts2笔记——Action校验器

    在struts2中,我们可以实现对action的所有方法进行校验或者对action的指定方法进行校验.  对于输入校验struts2提供了两种实现方法: 1.采用手工编写代码实现. 2.基于XML配置 ...

随机推荐

  1. xtu summer individual 1 C - Design the city

    C - Design the city Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%lld & %llu D ...

  2. BNU 13174 Substring Frequency

    3C. Substring Frequency Time Limit: 1000ms Memory Limit: 32768KB 64-bit integer IO format: %lld      ...

  3. PTA 02-线性结构3 Reversing Linked List (25分)

    题目地址 https://pta.patest.cn/pta/test/16/exam/4/question/664 5-2 Reversing Linked List   (25分) Given a ...

  4. mysql与时间有关的查询

    date(str)函数可以返回str中形如"1997-05-26"格式的日期,str要是合法的日期的表达式,如2008-08-08 22:20:46 时间是可以比较大小的,例如: ...

  5. 蓝桥杯 算法训练 最短路 [ 最短路 bellman ]

    传送门   算法训练 最短路   时间限制:1.0s   内存限制:256.0MB     锦囊1   锦囊2   锦囊3   问题描述 给定一个n个顶点,m条边的有向图(其中某些边权可能为负,但保证 ...

  6. CPM、CPC、CPA、PFP、CPS、CPL、CPR介绍

    一个网络媒体(网站)会包含有数十个甚至成千上万个页面,网络广告所投放的位置和价格 就牵涉到特定的页面以及浏览人数的多寡.这好比平面媒体(如报纸)的“版位”.“发行 量”,或者电波媒体(如电视)的“时段 ...

  7. MySQL性能优化的21个最佳实践 和 mysql使用索引【转载】

    今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我 们程序员需要去关注的事情.当我们去设计数据库表结构,对操作数 ...

  8. CDN是什么与CDN加速的原理

    CDN是什么 CDN全称:Content Delivery Network或Content Ddistribute Network,即内容分发网络 CDN设计思路 避让:尽可能避开互联网上有可能影响数 ...

  9. socket的bind函数是不是只能绑定本地IP,不能绑定外网IP么?

    参考: https://bbs.csdn.net/topics/391024376 别瞎猜测. 所谓bind,就是指绑定本地接受端口. 指定ip,是为了分辨多ip主机. --------------- ...

  10. Linux 快照

    10个方法助你轻松完成Linux系统恢复 提交 我的留言 加载中 已留言 这也就是为什么系统恢复功能会让人感觉如此神奇.你可以很快地重新回到工作中去,就像什么事情都没有发生一样,也不用去管造成系统故障 ...