在jsp中正确使用Spring标记库

时间:2014-10-15 10:48:01

标签: spring jsp spring-mvc model-view-controller

如果我不使用<% @ taglibprefix = "sf" uri = "http://www.springframework.org/tags/form"%> 应用程序的工作原理相同。用户用户对象填充表单的字段。使用这种方法是否正确?

使用<sf:form method="POST"modelAttribute="user">更正确吗?

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>

<!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=ISO-8859-1">
<title>Inserisci nuovo utente</title>
</head>
<body>
<h2>Dati utente</h2>
<form action="/SpringMVCFormHibernate/add" method="post">
    <label>Cognome</label><br/><input type="text" name="cognome"/><br/>
    <label>Nome</label><br/><input type="text" name="nome"/><br/>
    <label>Eta</label><br/><input type="text" name="eta"/><br/><br/>

    <input type="submit" value="submit"/>
</form>
<p><a href="/SpringMVCFormHibernate/show">Visualizza utenti</a></p>
<sf:label path=""></sf:label>
</body>
</html>

@Controller
public class UtenteController {

@Autowired
UtenteDAO utenteDAO;

@RequestMapping(value="/add",method=RequestMethod.POST)
public String addUtente(@ModelAttribute Utente user){
    utenteDAO.inserisciUtente(user);
    return "index";
}//addUtente
}//UtenteController 

1 个答案:

答案 0 :(得分:3)

spring:form标记的主要用途是formbacking个对象。如果您希望将模型属性对象与视图字段绑定,则可以使用它。

对于简单的表单对象,您可以使用html表单。您也可以使用spring:form标记错误属性。

ex

path属性绑定模型字段名称。因此,可以使用您的模型属性在服务器端轻松更新对它们所做的更改。

只需简单地提供对象的动态绑定即可。春天做那些而不是手工作品

了解表单处理和模型属性用法的nice example