- 浏览: 42728 次
- 性别:
- 来自: 江西
-
最新评论
-
空谷悠悠:
这个帖子我看过,
将项目路径D:\workspace_boha ...
rmi -
gedoua:
我第三步设置了 为什么还是找不到类呢,您能帮我看下吗 我的QQ ...
rmi -
theabab:
metadmin 写道我想到了2个问题,一起探讨一下:1,方法 ...
一个想法 method控制权限(未实践) -
metadmin:
我想到了2个问题,一起探讨一下:1,方法拦截技术。我觉得这个s ...
一个想法 method控制权限(未实践) -
metadmin:
“权限管理”圈子欢迎您!圈子地址:http://accessm ...
一个想法 method控制权限(未实践)
web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<!--context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param-->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>*.htm</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>redirect.jsp</welcome-file>
</welcome-file-list>
</web-app>
dispatch-servlet.xml:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
<bean id="defaultHandlerMapping"
class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping" />
<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="register.htm">registerController</prop>
<prop key="login.htm">loginController</prop>
<prop key="index.htm">indexController</prop>
</props>
</property>
</bean>
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix">
<value>/WEB-INF/jsp</value>
</property>
<property name="suffix">
<value>.jsp</value>
</property>
</bean>
<bean id="indexController"
class="org.springframework.web.servlet.mvc.ParameterizableViewController"
p:viewName="/register"/>
<bean id="registerController" class="net.kingbit.actions.RegisterStudentController">
<property name="sessionForm">
<value>true</value>
</property>
<property name="commandName">
<value>student</value>
</property>
<property name="formView" value="/register"/>
<property name="commandClass">
<value>net.kingbit.pojos.Student</value>
</property>
<property name="validator">
<ref bean="registerValidator"/>
</property>
</bean>
<bean id="loginController" class="net.kingbit.actions.LoginController"/>
<bean id="registerValidator" class="net.kingbit.validator.StudentValidator"/>
</beans>
redirect.jsp:
<%--
Views should be stored under the WEB-INF folder so that
they are not accessible except through controller process.
This JSP is here to provide a redirect to the dispatcher
servlet but should be the only JSP outside of WEB-INF.
--%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<% response.sendRedirect("register.htm"); %>
register.jsp:
<%--
Document : register
Created on : Jan 31, 2009, 10:49:30 AM
Author : Kang
--%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
<form action="<%=request.getContextPath() %>/register.htm" method="post" name="registerForm">
<table>
<tr><td><spring:bind path="student.name">
name: <input type="text" name="${status.expression}"/>(必须输入) </td> <td>${status.errorMessage}</spring:bind></td> </tr>
<tr><td><spring:bind path="student.sex">
sex: <input type="text" name="${status.expression}"/>(必须输入,且为0或1)</td><td>
${status.errorMessage}</spring:bind>
</td></tr>
</table>
<input type="submit" value="submit"/>
</form>
</body>
</html>
RegisterStudentController:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package net.kingbit.actions;
import net.kingbit.pojos.Student;
import org.springframework.validation.BindException;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.SimpleFormController;
/**
*
* @author Kang
*/
public class RegisterStudentController extends SimpleFormController{
protected ModelAndView onSubmit(Object object, BindException be) throws Exception {
Student stu=(Student)object;
return new ModelAndView("/success","student",stu);
}
}
StudentValidator:验证类
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package net.kingbit.validator;
import org.apache.oro.text.perl.Perl5Util;
import net.kingbit.pojos.Student;
import org.springframework.validation.Errors;
import org.springframework.validation.ValidationUtils;
import org.springframework.validation.Validator;
/**
*
* @author Kang
*/
public class StudentValidator implements Validator {
private static String SEX_REGEXP="/^[0-1]$/";
public boolean supports(Class cls) {
return cls.equals(Student.class);
}
public void validate(Object object, Errors errors) {
Student student=(Student)object;
if(student.getName().equals("")||student.getName().equals(null))
{ValidationUtils.rejectIfEmpty(errors, "name", "name", "姓名必须输入");}
if(student.getSex().equals("")||student.getSex().equals(null)){ValidationUtils.rejectIfEmpty(errors, "sex", "sex", "性别必须输入");}
Perl5Util perl5Util=new Perl5Util();
if(!perl5Util.match(SEX_REGEXP, student.getSex())){
errors.rejectValue("sex", "not confirmat", null,"性别格式错误");}
}
}
Student:一个简单的pojo
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package net.kingbit.pojos;
/**
*
* @author Kang
*/
public class Student {
private String name;
private String sex;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
}
跳转到表单页面的Controller必须是表单控制器!换颜色的地方就是要注意的地方!
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<!--context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param-->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>*.htm</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>redirect.jsp</welcome-file>
</welcome-file-list>
</web-app>
dispatch-servlet.xml:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
<bean id="defaultHandlerMapping"
class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping" />
<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="register.htm">registerController</prop>
<prop key="login.htm">loginController</prop>
<prop key="index.htm">indexController</prop>
</props>
</property>
</bean>
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix">
<value>/WEB-INF/jsp</value>
</property>
<property name="suffix">
<value>.jsp</value>
</property>
</bean>
<bean id="indexController"
class="org.springframework.web.servlet.mvc.ParameterizableViewController"
p:viewName="/register"/>
<bean id="registerController" class="net.kingbit.actions.RegisterStudentController">
<property name="sessionForm">
<value>true</value>
</property>
<property name="commandName">
<value>student</value>
</property>
<property name="formView" value="/register"/>
<property name="commandClass">
<value>net.kingbit.pojos.Student</value>
</property>
<property name="validator">
<ref bean="registerValidator"/>
</property>
</bean>
<bean id="loginController" class="net.kingbit.actions.LoginController"/>
<bean id="registerValidator" class="net.kingbit.validator.StudentValidator"/>
</beans>
redirect.jsp:
<%--
Views should be stored under the WEB-INF folder so that
they are not accessible except through controller process.
This JSP is here to provide a redirect to the dispatcher
servlet but should be the only JSP outside of WEB-INF.
--%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<% response.sendRedirect("register.htm"); %>
register.jsp:
<%--
Document : register
Created on : Jan 31, 2009, 10:49:30 AM
Author : Kang
--%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
<form action="<%=request.getContextPath() %>/register.htm" method="post" name="registerForm">
<table>
<tr><td><spring:bind path="student.name">
name: <input type="text" name="${status.expression}"/>(必须输入) </td> <td>${status.errorMessage}</spring:bind></td> </tr>
<tr><td><spring:bind path="student.sex">
sex: <input type="text" name="${status.expression}"/>(必须输入,且为0或1)</td><td>
${status.errorMessage}</spring:bind>
</td></tr>
</table>
<input type="submit" value="submit"/>
</form>
</body>
</html>
RegisterStudentController:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package net.kingbit.actions;
import net.kingbit.pojos.Student;
import org.springframework.validation.BindException;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.SimpleFormController;
/**
*
* @author Kang
*/
public class RegisterStudentController extends SimpleFormController{
protected ModelAndView onSubmit(Object object, BindException be) throws Exception {
Student stu=(Student)object;
return new ModelAndView("/success","student",stu);
}
}
StudentValidator:验证类
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package net.kingbit.validator;
import org.apache.oro.text.perl.Perl5Util;
import net.kingbit.pojos.Student;
import org.springframework.validation.Errors;
import org.springframework.validation.ValidationUtils;
import org.springframework.validation.Validator;
/**
*
* @author Kang
*/
public class StudentValidator implements Validator {
private static String SEX_REGEXP="/^[0-1]$/";
public boolean supports(Class cls) {
return cls.equals(Student.class);
}
public void validate(Object object, Errors errors) {
Student student=(Student)object;
if(student.getName().equals("")||student.getName().equals(null))
{ValidationUtils.rejectIfEmpty(errors, "name", "name", "姓名必须输入");}
if(student.getSex().equals("")||student.getSex().equals(null)){ValidationUtils.rejectIfEmpty(errors, "sex", "sex", "性别必须输入");}
Perl5Util perl5Util=new Perl5Util();
if(!perl5Util.match(SEX_REGEXP, student.getSex())){
errors.rejectValue("sex", "not confirmat", null,"性别格式错误");}
}
}
Student:一个简单的pojo
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package net.kingbit.pojos;
/**
*
* @author Kang
*/
public class Student {
private String name;
private String sex;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
}
跳转到表单页面的Controller必须是表单控制器!换颜色的地方就是要注意的地方!
发表评论
-
svn命令
2011-03-28 09:12 701linux常用svn命令 ... -
log4j总结
2010-11-10 16:31 0Log4j使用总结 关键字: log4j 一、介绍 Log4j ... -
将异常完整信息显示到日志文件的辅助类
2010-11-10 16:30 0package jt.web.utils; import j ... -
读取属性文件的一个辅助类
2010-11-10 16:28 799package jt.web.utils; import j ... -
自己写的一个关于SQLEception错误id的处理辅助类
2010-11-10 16:27 929package jt.web.utils; import j ... -
dbcp连接池
2010-11-10 16:26 779package jt.web.utils; import j ... -
java 解码js escape。
2010-11-10 16:23 2219public static String unescape(S ... -
resin和webService
2010-09-27 09:14 0刚学习了一下webservice,基于jax-ws建立webs ... -
mysql procedure
2010-08-31 09:27 899set global auto_increment_incre ... -
httpClient和URL
2010-05-24 09:19 1750URL方式: URL url = null; HttpU ... -
csdddd
2010-05-04 20:50 0dddddd -
js常用函数
2010-05-04 08:55 0PCRM.sendBefore = function(){ ... -
验证码图片生成
2010-04-19 08:40 0....... -
js继承extend实现
2010-03-01 09:18 0function Extend(subFn,superFn){ ... -
JSP在Servlet中的几个编码的作用及原理
2010-01-18 11:09 0JSP在Servlet中的几个编码 ... -
response设置编码的三种方式
2010-01-18 11:00 0response设置编码的三种方式 其实应该是serv ... -
fileServlet
2010-01-08 10:20 0package eCommerce.btmm.web.proc ... -
vs连接mysql
2010-01-06 17:01 0using System; using System.Coll ... -
新建层并设计透明度
2010-01-06 11:46 0var str='<div id="msgDi ... -
json 格式化
2009-12-30 16:05 0function dealJson(json, len){ ...
相关推荐
Spring Bind 和 BindStatus 在 Spring MVC 中扮演着关键的角色,它们是数据绑定的核心组件,用于处理用户输入数据的验证和显示错误信息。在Web应用中,尤其是在处理表单提交时,Spring Bind 提供了一种结构化的机制...
本文将深入探讨`<spring:bind>`和`<spring:message>`这两个Spring MVC中的内置标签,以及它们在处理用户输入和显示国际化文本方面的功能。 1. `<spring:bind>`标签主要用于在JSP页面上绑定和显示模型对象及其属性的...
Spring框架提供了Spring MVC中的标签库,如`spring:bind`、`spring:hasBindErrors`、`spring:eval`等,用于数据绑定和错误处理。例如,`spring:bind`可以用来自动绑定表单字段到模型对象。 这些标签库使得开发者...
Maven坐标:jakarta.xml.bind:jakarta.xml.bind-api:2.3.3; 标签:bind、xml、api、jakarta、jar包、java、中文文档; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化...
【Java中的`java.net.BindException: Address already in use: JVM_Bind`异常】 在Java编程中,当你尝试启动一个服务器端应用,如Tomcat,或者任何需要监听特定端口的服务时,可能会遇到`java.net.BindException: ...
Spring MVC提供了`<spring:url>`用于创建安全的URL,`<spring:bind>`可以绑定表单字段到模型属性,`<form:input>`和`<form:errors>`用于创建输入字段并显示错误信息。Spring的标签库不仅简化了视图层的编程,还与...
例如,`<spring:url>`用于创建URL,`<spring:bind>`用于绑定模型属性到表单字段,`<form:input>`和`<form:errors>`用于创建表单输入字段并显示错误信息。Spring MVC的标签使得与模型数据的交互更为直观。 3. Struts...
结合 JSTL <spring:bind> 标签 数据绑定的几个方法 <spring:message> 标签 <spring:transform> 标签 其它 View 层 除了 JSP View 层技术之外,您还可以使用其它的 View 层技术,或建立...
如果有错误,Spring会自动将错误信息绑定到相应的表单字段,如`<spring:bind>`标签所示。在前端,我们可以使用JavaScript处理这些错误消息,并在用户界面中显示。 **单方法控制器与多方法控制器**: - **单方法控制...
在低版本的Spring中,你必须通过JSTL或<spring:bind>将表单对象绑定到HTML表单页面中,对于习惯了Struts表单标签的开发者来说,Spring MVC的这一表现确实让人失望。不过这一情况已经一去不复返了,从Spring 2.0开始...
Spring框架的标签库主要在Spring MVC中使用,例如`spring:bind`用于数据绑定,`spring:hasBindErrors`检查并显示错误信息。Spring的标签库与Spring的依赖注入和AOP特性相结合,提供了强大的前后端交互能力。 JSF...
Spring MVC框架也有自己的标签库,比如`spring:bind`、`spring:hasBindErrors`等,这些标签可以帮助开发者轻松地绑定表单数据,处理验证错误,并且与Spring MVC的注解驱动编程模型结合紧密。 7. Tiles框架标签库 ...
- **格式化显示**:`Spring`的标签库(如`spring:bind`和`form:input`)能自动调用`PropertyEditor`或者`Formatter`进行格式化输出,并显示验证错误信息。 `ConversionService`和相关的注解验证使得开发者能够更...
标题“springbind.zip”暗示了我们讨论的主题与Spring框架中的数据绑定有关,特别是Spring Web应用程序中的参数绑定。Spring是一个广泛使用的Java开发框架,它提供了一种优雅的方式来管理应用程序的复杂性,尤其是...
org.springframework.web.bind.MissingServletRequestParameterException.class org.springframework.web.bind.RequestUtils.class org.springframework.web.bind.ServletRequestBindingException.class org.spring...
import org.springframework.web.bind.annotation.GetMapping; @Controller public class ViewController { @GetMapping("/") public String index(Model model) { Locale locale = LocaleContextHolder....
The import org.springframework.web.bind.annotation cannot be resolved. json.jar spring.jar mail.jar log4j.jar
Spring Framework 4.3.12 已发布,该版本包含 17 项修复和一些特定的改进,为即将推出的 Spring Boot 1.5.8 打好基础。请注意,Spring Framework 4.x 需要 JDK 6 及以上版本