`
xiangxingchina
  • 浏览: 523558 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

springMVC3 基于注解的输入验证

 
阅读更多

在pom.xml中加入,他需要validation-api.jar,hibernate-validator两个开发包

<!-- JSR 303 with Hibernate Validator -->
   <dependency>
    <groupId>javax.validation</groupId>
    <artifactId>validation-api</artifactId>
    <version>1.0.0.GA</version>
   </dependency>
   <dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-validator</artifactId>
    <version>4.0.2.GA</version>
   </dependency>

.....再加入

<repositories>
   <!-- For JSR 303 and Hibernate Validator only - Encourage JBoss to publish these artifacts to Maven Central! -->
   <repository>
    <id>org.jboss.repository.maven</id>
    <url>http://repository.jboss.org/maven2</url>
    <snapshots><enabled>false</enabled></snapshots>
   </repository>
</repositories>

类的一个例子

 

package org . springframework . samples . mvc . basic . account ;

import java.math.BigDecimal ;
import java.util.Date ;
import java.util.concurrent.atomic.AtomicLong ;

import javax.validation.constraints.Future ;
import javax.validation.constraints.NotNull ;
import javax.validation.constraints.Size ;

import org.springframework.format.annotation.DateTimeFormat ;
import org.springframework.format.annotation.DateTimeFormat.ISO ;
import org.springframework.format.annotation.NumberFormat ;
import org.springframework.format.annotation.NumberFormat.Style ;

public class Account {

    private Long id ;

    @NotNull
    @Size (min = 1 , max = 25 )
    private String name ;

    @NotNull
    @NumberFormat (style = Style . CURRENCY )
    private BigDecimal balance = new BigDecimal ("1000" );

    @NotNull
    @NumberFormat (style = Style . PERCENT )
    private BigDecimal equityAllocation = new BigDecimal (".60" );

    @DateTimeFormat (iso = ISO . DATE )
    @Future
    private Date renewalDate = new Date (new Date (). getTime () + 31536000000L );

    public Long getId () {
        return id ;
    }

    void setId (Long id ) {
        this . id = id ;
    }

    public String getName () {
        return name ;
    }

    public void setName (String name ) {
        this . name = name ;
    }

    public BigDecimal getBalance () {
        return balance ;
    }

    public void setBalance (BigDecimal balance ) {
        this . balance = balance ;
    }

    public BigDecimal getEquityAllocation () {
        return equityAllocation ;
    }

    public void setEquityAllocation (BigDecimal equityAllocation ) {
        this . equityAllocation = equityAllocation ;
    }

    public Date getRenewalDate () {
        return renewalDate ;
    }

    public void setRenewalDate (Date renewalDate ) {
        this . renewalDate = renewalDate ;
    }

    Long assignId () {
        this . id = idSequence . incrementAndGet ();
        return id ;
    }

    private static final AtomicLong idSequence = new AtomicLong ();

}

然后配置你自己的message就可以,我这里是messages_zh_CN.properties

分享到:
评论

相关推荐

    springmvc注解实现用户注册验证

    3. **自定义验证器**:如果标准的验证注解无法满足需求,你可以编写自定义的验证器。这涉及到实现 `javax.validation.ConstraintValidator` 接口,并使用 `@Constraint` 注解定义新的验证规则。 4. **错误处理**:...

    SpringMVC全注解配置

    7. **数据绑定和验证**:`@Valid`注解结合JSR 303/349提供的bean验证,可以在处理请求时自动进行数据验证。 8. **拦截器**:`@AspectJ`风格的切面注解,如`@Before`和`@After`,可以创建拦截器,实现请求前后的处理...

    SpringMVC入门很简单之数据验证

    SpringMVC是Spring框架的一部分...总的来说,SpringMVC的数据验证机制使得开发者能够方便地对用户输入进行校验,确保数据的准确性和安全性。结合实际的项目结构,理解并掌握这些知识将有助于构建高效、健壮的Web应用。

    springmvc数据验证

    Spring MVC 提供了两种主要的数据验证方式:一种是基于JSR 303/349的Bean Validation,另一种是基于Validator接口的自定义验证。 1. **Bean Validation**:这是一个标准的Java Bean数据验证框架,它定义了一组注解...

    springMVC注解开发代码

    8. **Validation 验证**:通过 `@Valid` 和 `javax.validation` 注解,可以在处理请求时对输入数据进行验证。 9. **配置类**:Spring 4.0 引入了 Java 配置,允许开发者用类代替 XML 配置。`@Configuration` 和 `@...

    springMVC 注解入门例子

    SpringMVC是一个强大的Java web开发框架,由Spring.IO团队维护,它基于模型-视图-控制器(MVC)设计模式,极大地简化了Java Web应用程序的开发。在这个入门例子中,我们将探讨如何使用SpringMVC的注解来实现用户信息...

    测试springmvc3

    在 "测试springmvc3" 的场景中,我们将关注 Spring MVC 3 版本的关键特性和测试策略。 Spring MVC 3 在前一版本的基础上引入了若干改进和新特性,以提升开发效率和性能。以下是一些关键知识点: 1. **注解驱动**:...

    SpringMVC注册功能的实现.docx

    在 SpringMVC 框架中,我们可以使用 `@NotEmpty` 注解来验证用户输入的数据。 4.2 账号唯一 在注册过程中,我们需要对用户输入的账号进行唯一性验证,以确保账号不重复。在 SpringMVC 框架中,我们可以使用 `@...

    基于springMVC+mybatis+easyui的留言板源码

    6. **安全与优化**:为了确保系统的安全性和性能,开发者需要考虑输入验证、防止SQL注入、使用预编译的PreparedStatement、添加合适的索引等优化措施。同时,对于用户密码,通常会进行加密存储。 7. **权限管理**:...

    最简单的,注册,登陆,注销的代码,通过springmvc+hibernate+jstl注解实现的

    在本项目中,SpringMVC和Hibernate都广泛使用了注解来简化配置和提高可读性。例如,SpringMVC的`@RequestMapping`用于映射URL到控制器方法,Hibernate的`@Entity`用于标记实体类,`@Id`用于标识主键等。 8. **文件...

    后台界面实时获取用户输入内容,springMVC+Ajax实现(源码)

    这可能包括验证输入、查询数据库、更新状态等操作。 4. **返回响应**:Controller处理完业务逻辑后,需要返回一个响应给前端。这个响应可以是JSON格式的数据,方便前端解析并更新界面。使用`@ResponseBody`注解可以...

    springmvc19_day01_02.zip

    《SpringMVC基于注解开发详解》 SpringMVC作为Spring框架的重要组成部分,是Java Web开发中的主流MVC(Model-View-Controller)框架。它以其简洁、高效、灵活的特性,深受开发者喜爱。本教程将深入探讨SpringMVC...

    SpringMVC数据验证——注册用户格式的验证实例

    首先,我们需要理解Spring MVC的数据验证是基于JavaBeans规范中的Java Bean Validation(JSR 303/349)标准和Hibernate Validation实现的。这允许我们在模型类(通常是用户实体类)中添加注解,来定义验证规则。 ...

    毕业设计基于Spring+SpringMVC+Mybatis的机票订购平台(含程序源码).zip

    本毕业设计项目是一个基于Spring、SpringMVC和Mybatis框架的机票订购平台,旨在提供一个完整的用户交互系统,包括登录、退出、修改密码、查询机票、购买机票以及撤销购买等核心功能。以下将详细解析该项目的技术栈、...

    springmvc框架源码.zip

    SpringMVC提供了多种实现,如基于注解的映射,基于XML配置的映射等。 3. **HandlerAdapter**:处理器适配器,使得SpringMVC可以支持各种不同类型的处理器,例如Controller接口或自定义的类。它负责调用处理器的方法...

    SpringMvc所需所有jar

    10. **MVC配置**:SpringMvc的配置可以通过XML、Java配置类或者基于注解的方式进行。Spring Boot的应用中,通常使用@Configuration和@EnableWebMvc注解来启用MVC功能。 11. **RESTful API**:SpringMvc也支持创建...

    SpringMVC杂记(三) 向导型Controller的实现(基于SpringMVC 3.1.1)

    SpringMVC 3.1.1版本的源码中,Controller接口和相关注解(如@RequestMapping、@SessionAttributes、@ModelAttribute)的实现提供了上述功能的基础。通过阅读源码,我们可以更深入地理解这些特性的内部工作原理。 ...

    springmvc登陆示例项目

    6. **验证机制**:SpringMVC可以通过Validator接口或JSR-303/JSR-349 Bean Validation实现表单验证,确保输入数据的有效性。 7. **视图解析器**:如InternalResourceViewResolver,将逻辑视图名解析为实际的JSP页面...

    maven springmvc增删改

    本文将详细讲解如何使用Maven构建基于SpringMVC的Web应用,并实现数据的增删改功能。 Maven是一个项目管理和综合工具,它通过提供一个统一的构建系统、依赖管理和项目信息管理,简化了Java项目的构建过程。Maven...

Global site tag (gtag.js) - Google Analytics