SpringMvc服务端验证Controller处理

本文详细介绍了如何使用Spring MVC实现服务端验证,包括实体类的注解使用、JSP界面验证表达式以及Controller方法的实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原文:SpringMvc服务端验证Controller处理

源代码下载地址:http://www.zuidaima.com/share/1550463708400640.htm

1、实体类中加注解如@Email.@NotEmpty

2、jsp界面中在所要验证的文本框后面用EL表达式${email}.${name}

3、email 和 name为实体类属性

package com.zuidaima.stationgroup.site.action;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
import org.springframework.stereotype.Controller;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;


/**
 * <p>
 * SiteController:站点管理控制器
 * </p>
 * 
 *
 * 
 * 
 * 
 * @version V1.0.0
 * 
 * @author www.zuidaima.com
 *
 * @date 2013-7-16 下午3:21:36
 * 
 * @class com.megalith.site.action.SiteController
 * 
 */
@Controller
@RequestMapping("/stationgroup/site")
public class SiteController {

	@Autowired
	private SiteService siteService;

	/**
	 * 跳转到添加页面
	 * 
	 * @return
	 */
	@RequestMapping("/add")
	public ModelAndView add() {
		return new ModelAndView("stationgroup/site/edit");
	}

	/**
	 * 添加与修改站点
	 * 
	 * @param site
	 * @param request
	 * @param response
	 * @return
	 */
	@RequestMapping("/save")
	public ModelAndView save(@Valid @ModelAttribute Site site,BindingResult result,
			HttpServletRequest request, HttpServletResponse response) {
		//BindResult result必须紧跟着前面的@ModelAttribute, 否则会出错
		if (result.hasErrors()) {
			Map<String, Object> map = new HashMap<String, Object>();
			List<FieldError> errors = result.getFieldErrors();
			for (int i = 0; i < errors.size(); i++) {
				map.put(errors.get(i).getField(), errors.get(i).getDefaultMessage());
			}
			return new ModelAndView("stationgroup/site/edit",map);
		}
		siteService.save(site);
		return new ModelAndView("redirect:/stationgroup/site");
	}

	
}

	    			

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值