Springmvc后台校验加文件上传(完整版)
来源:互联网 发布:数据库er图 编辑:程序博客网 时间:2024/06/03 09:18
后台校验<!--数据验证--><dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-validator</artifactId> <version>4.0.1.GA</version></dependency><!--jboss logging--><dependency> <groupId>org.jboss.logging</groupId> <artifactId>jboss-logging</artifactId> <version>3.3.0.Final</version></dependency><!--validation api--><dependency> <groupId>javax.validation</groupId> <artifactId>validation-api</artifactId> <version>1.0.0.GA</version></dependency><!--slf4j api--><dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.7.21</version></dependency2:然后创建个实体类UserInfo 在这里使用注解方法来校验属性别忘了GET.SET public class UserInfo {/*必须是0到100之间*/@Min(value = 0,message = "成绩最小为{value}")@Max(value = 100,message = "最大值为{value}")private Integer score;/*手机号不能为空,必须是1开头 第二位是34567*/@NotEmpty(message = "手机号不能我为空")@Pattern(regexp = "^1[3,4,5,6,7,8,9]\\d{9}$",message = "手机号不正确")private String phone;//不能为空 //必须是6个字符以上 @NotEmpty(message = "用户不能为空") @Size(min = 6,message = "名字至少6个字符") private String name;GET.SET 省略。。。。。。3:然后controller里来使用和jsp.界面接应@Controllerpublic class controller { @RequestMapping("/first") public ModelAndView doFist(@Valid UserInfo info, BindingResult br) { ModelAndView mv = new ModelAndView(); /*成功后跳的界面*/ mv.setViewName("/index.jsp"); /*有一个可以侦测到验证错误总数的方法*/ int errorCount = br.getErrorCount(); if (errorCount > 0) { //证明模型验证失败 FieldError score = br.getFieldError("score");//5 FieldError name = br.getFieldError("name");//5 FieldError phone = br.getFieldError("phone");//5 if (score != null) { mv.addObject("scormsg", score.getDefaultMessage()); } if (name != null) { mv.addObject("namemsg", name.getDefaultMessage()); } if (phone != null) { mv.addObject("phonemsg", phone.getDefaultMessage()); } /*失败后的界面*/ mv.setViewName("/log.jsp"); } return mv; } }4:大配置里的节点配置<!--配置包扫描器--><context:component-scan base-package="cn.hayyp.jiaoyan"></context:component-scan><bean id="myValidator" class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean"> <property name="providerClass" value="org.hibernate.validator.HibernateValidator"></property></bean><!--mvc注解驱动--><mvc:annotation-driven validator="myValidator"/>最后jsp.的界面<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %><%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%><html><head> <title>商品</title></head><body><h1>数据校验</h1><form action="/first" method="post"> 成绩:<input name="score" /> <span>${scormsg }</span><br/><br/> 姓名:<input name="name"/><span>${namemsg }</span><br/><br/> 电话:<input name="phone"/><span>${phonemsg }</span><br/><br/> <input type="submit" value="注册"/></form></body></html>---------------------------------------------------------------------------------------------------------------------------------文件上传第1步<!--文件上传的jar包--><dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.1</version></dependency><dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>1.4</version></dependency>第2步创建一个类 FirstController 使用SpringMVC框架创建注解方法写一个文件上传的方法别忘了注解:如下@Controllerpublic class FirstController {@RequestMapping("/first")public String doFirst(MultipartFile upload, HttpSession session){ //获取到用户上传的文件名字 String filename = upload.getOriginalFilename();//获取到文件的断名 //将相对路径转换成绝对路径 这个是创建在WEB-INF下面的文件名字 String realPath = session.getServletContext().getRealPath("/shangchuanwenjian"); //将file写入指定的路径 File file=new File(realPath,filename); try { upload.transferTo(file); return "/index.jsp"; } catch (IOException e) { e.printStackTrace(); return "/WJSC.jsp"; }第3步: 大配置里的配置文件 <!--配置包扫描器--><context:component-scan base-package="cn.hayyp.shangchuan"></context:component-scan> <!--配置文件上传的专用类--> <!--必须要是ID 要不好使--><bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"></bean><mvc:annotation-driven/>然后把web.xml指定的配置文件名字改一下<!--初始化参数--><init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:applicationContextWJSC.xml</param-value></init-param>这个是jsp,上传页面<%-- Created by IntelliJ IDEA. User: Administrator Date: 2017/8/30 Time: 15:17 To change this template use File | Settings | File Templates.--%><%@ page contentType="text/html;charset=UTF-8" language="java" %><html><head> <title>Title</title></head><body><h1>文件上传</h1><%--文件上上传必须用post 和 enctype="multipart/form-data"--%><form action="/first" method="post" enctype="multipart/form-data"> 文件 <input type="file" name="upload"/> <input type="submit"/></form></body></html>
阅读全文
0 0
- Springmvc后台校验加文件上传(完整版)
- SpringMVC数据校验、文件上传
- SpringMVC 4:文件上传和校验
- SpringMvc后台校验实现
- springMVC后台校验实现
- Extjs+SpringMvc 上传文件加进度条
- phonegap上传及后台springmvc接收文件
- 关于SpringMVC上传文件时后台处理
- webuploader+springmvc实现多文件上传(html+js+css原创,后台代码借鉴)
- springMvc+swfUpload实现异步文件上传(前台用纯html后台返回json)
- webuploader+springmvc实现多文件上传(html+js+css原创,后台代码借鉴)
- 阿里云oss springMVC+ajax后台和前端上传文件
- webuploader文件分片上传与springmvc后台合并
- Ajax 校验 加jQuery 给Ajax发请求完整版
- springMVC上传文件(11)
- springmvc上传文件(图片)
- SpringMVC文件上传(转载)
- Struts2 文件上传后台校验上传文件的大小,过大时跳转到错误页面并返回
- redis随笔(三)----过期删除策略
- 如何使用边框设计各种样式的盒子
- 2018网易校招内推-小易喜欢的数列
- 当我们在谈论机器学习时我们到底在谈些什么
- Synchronized和Lock的区别
- Springmvc后台校验加文件上传(完整版)
- 关于百度地图(二):只需要定位,不需要地图(什么?回调混乱?一招解决!)
- 本地化设置
- 宝宝秀项目学习(五)
- PHP性能分析之侵入式分析
- 06:甲流疫情死亡率
- PHP实现搜索附近的人代码
- Android热修复技术总结
- weblogic10.3.6安装