binder.registerCustomEditor 方法的示例:springmvc之 特殊字段的注入
来源:互联网 发布:淘宝店铺看不到商品 编辑:程序博客网 时间:2024/06/01 09:55
}
可以看出,比以前多了一个birthday属性,这是需要用户填写的,它的类型是date。此外,我们还把age改成Integer型了。这两个属性系统是不会自动注入。
好了,在UserController里覆盖initBinder()方法:
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import org.springframework.validation.BindException;
import org.springframework.web.bind.ServletRequestDataBinder
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.SimpleFormController;
import com.yangsq.domain.City;
import com.yangsq.domain.User;
import com.yangsq.validator.DateEditor;
import com.yangsq.validator.IntegerEditor;
public class UserController extends SimpleFormController {
}
红色标出的是新加入的方法,其他不变。可以看出使用了binder.registerCustomEditor方法,它是用来注册的。所谓注册即告诉Spring,注册的属性由我来注入,不用你管了。可以看出我们注册了“age”和“birthday”属性。那么这两个属性就由我们自己注入了。那么怎么注入呢,就是使用IntegerEditor()和DateEditor()方法。希望仔细思考一下registerCustomEditor方法的参数含义。
下面是IntegerEditor()方法:
import java.beans.PropertyEditorSupport;
public class IntegerEditor extends PropertyEditorSupport {
}
import java.beans.PropertyEditorSupport;
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateEditor extends PropertyEditorSupport {
}
getAsText和setAsText是要从新定义的。其中getAsText方法在get方法请求时会调用,而setAsText方法在post方法请求时会调用。
- binder.registerCustomEditor 方法的示例:springmvc之 特殊字段的注入
- binder.registerCustomEditor 方法的示例:springmvc之 特殊字段的注入
- binder.registerCustomEditor 方法的示例:springmvc之 特殊字段的注入
- binder.registerCustomEditor 方法的實例
- SQL 截取某字段第一个特殊字符(#为示例)前的所有字符,若字段里没有特殊字符(#号)则取全部字段
- 学习springmvc的第三天(2:构造方法注入)
- SpringMVC的简单示例
- android Binder的使用方式 示例
- SpringMVC实现依赖注入的几个常用注解的用法解释和示例说明
- 【学习】springmvc之基于构造器的依赖注入
- 【学习】springmvc之基于setter的依赖注入
- Ninject依赖注入——构造函数、属性、方法和字段的注入
- Ninject依赖注入——构造函数、属性、方法和字段的注入(三)
- 我的注入方法之个人见解!
- springmvc过滤有效的字段
- EasyUI的DataGrid特殊字段的实现
- SEAndroid的IPC之Binder
- BLOB字段类型的示例
- linxu Xterm设置
- Android webservice 入门 (1)—web中转站
- cocos2d-x 基本概念 粒子(Particles)
- QTCreator + MSVC10编译器 使用boost::filesystem 时 error LNK2019: codecvt ... 问题的解决
- Android触控屏幕Gesture(GestureDetector和SimpleOnGestureListener的使用教程)
- binder.registerCustomEditor 方法的示例:springmvc之 特殊字段的注入
- Nginx RTMP 模块 nginx-rtmp-module 指令详解
- Qt 5.1.1 中找不到'GLES2/gl2.h'文件的解决办法。
- VC 在对话框中增加菜单栏
- IOS开发之----远程推送通知
- cocos2d-x 基本概念 瓦片地图(Tiled Map)
- 高性能 Socket 组件 HP-Socket v3.2.1-RC4 发布
- android application传值
- epoll详解