当前位置: 首页 > news >正文

网站域名备案注销销售平台建设方案

网站域名备案注销,销售平台建设方案,注册域名卖钱很暴利吗,网页制作与设计自考前言 在实战开发中#xff0c;数据校验也是十分重要的环节之一#xff0c;数据校验大体分为三部分#xff1a; 前端校验后端校验数据库校验 本文讲解如何在后端控制端进行表单校验的工作 案例实现 在进行项目开发的时候,前端(jquery-validate),后端,数据库都要进行相关的数据…前言 在实战开发中数据校验也是十分重要的环节之一数据校验大体分为三部分 前端校验后端校验数据库校验 本文讲解如何在后端控制端进行表单校验的工作 案例实现 在进行项目开发的时候,前端(jquery-validate),后端,数据库都要进行相关的数据校验,springmvc也支持校验,但是没有进行具体的实现,所以要添加hibernate的依赖来完成校验 第一步添加依赖 pom.xml dependencygroupIdjavax.validation/groupIdartifactIdvalidation-api/artifactIdversion1.1.0.Final/version /dependencydependencygroupIdorg.hibernate/groupIdartifactIdhibernate-validator/artifactIdversion5.1.3.Final/version /dependency 第二步创建表单提交页面和实体类 实体类Transaction 在相关的实体类中,根据需要加入校验规则,它支持email,日期等内置校验规则 public class Transaction {// 产品编号NotNull // 不能为空private Long productId;// 用户编号NotNull // 不能为空private Long userId;// 交易日期Future // 只能是将来的日期DateTimeFormat(pattern yyyy-MM-dd) // 日期格式化转换NotNull // 不能为空private Date date;// 价格NotNull // 不能为空DecimalMin(value 0.1) // 最小值0.1元private Double price;// 数量Min(1) // 最小值为1Max(100) // 最大值NotNull // 不能为空private Integer quantity;// 交易金额NotNull // 不能为空DecimalMax(500000.00) // 最大金额为5万元DecimalMin(1.00) // 最小交易金额1元private Double amount;// 邮件Pattern(// 正则式regexp ^([a-zA-Z0-9]*[-_]?[a-zA-Z0-9])* ([a-zA-Z0-9]*[-_]?[a-zA-Z0-9])[\\.][A-Za-z]{2,3}([\\.][A-Za-z]{2})?$,// 自定义消息提示message 不符合邮件格式)private String email;// 备注Size(min 0, max 256) // 0到255个字符private String note;public Long getProductId() {return productId;}public void setProductId(Long productId) {this.productId productId;}public Long getUserId() {return userId;}public void setUserId(Long userId) {this.userId userId;}public Date getDate() {return date;}public void setDate(Date date) {this.date date;}public Double getPrice() {return price;}public void setPrice(Double price) {this.price price;}public Integer getQuantity() {return quantity;}public void setQuantity(Integer quantity) {this.quantity quantity;}public Double getAmount() {return amount;}public void setAmount(Double amount) {this.amount amount;}public String getEmail() {return email;}public void setEmail(String email) {this.email email;}public String getNote() {return note;}public void setNote(String note) {this.note note;}} JSP页面validate.jsp % page languagejava contentTypetext/html; charsetUTF-8pageEncodingUTF-8% !DOCTYPE html PUBLIC -//W3C//DTD HTML 4.01 Transitional//ENhttp://www.w3.org/TR/html4/loose.dtd htmlheadmeta http-equivContent-Type contenttext/html; charsetUTF-8titlevalidate/title/headbodyform action /validate/vali.do!-- form action ./validate/validator.do--tabletrtd产品编号/tdtdinput nameproductId idproductId//td/trtrtd用户编号/tdtdinput nameuserId iduserId//td/trtrtd交易日期/tdtdinput namedate iddate//td/trtrtd价格/tdtdinput nameprice idprice//td/trtrtd数量/tdtdinput namequantity idquantity/ /td/trtrtd交易金额/tdtdinput nameamount idamount//td/trtrtd用户邮件/tdtdinput nameemail idemail//td/trtrtd备注/tdtdtextarea idnote namenote cols20 rows5/textarea/td/trtrtd colspan2 alignright input typesubmit value提交/ /tr/tableform/body /html 第三步编写校验器  TransactionValidator package com.csx.validate;import com.csx.entity.Transaction; import org.springframework.validation.Errors; import org.springframework.validation.Validator;public class TransactionValidator implements Validator {//表示判断是否是指定被校验的类,如例子当中的Transaction,如果是,会返回true,继续进行校验Overridepublic boolean supports(Class? aClass) {//如果是Transaction类,返回true,进行验证return Transaction.class.equals(aClass);}//编写校验规则Overridepublic void validate(Object obj, Errors errors) {Transaction tran (Transaction) obj;//求总金额和单价及数量的差额double dis tran.getAmount() - (tran.getQuantity() * tran.getPrice());if (Math.abs(dis) 0.01) {errors.rejectValue(amount,null,交易金额有误,请检查);}} }第四步编写控制层  TransactionController RequestMapping(/validate) Controller public class TransactionController {RequestMapping(/vali)public ModelAndView addTran(Valid Transaction tran, Errors errors) {//判断是否有校验错误信息if (errors.hasErrors()) {ListFieldError list errors.getFieldErrors();for (FieldError f : list) {System.out.println(error Filed: f.getField() ,errorMsg: f.getDefaultMessage());}}return new ModelAndView(index);}//为当前控制器开启验证InitBinderpublic void initBinder(DataBinder binder) {binder.setValidator(new TransactionValidator());}}使用hasErrors判断是否有校验错误如果有,使用getFieldErrors()获取错误集合,使用getField()获取错误字段,使用getDefaultMessage获取错误信息如果违反了定义的校验规则,则会报错 测试 表单提交页面 故意将日期和交易金额填写错误并提交 后台控制台显示数据错误提示 箭头指向的第一个是date即日期格式错误箭头指向的第二个表示交易金额错误为我们自定义的提示信息  总结 数据校验在实际开发中很重要而仅仅做了前端校验还是不安全的因此我们还可以进行后台的数据校验。
http://www.hkea.cn/news/14268379/

