国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

SpringBoot非官方教程 | 第十九篇: 驗證表單信息

rottengeek / 3072人閱讀

這篇文篇主要簡述如何在springboot中驗證表單信息。在springmvc工程中,需要檢查表單信息,表單信息驗證主要通過注解的形式。

構建工程

創建一個springboot工程,由于用到了 web 、thymeleaf、validator、el,引入相應的起步依賴和依賴,代碼清單如下:

      
        
            org.springframework.boot
            spring-boot-starter-web
        

        
            org.springframework.boot
            spring-boot-starter-test
            test
        

        
            org.springframework.boot
            spring-boot-starter-thymeleaf
        
        
            org.hibernate
            hibernate-validator
        
        
            org.apache.tomcat.embed
            tomcat-embed-el
        
    
創建一個PresonForm的Object類
package com.forezp.entity;

import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
/**
 * Created by fangzhipeng on 2017/4/19.
 */
public class PersonForm {

    @NotNull
    @Size(min=2, max=30)
    private String name;

    @NotNull
    @Min(18)
    private Integer age;

    public String getName() {
        return this.name;
    }

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

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }

    public String toString() {
        return "Person(Name: " + this.name + ", Age: " + this.age + ")";
    }
}

這個實體類,在2個屬性:name,age.它們各自有驗證的注解:

@Size(min=2, max=30) name的長度為2-30個字符
@NotNull 不為空
@Min(18)age不能小于18
創建 web Controller
@Controller
public class WebController extends WebMvcConfigurerAdapter {

    @Override
    public void addViewControllers(ViewControllerRegistry registry) {
        registry.addViewController("/results").setViewName("results");
    }

    @GetMapping("/")
    public String showForm(PersonForm personForm) {
        return "form";
    }

    @PostMapping("/")
    public String checkPersonInfo(@Valid PersonForm personForm, BindingResult bindingResult) {

        if (bindingResult.hasErrors()) {
            return "form";
        }

        return "redirect:/results";
    }
}
創建form表單

src/main/resources/templates/form.html:


    
        
Name: Name Error
Age: Age Error
注冊成功的頁面

src/main/resources/templates/results.html:

html>
    
        Congratulations! You are old enough to sign up for this site.
    


演示

啟動工程,訪問http://localhost:8080/:

如果你輸入A和15,點擊 submit:

如果name 輸入N, age為空:

如果輸入:forezp. 18

參考資料

https://spring.io/guides/gs/v...

源碼下載

https://github.com/forezp/Spr...

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/71445.html

相關文章

  • SpringBoot官方教程 | 第九篇SpringBoot整合Redis

    摘要:經過上述兩步的操作,你可以訪問數據了。數據訪問層通過來訪問分鐘過期單元測試啟動單元測試,你發現控制臺打印了單元測試通過源碼下載參考資料 這篇文章主要介紹springboot整合redis 引入依賴 在pom文件中添加redis依賴: org.springframework.boot spring-boot-starter-data-redis 配置數據源 spri...

    csRyan 評論0 收藏0
  • SpringBoot官方教程 | 第十二篇:springboot集成apidoc

    摘要:首先聲明下,是基于注釋來生成文檔的,它不基于任何框架,而且支持大多數編程語言,為了系列的完整性,所以標了個題。二準備工作安裝完安裝它的項目源碼。輸命令輸入目錄輸出目錄是我的工程名。 首先聲明下,apidoc是基于注釋來生成文檔的,它不基于任何框架,而且支持大多數編程語言,為了springboot系列的完整性,所以標了個題。 一、apidoc簡介 apidoc通過在你代碼的注釋來生成ap...

    xiaoxiaozi 評論0 收藏0
  • SpringBoot官方教程 | 第十一篇:SpringBoot集成swagger2,構建優雅的R

    摘要:另外很容易構建風格的,簡單優雅帥氣,正如它的名字。配置一些基本的信息。三寫生產文檔的注解通過注解表明該接口會生成文檔,包括接口名請求方法參數返回信息的等等。四參考資料中使用構建強大的文檔 swagger,中文拽的意思。它是一個功能強大的api框架,它的集成非常簡單,不僅提供了在線文檔的查閱,而且還提供了在線文檔的測試。另外swagger很容易構建restful風格的api,簡單優雅帥氣...

    荊兆峰 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<