javaEE之-类反射直接封装前台传过来的参数
来源:互联网 发布:js exec 编辑:程序博客网 时间:2024/04/28 05:57
在JavaEE WEB中,我们收集form表单传过来的数据,通常是采用值对象的方式,一一去获取,封装,然后将值对象传到后台进行使用。
如:
<span style="font-size:18px;"> String name=request.getParameter("name");String pwd=request.getParameter("pwd");String id =request.getParameter("id");User user =new User();user.setUid(id);user.setName(name);user.setPwd(pwd);</span>每次都这样很麻烦,现在我们有了新的技术
采用这两个包就可以实现。
<span style="font-size:18px;">public void login(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {Map<String, String[]> map=req.getParameterMap();User user = BeanUtils.populate(User.class, map);System.out.println(user);</span>
在servlet中我们就只需要调用一下就可以做到,User值对象中,我们前台有的参数就能set,没有的也可以不用理会。
但是我们采用这个需要注意:前台页面代码<input type="text" name="name"/>这个参数一定要对上,和值对象中的要一致,不然会不成功,因为在类反射中,我们都是得到变量名,再去调用set+变量名一个大写进行设置的。
<span style="font-size:18px;">public class BeanUtils {public static <T>T populate(T t,Map<String,String[]> map){try{org.apache.commons.beanutils.BeanUtils.populate(t,map);return t;}catch(Exception e){throw new RuntimeException(e.getMessage(),e);}}public static <T>T populate(Class<T> cls,Map<String,String[]> map){try{T t = cls.newInstance();return populate(t, map);}catch(Exception e){throw new RuntimeException(e.getMessage(),e);}}</span>上面 用到了两个包,只需要将这个相应的参数传过来,我们就可以进行相应的封装(其实用到的就是类反射)
0 0
- javaEE之-----------类反射直接封装前台传过来的参数
- javaEE之-类反射直接封装前台传过来的参数
- Java后台如何接收并处理前台传过来的json格式的数组参数
- 05.Java后台如何接收并处理前台传过来的json格式的数组参数
- Java后台如何接收并处理前台传过来的json格式的数组参数
- Java后台如何接收并处理前台传过来的json格式的数组参数
- springmvc 后台用map封装前台传的参数
- JavaEE之反射
- ext前台接收action传过来的json数据
- nc默认枚举,获取前台传过来的数据块
- Extjs 前台获取后台传过来的Json字符串
- liferay后台获取不到前台传过来的值
- 前台获取ActionContext传值过来的问题
- 前台传过来的json数据,解析request
- Java解析前台传过来的json数组
- SpringMVC框架 获取前台传过来的数组并解析
- flex3取html传过来的参数
- 利用JS获取传过来的参数
- 多少人忽略的细节--web.xml解析
- Android版本更新
- 一天一条Linux指令-swig
- jvm内存溢出分析
- HP-ASR机制介绍
- javaEE之-类反射直接封装前台传过来的参数
- tomcat和jenkins
- 习题4-7 RAID技术 UVa509
- Wowza服务器系列(3):试用wowza Stream Engine服务运行
- 升级Win10后Markdown Pad2启动报错‘Awesomium.Windows.Controls.WebControl’解决方法
- 第四组内部linux比赛命题
- operator delete的重载
- Centos 7 如何安装mysql server
- SSH参数说明