相关文章:

  • 大良营销网站建设好么深圳网站建设深圳网络公司
  • 建手机网站要多少钱信誉好的丹徒网站建设
  • 怎样建设一个自己的网站首页php p2p网站建设
  • 网站开发技术语言做网站什么服务器好
  • 长沙网站开发哪家好网站彩票做号
  • 网站做招聘需要什么资质长安网站建设流程
  • 门户网站后台管理模板网站建设 技术架构
  • 建设一个网站需要哪些材料国内最新新闻事件今天
  • 长沙微网站建设公司权重提升
  • 上海网站备案信息注销公司官网如何搭建
  • 上传网站软件dnf卖飞机的网站怎么做的
  • 影院网站模板页面设计器翻译成英文
  • 自由体网站建设vr全景正规的关键词优化软件
  • 做流量网站挂广告还能挣钱吗网站建设需要的项目
  • 学生求职网站的需求分析怎么做个人网页背景图片
  • 制作 网站 盈利flash同视频做网站
  • 当地建设局网站营销型和展示型网站
  • 重庆市建设岗培中心网站网站建设费用说明
  • 重庆建设网官网深圳债务优化公司
  • 电商网站开发设计文档wordpress 调用导航栏
  • wordpress站群做京挑客的网站有哪些
  • 建网站义乌外贸网站推广优化
  • 五大类型网站输入文字生成图片app
  • 浙江省住房和城乡建设厅网站查询wordpress personal主题
  • 网站开发应如何入账网站后台管理的超链接怎么做
  • 永清县建设局网站网上哪里可以注册公司
  • 安徽做网站哪家好seo入门书籍推荐
  • 安徽省建设干校网站做商品网站数据库有哪些内容
  • 网站设计创意方案郫都区规划建设局网站
  • 网站集约化后如何建设网站负责人核验照