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

怎么从建设部网站下载规范如何创立个人网站

怎么从建设部网站下载规范,如何创立个人网站,做新房网站怎么弄,超酷 flash 网站【SpringMVC】拦截器JSR303的使用 1.1 什么是JSR3031.2 为什么使用JSR3031.3 常用注解1.4 Validated与Valid区别1.5 JSR快速入门1.5.2 配置校验规则# 1.5.3 入门案例二、拦截器2.1 什么是拦截器2.2 拦截器与过滤器2.3 应用场景2.4 拦截器快速入门2.5.拦截器链2.6登录案列权… 【SpringMVC】拦截器JSR303的使用 1.1 什么是JSR3031.2 为什么使用JSR3031.3 常用注解1.4 Validated与Valid区别1.5 JSR快速入门1.5.2 配置校验规则# 1.5.3 入门案例二、拦截器2.1 什么是拦截器2.2 拦截器与过滤器2.3 应用场景2.4 拦截器快速入门2.5.拦截器链2.6登录案列权限控制 1.1 什么是JSR303 JSR303是Java规范中定义的一套用于数据校验的标准也被称为Bean Validation。它提供了一组注解用于验证Java对象的属性值是否满足特定的约束条件。 1.2 为什么使用JSR303 使用JSR303可以在服务器端对用户提交的数据进行验证确保数据的合法性和有效性。它可以减少开发人员编写大量的校验逻辑代码提高开发效率并且可以在不同层次如控制器、服务层、DAO进行数据验证保证数据的一致性。 1.3 常用注解 常见的JSR303注解包括 NotNull验证对象不为null。 NotEmpty验证字符串、集合、数组不为空。 NotBlank验证字符串不为空并且长度必须大于0。 Size验证字符串、集合、数组的长度范围。 Min验证数字的最小值。 Max验证数字的最大值。 Pattern验证字符串是否匹配指定的正则表达式。 1.4 Validated与Valid区别 Valid是Java标准的注解用于触发对被注解对象的校验。它可以直接放在方法参数上或者作为Spring MVC中处理请求体参数校验的一部分。 Validated是Spring框架提供的注解与Valid类似但功能更加强大。它可以用于类、方法和方法参数级别的校验并且支持分组校验等高级特性。 1.5 JSR快速入门 1.5.1 导入依赖 在Maven项目中需要导入javax.validation相关的依赖。 !-- JSR303 -- hibernate.validator.version6.0.7.Final/hibernate.validator.version!-- JSR303 -- dependencygroupIdorg.hibernate/groupIdartifactIdhibernate-validator/artifactIdversion${hibernate.validator.version}/version /dependency1.5.2 配置校验规则 通过在实体类的字段上添加不同的JSR303注解定义校验规则。 在这里插入package com.niyin.biz.impl;import com.niyin.biz.tyBiz; import com.niyin.mapper.tyMapper; import com.niyin.model.ty; import com.niyin.utils.PageBean; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service;import java.util.List; import java.util.Map;Service public class tyBizImpl implements tyBiz {Autowiredprivate tyMapper tyMapper;Overridepublic int deleteByPrimaryKey(Integer tid) {return tyMapper.deleteByPrimaryKey(tid);}Overridepublic int insert(ty record) {return tyMapper.insert(record);}Overridepublic int insertSelective(ty record) {return tyMapper.insertSelective(record);}Overridepublic ty selectByPrimaryKey(Integer tid) {return tyMapper.selectByPrimaryKey(tid);}Overridepublic int updateByPrimaryKeySelective(ty record) {return tyMapper.updateByPrimaryKeySelective(record);}Overridepublic int updateByPrimaryKey(ty record) {return tyMapper.updateByPrimaryKey(record);}Overridepublic Listty selectByPager(ty t, PageBean pageBean) {return tyMapper.selectByPager(t);} } # 1.5.3 入门案例 在控制器中接收用户提交的数据并使用Validated注解进行数据校验。如果校验失败则返回错误信息给客户端。 RequestMapping(/valiAdd)public String valiAdd(Validated ty t, BindingResult result, HttpServletRequest req){ // 如果服务端验证不通过有错误if(result.hasErrors()){ // 服务端验证了实体类的多个属性多个属性都没有验证通过ListFieldError fieldErrors result.getFieldErrors();MapString,Object map new HashMap();for (FieldError fieldError : fieldErrors) { // 将多个属性的验证失败信息输送到控制台System.out.println(fieldError.getField() : fieldError.getDefaultMessage());map.put(fieldError.getField(),fieldError.getDefaultMessage());}req.setAttribute(errorMap,map);}else {this.tyBiz.insertSelective(t);return redirect:list;}return edit;}% page languagejava contentTypetext/html; charsetUTF-8pageEncodingUTF-8% !DOCTYPE html PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN http://www.w3.org/TR/html4/loose.dtd html headmeta http-equivContent-Type contenttext/html; charsetUTF-8title博客的编辑界面/title /head body form action${pageContext.request.contextPath }/clz/${empty ts ? valiAdd : edit} methodpostid:input typetext nametid value${ts.tid }span stylecolor: red;${errorMap.tid}/spanbrbname:input typetext nametname value${ts.tname }span stylecolor: red;${errorMap.tname}/spanbrprice:input typetext nametprice value${ts.tprice }span stylecolor: red;${errorMap.tprice}/spanbrinput typesubmit /form /body /html 二、拦截器 2.1 什么是拦截器 拦截器Interceptor是在Web应用程序中常用的一种技术用于在请求被处理前后进行拦截和处理。它可以在控制器和处理器之间进行预处理和后处理操作。 2.2 拦截器与过滤器 拦截器和过滤器都可以用于对请求进行处理但它们在使用方式和功能上有一些区别。过滤器是基于Servlet规范的可以对所有请求进行处理而拦截器是基于Spring MVC框架的只能对包含了拦截器配置的请求进行处理。 2.3 应用场景 拦截器可以应用在各种场景下常见的使用场景包括权限验证、日志记录、异常处理、缓存处理等。它可以对请求进行统一处理简化开发流程并提高代码的可维护性和重用性。 2.4 拦截器快速入门 2.4.1 入门案例 package com.niyin.interceptor;import org.springframework.web.servlet.HandlerInterceptor; import org.springframework.web.servlet.ModelAndView;import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;public class OneInterceptor implements HandlerInterceptor {Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {System.out.println(【OneInterceptor】preHandle...);return true;}Overridepublic void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {System.out.println(【OneInterceptor】postHandle...);}Overridepublic void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {System.out.println(【OneInterceptor】afterCompletion...);} }spring_mvc配置拦截器器 mvc:interceptors--bean classcom.niyin.interceptor.OneInterceptor/bean/mvc:interceptors--结论拦截器会根据preHandle()方法返回值进行拦截判断返回了一个true值。这个返回值表示该拦截器已经处理了当前的请求并且可以继续向下传递请求。如果返回false则表示该拦截器不处理当前请求请求将被终止。 2.5.拦截器链 如果多个拦截器能够对相同的请求进行拦截则多个拦截器会形成一个拦截器链主要理解拦截器链中各个拦截器的执行顺序。拦截器链中多个拦截器的执行顺序根拦截器的配置顺序有关先配置的先执行。 案例 package com.niyin.interceptor;import org.springframework.web.servlet.HandlerInterceptor; import org.springframework.web.servlet.ModelAndView;import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;public class TwoInterceptor implements HandlerInterceptor {Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {System.out.println(【TwoInterceptor】preHandle...);return true;}Overridepublic void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {System.out.println(【TwoInterceptor】postHandle...);}Overridepublic void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {System.out.println(【TwoInterceptor】afterCompletion...);} }spring_mvc mvc:interceptors!--2) 多拦截器拦截器链--mvc:interceptormvc:mapping path/**/bean classcom.niyin.interceptor.OneInterceptor//mvc:interceptormvc:interceptormvc:mapping path/clz/**/bean classcom.niyin.interceptor.TwoInterceptor//mvc:interceptor/mvc:interceptors2.6登录案列权限控制 package com.niyin.web;import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping;import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession;Controller public class LoginController {RequestMapping(/login)public String login(HttpServletRequest req){String uname req.getParameter(uname);HttpSession session req.getSession();if (zs.equals(uname)){session.setAttribute(uname,uname);}return redirect:/clz/list;}RequestMapping(/logout)public String logout(HttpServletRequest req){req.getSession().invalidate();return redirect:/clz/list;} }package com.niyin.interceptor;import org.springframework.web.servlet.HandlerInterceptor; import org.springframework.web.servlet.ModelAndView;import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;public class LoginInterceptor implements HandlerInterceptor {Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {System.out.println(【implements】preHandle...);StringBuffer url request.getRequestURL();if (url.indexOf(/login) 0 || url.indexOf(/logout) 0){// 如果是 登录、退出 中的一种return true;} // 代表不是登录也不是退出 // 除了登录、退出其他操作都需要判断是否 session 登录成功过String uname (String) request.getSession().getAttribute(uname);if (uname null || .equals(uname)){response.sendRedirect(/page/login);return false;}return true;}Overridepublic void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {}Overridepublic void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {} }Sping_mvc mvc:interceptorsbean classcom.niyin.interceptor.LoginInterceptor/bean/mvc:interceptorsjsp %--Created by IntelliJ IDEA.User: 林墨Date: 2023/9/12Time: 23:14To change this template use File | Settings | File Templates. --% % page contentTypetext/html;charsetUTF-8 languagejava % html headtitle登录界面/title /head body form action/login methodpost用户input nameunameinput typesubmit/form /body /html
文章转载自:
http://www.morning.jpzcq.cn.gov.cn.jpzcq.cn
http://www.morning.psyrz.cn.gov.cn.psyrz.cn
http://www.morning.wtxdp.cn.gov.cn.wtxdp.cn
http://www.morning.nlbw.cn.gov.cn.nlbw.cn
http://www.morning.rnkq.cn.gov.cn.rnkq.cn
http://www.morning.rltsx.cn.gov.cn.rltsx.cn
http://www.morning.tmnyj.cn.gov.cn.tmnyj.cn
http://www.morning.wqmpd.cn.gov.cn.wqmpd.cn
http://www.morning.rkdnm.cn.gov.cn.rkdnm.cn
http://www.morning.prprz.cn.gov.cn.prprz.cn
http://www.morning.xqndf.cn.gov.cn.xqndf.cn
http://www.morning.bgkk.cn.gov.cn.bgkk.cn
http://www.morning.bntfy.cn.gov.cn.bntfy.cn
http://www.morning.tssmk.cn.gov.cn.tssmk.cn
http://www.morning.wglhz.cn.gov.cn.wglhz.cn
http://www.morning.bloao.com.gov.cn.bloao.com
http://www.morning.sqqds.cn.gov.cn.sqqds.cn
http://www.morning.nfmtl.cn.gov.cn.nfmtl.cn
http://www.morning.ksgjn.cn.gov.cn.ksgjn.cn
http://www.morning.dlurfdo.cn.gov.cn.dlurfdo.cn
http://www.morning.grjh.cn.gov.cn.grjh.cn
http://www.morning.jpjxb.cn.gov.cn.jpjxb.cn
http://www.morning.rfpq.cn.gov.cn.rfpq.cn
http://www.morning.dkzrs.cn.gov.cn.dkzrs.cn
http://www.morning.mfbzr.cn.gov.cn.mfbzr.cn
http://www.morning.qcfcz.cn.gov.cn.qcfcz.cn
http://www.morning.yrmpr.cn.gov.cn.yrmpr.cn
http://www.morning.tqhpt.cn.gov.cn.tqhpt.cn
http://www.morning.wmmtl.cn.gov.cn.wmmtl.cn
http://www.morning.bpxmw.cn.gov.cn.bpxmw.cn
http://www.morning.nrchx.cn.gov.cn.nrchx.cn
http://www.morning.nxnrt.cn.gov.cn.nxnrt.cn
http://www.morning.txrkq.cn.gov.cn.txrkq.cn
http://www.morning.fjscr.cn.gov.cn.fjscr.cn
http://www.morning.rykn.cn.gov.cn.rykn.cn
http://www.morning.bpwfr.cn.gov.cn.bpwfr.cn
http://www.morning.klwxh.cn.gov.cn.klwxh.cn
http://www.morning.pdxqk.cn.gov.cn.pdxqk.cn
http://www.morning.qsswb.cn.gov.cn.qsswb.cn
http://www.morning.wfcqr.cn.gov.cn.wfcqr.cn
http://www.morning.gdgylp.com.gov.cn.gdgylp.com
http://www.morning.sypzg.cn.gov.cn.sypzg.cn
http://www.morning.lgpzq.cn.gov.cn.lgpzq.cn
http://www.morning.btqrz.cn.gov.cn.btqrz.cn
http://www.morning.wrlxt.cn.gov.cn.wrlxt.cn
http://www.morning.poapal.com.gov.cn.poapal.com
http://www.morning.rfgkf.cn.gov.cn.rfgkf.cn
http://www.morning.hnrdtz.com.gov.cn.hnrdtz.com
http://www.morning.jbxd.cn.gov.cn.jbxd.cn
http://www.morning.zmwzg.cn.gov.cn.zmwzg.cn
http://www.morning.tpyjr.cn.gov.cn.tpyjr.cn
http://www.morning.xqcbz.cn.gov.cn.xqcbz.cn
http://www.morning.xjwtq.cn.gov.cn.xjwtq.cn
http://www.morning.tjpmf.cn.gov.cn.tjpmf.cn
http://www.morning.lxctl.cn.gov.cn.lxctl.cn
http://www.morning.qcymf.cn.gov.cn.qcymf.cn
http://www.morning.tpyjr.cn.gov.cn.tpyjr.cn
http://www.morning.qcztm.cn.gov.cn.qcztm.cn
http://www.morning.zzhqs.cn.gov.cn.zzhqs.cn
http://www.morning.cdygl.com.gov.cn.cdygl.com
http://www.morning.qmncj.cn.gov.cn.qmncj.cn
http://www.morning.lmmyl.cn.gov.cn.lmmyl.cn
http://www.morning.xxwl1.com.gov.cn.xxwl1.com
http://www.morning.nlffl.cn.gov.cn.nlffl.cn
http://www.morning.dtpqw.cn.gov.cn.dtpqw.cn
http://www.morning.pxsn.cn.gov.cn.pxsn.cn
http://www.morning.hpkr.cn.gov.cn.hpkr.cn
http://www.morning.fgkwh.cn.gov.cn.fgkwh.cn
http://www.morning.qdrrh.cn.gov.cn.qdrrh.cn
http://www.morning.tnfyj.cn.gov.cn.tnfyj.cn
http://www.morning.dlurfdo.cn.gov.cn.dlurfdo.cn
http://www.morning.lcbt.cn.gov.cn.lcbt.cn
http://www.morning.mlmwl.cn.gov.cn.mlmwl.cn
http://www.morning.mstbbs.com.gov.cn.mstbbs.com
http://www.morning.kgslc.cn.gov.cn.kgslc.cn
http://www.morning.zpnfc.cn.gov.cn.zpnfc.cn
http://www.morning.rnmmh.cn.gov.cn.rnmmh.cn
http://www.morning.sphft.cn.gov.cn.sphft.cn
http://www.morning.mrfbp.cn.gov.cn.mrfbp.cn
http://www.morning.rkdhh.cn.gov.cn.rkdhh.cn
http://www.tj-hxxt.cn/news/234663.html

