springmvc验证的hibernate validator 框架 的groups怎么用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springmvc验证的hibernate validator 框架 的groups怎么用相关的知识,希望对你有一定的参考价值。

1.安装好之后在开始菜单里面找.

找到之后可以创建一个快捷方式到桌面.

截图把位置.

2.如果没什么问题的话,你点击连接就进去到数据库里面了.

右键新建.

3.弹出这个对话框,按照图片中的设置.

记得路径保存到其他盘,自己新建一个文件夹.

放到C盘,如果数据库文件大了,会拖慢整个电脑的运行.

4.大保存到这个文件夹下,就多了两个文件.

所有关于这个数据库的操作,将来其实都是对这两个文件的操作.

5.在刚刚新建的数据库上点击右键查询,我们要用Sql语句创建一个表再写几条插入数据的数据.

写上一个创建表的 sql语句.  当然,也可以用设计图创建.

当然我下面的写法只支持sql server2008数据库以上的写法.

create table Person

(

id int,

name nvarchar(5),

sex char(2),

age int,

job nvarchar(20)

);

insert into Person (id,name,sex,age,job)

values 

(1,'李小明','男',25,'C#程序员'),

(2,'王小红','女',19,'学生'),

(3,'李小明','男',22,'学生');

6.用一条查询语句,把刚才的数据都查询出来.

select * from Person;

可以看到图中所显示的数据.

7.那么现在就要使用group by这个语句了.

这是一个分组的语句,先看一下它的写法.

select name from Person group by name;

8.从上面的结果不难看出,根据姓名进行了分组.

另一种说法其实就是把重复的过滤了.

比如数据库里面有50个人都输入了公司.

如果对公司这个字段group by就可以知道这50个人到底一共归属几个公司.

上面的sql语句,其实是把第二列独立出来,并且把重复的过滤出去了.

9.再来写一个聚合函数.  字面意思就是把一些重复的东西聚集起来,并且显示出有多少个.

select name,COUNT(*) from Person group by name;

可以由下图很明显的得知聚合函数的意义和好处.

10.当然,我们还可以再给系统自己生成的列重新起个名字.

select name,COUNT(*) as 统计 from Person group by name;

11.select name,COUNT(*) as 总人数,MAX(age) as 最大年龄,

MIN(age)as 最小年龄,AVG (age) as 平均年龄,SUM(age) as 年龄综合

from Person group by name;

12.再来个更强大的功能.看看我们的sql语句.

13.当然,可以再里面增加几条数据,再加大家一个更强大的用法.

再增加几条数据.

那么现在把姓名出现过2次或者2次以上的查询出来.

14.select name,COUNT(*) from Person group by name having COUNT(*)>=2;

通过having和聚合函数的配合,就得到了想要的结果.

参考技术A 首先,在pom.xml中添加hibernate.validator的支持

[html] view plaincopy
<!-- hibernate.validator -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>4.3.1.Final</version>
</dependency>

表单提交页面user_add.jsp

[html] view plaincopy
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>add user</title>
</head>
<body>
<form:form id="form" method="post"
modelAttribute="validUserBean">
添加用户
<form:label path="account">账号:</form:label>
<form:input path="account" />
<form:errors path="account" />
<form:label path="password">密码:</form:label>
<form:input path="password" />
<form:errors path="password" />
<button type="submit">添加</button>
<button type="reset">重置</button>
<c:out value="$show"></c:out>
</form:form>
</body>
</html>本回答被提问者和网友采纳

hibernate-validator验证请求参数

开发接口要进行请求参数内容格式校验,比如在接收到请求参数后依次需要进行数据内容判空、数据格式规范校验等,十分麻烦,于是尝试用hibernate-validator进行参数校验,简单记录一下使用步骤:

1.导入hibernate-validator的jar包依赖到maven项目的pom.xml文件中

2.在springmvc.xml中进行配置加载hibernate-validator的bean

<!-- 启用hibernate-validator的注解 -->
<mvc:annotation-driven validator="validator"/>

<bean id="hibernate_validator_messages" class="org.springframework.context.support.ReloadableResourceBundleMessageSource"> <!-- 这个用来写验证的提示信息模板,此处注去 --> <!-- <property name="basenames">   <list>   <value>/WEB-INF/hibernate_validator_messages/hibernate_validator_message_zh_CN</value> </list> <property> -->   <property name="fileEncodings">   <props>   <prop key="/WEB-INF/hibernate_validator_messages/hibernate_validator_message_zh_CN">UTF-8</prop> </props> </property> </bean> <bean id="validator" class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean">   <property name="providerClass" value="org.hibernate.validator.HibernateValidator" />   <property name="validationMessageSource" ref="hibernate_validator_messages"/> </bean>

3.在实体类中使用注解进行参数校验

public class User{
      
    // 这个注解表示name必须不为空,否则就提示message  
    @NotNull(message = "name不能为空")
    private String name;

    getter/setter...........    
}

4.在接口方法处添加校验标记

@Controller 
public class UserController {

    // @Valid表示会对User接收到的参数进行校验,当有参数校验错误时errors中将有错误,错误信息就是预设的message
    @PostMapping(value = "/register")
    public String register(@Valid User user, Errors errors) {
        if (errors.hasErrors()) {
            return "register";
        }
        return "redirect:/index";
    } 
}

这玩意应该可以写在切面里,再试试看,校验一共有哪些常用注解先不写了,这里只作简单记录,后续再补充。

 



以上是关于springmvc验证的hibernate validator 框架 的groups怎么用的主要内容,如果未能解决你的问题,请参考以下文章

在Spring中使用数据验证组件hibernate-validator

SpringMVC+Spring+Hibernate个人家庭财务管理系统

springmvc

SpringMVC的JSR303数据验证

hibernate-validator验证请求参数

Spring MVC (Hibernate+Maven) - 多个控制器和会话(登录/注销)