`
zkh43javaeye
  • 浏览: 85930 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

@InitBinder使用

阅读更多
    @InitBinder
    public void initBinder(WebDataBinder binder) {


        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
        dateFormat.setLenient(false);
        binder.registerCustomEditor(Date.class, new CustomDateEditor(dateFormat, true));


        binder.registerCustomEditor(SystemInfo.class, new PropertyEditorSupport() {

            @Override
            public void setAsText(String text) throws IllegalArgumentException {
                if (!StringUtils.hasText(text)) {
                    return;
                }
                {
                    Long systemInfoId = Long.valueOf(text);
                    SystemInfo systemInfo = systemInfoService.findById(systemInfoId);
                    setValue(systemInfo);
                }
            }
        });

        binder.registerCustomEditor(Category.class, new PropertyEditorSupport() {

            @Override
            public void setAsText(String text) throws IllegalArgumentException {
                if (!StringUtils.hasText(text)) {
                    return;
                } else {
                    Long categoryId = Long.valueOf(text);
                    Category category = categoryService.findById(categoryId);
                    setValue(category);
                }
            }
        });
    }


 

 

		            	<form:form modelAttribute="categoryEditForm" id="categoryForm" method="post" action="saveOrUpdate.do">
		            	
		            	<form:hidden path="category.objectId" />
		            	<input type="hidden" name="category.parent" value="${categoryEditForm.category.parent.objectId}"/>
		            	<input type="hidden" name="category.systemInfo" value="${categoryEditForm.category.systemInfo.objectId }"/>
		            	
		                <div class="area">
		                    <div class="areaTitle">
		                      	<div class="inner">
		                        	<label>Category Information Form</label>
		                        	<div class="clear"></div>
		                    	</div>
		                	</div>
		                </div>
		                
		                <div class="areaBody">
							<table class="formTable">
	                        	<tbody>
	                        		<tr>
										<td colspan="4">
											<span class="button"><span><a href="javascript:sumbit();" class="btnSave">Submit</a></span></span>
										</td>
									</tr>	
									<tr>
										<td colspan="4">&nbsp;</td>
									</tr>
									<tr>
										<td align="right">Parent Category Name:</td>
										<td colspan="3"><form:input path="category.parent.name.fullName" readonly="true" id="parentCategory" cssClass="input readOnly" /></td>										
									</tr>
									<tr>
										<td align="right">Current Category Name:</td>
										<td><form:input path="category.name.fullName" id="categoryName" cssClass="input"/></td>
										<td align="right">description:</td>
										<td><form:input path="category.description" id="description" cssClass="input"/></td>
									</tr>
	                        	</tbody>
                      		</table>
		                </div>
		                
						</form:form>
 

 

1
0
分享到:
评论

相关推荐

    详解SpringMVC注解@initbinder解决类型转换问题

    在上面的代码中,我们使用了 @InitBinder 注解来标注 initBinder 方法,并在该方法中使用 WebDataBinder 的 registerCustomEditor 方法来注册一个自定义的日期编辑器,用于将字符串类型的日期转换为 Date 类型。...

    SpringMVC的@InitBinder参数转换代码实例

    在上面的示例代码中,我们使用@InitBinder注解来指定要绑定的参数param和date,然后在initBinder方法中注册了StringTrimmerEditor和CustomDateEditor这两个编辑器。StringTrimmerEditor用于将请求参数trim(),...

    spring mvc使用@InitBinder标签对表单数据绑定的方法

    Spring MVC 使用 @InitBinder 标签对表单数据绑定的方法 Spring MVC 框架中, Bean 中定义了 Date、double 等类型,如果没有做任何处理的话,日期以及 double 都无法绑定。这是因为 Spring MVC 框架中的数据绑定...

    SpringMVC中利用@InitBinder来对页面数据进行解析绑定的方法

    在使用@InitBinder注解时,我们需要在控制器中定义一个方法,并在该方法中使用WebDataBinder对象来注册自定义的编辑器。例如, registering a custom date editor to convert date strings to Date objects: ```...

    Spring MVC InitBinder验证方法

    3.使用InitBinder进行验证:在Controller中使用InitBinder对用户提交的数据进行验证。 实例代码 下面是一个使用InitBinder验证方法的实例代码: 首先,创建一个User5模型实体类: ``` package ...

    百度内部通用XSS攻击解决方案探讨培训ppt

    9. 工具使用:扫描工具,日志挖掘工具,全流量URL库扫描工具/平台运维平台日志挖掘等。 10. 安全实践:开发环节发布规范,测试环节扫描工具,自行发现全流量URL库扫描工具/平台运维平台日志挖掘等。

    SSM自定义参数绑定

    总的来说,SSM自定义参数绑定是通过实现`HandlerMethodArgumentResolver`、使用`@InitBinder`和`@ModelAttribute`注解等方式实现的。这些机制赋予了开发者极大的灵活性,可以根据项目的具体需求定制参数绑定规则,...

    Spring中WebDataBinder使用详解

    它通过在控制器类中使用@InitBinder注解来配置Web数据绑定。 WebDataBinder的使用 在使用WebDataBinder之前,需要了解它的工作机制。WebDataBinder是一个用于将Web请求参数绑定到JavaBean的属性上的工具。它可以...

    XSS防攻击实现

    5. **InitBinder与自定义StringEscapeEditor**:在Spring MVC中,我们可以使用`@InitBinder`注解和自定义的`PropertyEditor`来处理参数绑定。例如,创建一个名为`StringEscapeEditor`的类,继承自`...

    spring3.0注解

    当表单数据不能直接自动绑定到类的属性时,可以使用@InitBinder注解初始化一个数据绑定器,自定义数据转换规则。例如,处理日期类型: ```java @Controller public class MyController { @InitBinder public ...

    关于Spring MVC同名参数绑定问题的解决方法

    在Spring MVC框架中,参数绑定是一项关键功能,它允许开发者从HTTP请求中自动映射数据到控制...希望这篇文章的内容能对你在使用Spring MVC处理同名参数绑定时提供帮助,如果有任何疑问或需要进一步讨论,欢迎留言交流。

    Springside4 学习整理

    在实际应用中,可能会遇到类型转换的问题,如将用户输入的日期字符串转换为 Date 类型,这时可以使用 @InitBinder 注解和 CustomDateEditor 类进行定制化处理。 - Spring Data JPA:简化了 ORM(对象关系映射),...

    spring3mvc如何把checkbox的值绑定到model对象的int数据类型.pdf

    在控制器类(`UserController`)中,我们需要使用`@InitBinder`注解创建一个初始化方法,用于注册自定义编辑器。`initBinder`方法接收一个`WebDataBinder`参数,然后通过`binder.registerCustomEditor`注册我们的`...

    springmvc类型转换.md

    在Spring 3.1之前的版本中,如果需要对特定类型的参数进行格式化或者转换,可以使用`@InitBinder`注解来注册一个自定义的编辑器(`CustomEditor`)或转换器(`Converter`)。下面是一个例子: ```java import org....

    第12章Spring MVC参数绑定的验证

    - **使用ControllerAdvice和@InitBinder**: `@ControllerAdvice`可以全局处理验证错误,`@InitBinder`则可以在所有控制器方法调用之前设置数据绑定规则。 - **BindingResult和ModelAttribute**: 在控制器方法中...

    Spring 2.5 基于注解驱动的Spring MVC

    这可以通过实现`PropertyEditorSupport`类并使用`@InitBinder`注解在Controller中注册。 ```java @Controller public class MyController { @InitBinder public void initBinder(WebDataBinder binder) { binder...

    spring中的自定义属性编辑器

    一种是在XML配置文件中使用`propertyEditorRegistrar`元素,另一种是在Java配置中使用`@InitBinder`注解。 在XML配置中: ```xml &lt;!-- 配置属性 --&gt; ``` 在Java配置中: ```java @Controller public ...

    SpringMVC自定义属性编辑器详解及实例

    自定义springMVC的属性编辑器主要有两种方式,一种是使用@InitBinder标签在运行期注册一个属性编辑器,这种编辑器只在当前Controller里面有效;还有一种是实现自己的 WebBindingInitializer,然后定义一个...

    springmvc接收参数为日期类型

    1. **使用`@InitBinder`方法** `@InitBinder`注解用于初始化数据绑定过程,我们可以在这个方法中添加自定义的日期格式化器。例如,我们可以创建一个全局的日期格式: ```java @Controller public class ...

Global site tag (gtag.js) - Google Analytics