首页 > 代码库 > 基于springmvc的简单增删改查实现---中间使用到了bean validation
基于springmvc的简单增删改查实现---中间使用到了bean validation
1 package com.kite.controller; 2 3 import java.util.HashMap; 4 import java.util.Map; 5 6 import javax.validation.Valid; 7 8 import org.springframework.stereotype.Controller; 9 import org.springframework.ui.Model; 10 import org.springframework.validation.BindingResult; 11 import org.springframework.validation.annotation.Validated; 12 import org.springframework.web.bind.annotation.ModelAttribute; 13 import org.springframework.web.bind.annotation.PathVariable; 14 import org.springframework.web.bind.annotation.RequestMapping; 15 import org.springframework.web.bind.annotation.RequestMethod; 16 17 import com.kite.entity.User; 18 19 /** 20 * 简单的增删改查实现 21 * @author kite 22 * 23 */ 24 @Controller 25 @RequestMapping(value=http://www.mamicode.com/{"/user"}) 26 public class UserController 27 { 28 //简单数据模拟 29 Map<String, User> map = new HashMap<String, User>(); 30 public UserController() 31 { 32 map.put("zs", new User("zs", "123", "张三", "123dsad456")); 33 map.put("ll", new User("ll", "321", "李四", "123dsa456")); 34 map.put("ww", new User("ww", "32154", "王五", "dsa")); 35 map.put("zl", new User("zl", "5dsada", "赵六", "dsadsa")); 36 } 37 /** 38 * 显示列表 39 * @param model 40 * @return 41 */ 42 @RequestMapping({"/list"}) 43 public String list(Model model) 44 { 45 model.addAttribute("users", map); 46 return "user/list"; 47 } 48 /** 49 * 到添加页面使用method请求的方式来区分 50 * @return 51 */ 52 @RequestMapping(value=http://www.mamicode.com/{"/add"},method=RequestMethod.GET) 53 public String add(User user) 54 { 55 return "/user/add"; 56 } 57 /** 58 * post请求方式实现真正的添加 59 * 使用bean validation 60 * BindingResult br 必须在@valid后面 61 * @return 62 */ 63 @RequestMapping(value=http://www.mamicode.com/{"/add"}, method=RequestMethod.POST) 64 public String add(@Validated User user, BindingResult br) 65 { 66 if(br.hasErrors()) 67 { 68 //出错 69 return "user/add"; 70 } 71 map.put(user.getUserName(), user); 72 return "redirect:/user/list"; 73 } 74 /** 75 * 查看 76 * @param userName 77 * @param model 78 * @return 79 */ 80 @RequestMapping({"/{userName}/show"}) 81 public String show(@PathVariable String userName, Model model) 82 { 83 User user = map.get(userName); 84 model.addAttribute(user); 85 return "/user/show"; 86 } 87 /** 88 * 到修改页面 89 * @param userName 90 * @return 91 */ 92 @RequestMapping(value=http://www.mamicode.com/{"/{userName}/update"},method=RequestMethod.GET) 93 public String update(@PathVariable @ModelAttribute(value="http://www.mamicode.com/userName") String userName, Model model) 94 { 95 User user = map.get(userName); 96 model.addAttribute(user); 97 return "/user/update"; 98 } 99 /**100 * 真正的更新101 * @param userName102 * @param user103 * @param br104 * @return105 */106 @RequestMapping(value=http://www.mamicode.com/{"/{userName}/update"},method=RequestMethod.POST)107 public String update(@PathVariable String userName, @Valid User user, BindingResult br)108 {109 map.put(userName, user);110 return "redirect:/user/list";111 }112 /**113 * 删除的实现114 * @param userName115 * @return116 */117 @RequestMapping(value=http://www.mamicode.com/{"/{userName}/delete"},method=RequestMethod.GET) 118 public String delete(@PathVariable String userName)119 {120 map.remove(userName);121 return "redirect:/user/list";122 }123 }
使用到bean validation的类 注解放在get方法只上
1 package com.kite.entity; 2 3 4 import javax.validation.constraints.Size; 5 6 import org.hibernate.validator.constraints.Email; 7 import org.hibernate.validator.constraints.NotEmpty; 8 import org.hibernate.validator.constraints.Range; 9 10 public class User11 {12 private String userName;13 private String password;14 private String nickName;15 private String email;16 public User()17 {18 super();19 // TODO Auto-generated constructor stub20 }21 public User(String userName, String password, String nickName, String email)22 {23 super();24 this.userName = userName;25 this.password = password;26 this.nickName = nickName;27 this.email = email;28 }29 @Override30 public String toString()31 {32 return "User [userName=" + userName + ", password=" + password33 + ", nickName=" + nickName + ", email=" + email + "]";34 }35 @NotEmpty(message="用户名不能为空")36 public String getUserName()37 {38 return userName;39 }40 41 public void setUserName(String userName)42 {43 this.userName = userName;44 }45 @Size(min=6,max=18,message="密码的长度必须在6-18之间")46 public String getPassword()47 {48 return password;49 }50 51 public void setPassword(String password)52 {53 this.password = password;54 }55 public String getNickName()56 {57 return nickName;58 }59 public void setNickName(String nickName)60 {61 this.nickName = nickName;62 }63 @Email(message="邮箱格式不符合")64 public String getEmail()65 {66 return email;67 }68 69 public void setEmail(String email)70 {71 this.email = email;72 }73 74 75 }
其他代码就不一一复制了
基于springmvc的简单增删改查实现---中间使用到了bean validation
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。