java - spring以:input形式显示错误的用户输入

标签 java spring

我的 Controller 中有一个模型对象。

比方说

Class person{
    Date birthDay;
}

当它以表单显示时:输入,如果用户输入“aaaaa”,当然会失败,我只是将用户引导到同一页面并通过再次将人置于模型中来向他们显示错误。但是有没有办法让用户在输入字段中保持错误的输入呢?

<form:input path="birthday"/>

只会显示空,因为绑定(bind)失败。我是否必须使用 DTO 对象并将所有内容都设置为字符串,以便仍然可以显示错误的输入?

最佳答案

我无法复制你的情况。你能提供更多的代码吗?我的 exapme 显示错误的输入:

public class Person {

private Date birthDay;

public void setBirthDay(Date birthDay) {
    this.birthDay = birthDay;
}

public Date getBirthDay() {
    return birthDay;
}
}

Controller :

@Controller
@RequestMapping("/person")
public class PersonController {



@RequestMapping(value ="/edit", method=RequestMethod.GET)
public String edit(Person person, BindingResult result){

    return "person/edit";       
}

@RequestMapping(value ="/edit", method=RequestMethod.POST)
public String submit(Person person, BindingResult result){
    if(result.hasErrors()){
        return "person/edit";   
    } else {
        return "redirect:person/edit.ss";
    }
}

Jsp:

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> 
<form:form method="POST" modelAttribute="person">
Birth day: <form:input path="birthDay" /><form:errors path="birthDay" />
<br />
<input type="submit" value="Submit" />
</form:form>

关于java - spring以:input形式显示错误的用户输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11784449/

相关文章:

java - 如何使图像相对于其框架缩放(ImageJ)

java - 在单独的文件中定义 JPA 实体图

java - Spring Security CORS 过滤器不起作用

java - Spring Boot YML 中的正则表达式

java - 在 Netbeans 中使用 Derby EmbeddedDriver

java.util.ConcurrentModificationException - 如何使用迭代器进行删除

spring - 什么是 <spring :hasBindErrors>?

java - 从属性文件构建 java 列表

java - 我的 spring-boot 应用程序出现以下错误 "org.thymeleaf.exceptions.TemplateInputException:"

java - Spring 和 Klout Api