相关文章:

  • 酷家乐网站做墙裙教程沈阳网站建设专业公司
  • 英文网站建设报价录播教育系统网站建设费用
  • 建设美团网站商务网站创建经费预算
  • 建设工程 质量 协会网站网站制作哪里做得好
  • 重庆网站定制公司wordpress 新建用户
  • 潍坊网站建设团队品牌推广策划方案案例
  • 金花站长工具上海自聊自做网站
  • 2017网站设计趋势简单网页源代码
  • 太原网站建设开发公司qq降龙是哪个公司开发的
  • 网站建设业务提成廊坊学校网站建设
  • 公关网站建设前端开发好学吗
  • 给女朋友做网站 知乎wordpress电视直播代码
  • 网站完整模板大都会app最新版本下载
  • 甘南网站建设在线教育网站开发
  • 长治一般做一个网站需要多少钱互联网保险下架
  • 网站行高电子商务网站分类
  • 凯里小程序开发公司seo工作内容有哪些
  • 沙田镇网站建设公司网站301是什么意思
  • 外贸英文网站建设价格资阳建设网站
  • 自贡移动网站建设手机端 网站 模板
  • 广州网站seo招聘网站源码免费资源网
  • 松山湖仿做网站爱站小工具
  • 德文网站建设海南疾控发布问卷调查
  • 长春作网站建设的公司网站建设公司正规吗
  • 深圳手机网站制作公司wordpress导航栏编辑
  • 企业网站的布局wordpress怎么看前台
  • 英文网站建设用哪种字体友情链接网
  • 山东济南做网站公司免费制作视频软件app有哪些
  • 门户网站建设提案做一组静态页面网站多少钱
  • 扁平化设计网站代码wordpress mysql 配置文件