- 浏览: 2291202 次
- 性别:
- 来自: 成都
文章分类
- 全部博客 (357)
- J2EE (49)
- JavaScript (40)
- Spring (19)
- Struts (5)
- CSS (8)
- Hibernate (16)
- Java (67)
- DWR (4)
- JSON (3)
- XFIRE (1)
- Tomcat (1)
- Ant (2)
- 设计模式 (2)
- 经典收藏 (2)
- JSP (10)
- Linux (0)
- WebLogic (11)
- myeclipse (13)
- Buffalo (4)
- 文件上传相关 (1)
- oracle (33)
- html (6)
- JSTL (3)
- SVN (2)
- GIT (1)
- 孙卫琴(Java网络编程精解) (1)
- DOM4J (2)
- Swing (1)
- AJAX (1)
- Eclipse (5)
- 日志组件 (3)
- PowerDesigner (1)
- Jquery (22)
- IT技术开发相关网址 (1)
- Nutz (1)
- 其它 (1)
- Velocity (3)
- WebService (1)
- MySql (2)
- Android (1)
- Maven (2)
- Quartz (11)
- Lucene (1)
- springsource (1)
- Junit (1)
- Activiti (0)
最新评论
-
yzlseu:
拼凑,没有营养
Activiti进阶—分配组任务 -
zhangsenhao:
非常赞!代码很清楚
SpringMVC3.0+MyIbatis3.0(分页示例) -
xiamw2000:
分页写得不对,应该是 : order by ${orderNa ...
SpringMVC3.0+MyIbatis3.0(分页示例) -
sheertewtw:
...
SpringMVC:上传与下载 -
kingtoon:
...
XSS之xssprotect
背景:
经常要从request等对象取出值来赋入bean中,如果不用MVC框架的绑定功能的话,麻烦
一 参考资料
1 http://jc-dreaming.iteye.com/blog/563893
2 http://www.iteye.com/topic/76043
3 http://xubindehao.iteye.com/blog/754807
4 http://javafenger.iteye.com/blog/96829
5 http://www.kaila.com.cn/space.php?uid=7114&do=blog&id=458578
6 http://blog.csdn.net/zsx923/archive/2010/01/19/5210325.aspx
二 代码示例
三 使用common beanutils组件
代码:
User user = new User();
BeanUtils.populate(user,request.getParameterMap());
经常要从request等对象取出值来赋入bean中,如果不用MVC框架的绑定功能的话,麻烦
一 参考资料
1 http://jc-dreaming.iteye.com/blog/563893
2 http://www.iteye.com/topic/76043
3 http://xubindehao.iteye.com/blog/754807
4 http://javafenger.iteye.com/blog/96829
5 http://www.kaila.com.cn/space.php?uid=7114&do=blog&id=458578
6 http://blog.csdn.net/zsx923/archive/2010/01/19/5210325.aspx
二 代码示例
import java.beans.IntrospectionException; import java.beans.PropertyDescriptor; import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.Enumeration; import javax.servlet.http.HttpServletRequest; import org.apache.commons.beanutils.BeanUtils; public class RequestToBean { /** * ConvertUtilsBean convertUtils = new ConvertUtilsBean(); * DateConverter dateConverter = new DateConverter(); * convertUtils.register(dateConverter,Date.class); * */ /** * @param <T> * @param newSource 现将要设置新值的对象 * @param source 源数据对象 */ public static <T> void beanConvert(T newSource,T source){ try { BeanUtils.copyProperties(newSource,source); } catch (IllegalAccessException e) { e.printStackTrace(); } catch (InvocationTargetException e) { e.printStackTrace(); } } /** * @param request 请求对象 * @param obj 要设置Bean的类型,传入试为: Bean.class * @return */ @SuppressWarnings("unchecked") public static <T> T getBeanToRequest(HttpServletRequest request,Class<T> clazz){ //获取页面所有的请求参数名称 Enumeration<String> enume = request.getParameterNames(); T beanObj = getObjectByClass(clazz); try{ while(enume.hasMoreElements()){ //参数名称 String propertyName = enume.nextElement(); //判断是否存在此属性 if(isCheckBeanExitsPropertyName(clazz,propertyName)){ //获取请求值 Object propertyValue = request.getParameter(propertyName); setProperties(beanObj,propertyName,propertyValue); } } }catch(Exception e){} return beanObj; } private static <T> T getObjectByClass(Class<T> clazz){ T t = null; try { t = clazz.newInstance(); } catch (InstantiationException e1) { e1.printStackTrace(); } catch (IllegalAccessException e1) { e1.printStackTrace(); } return t; } /** * @param clazz Class对象 * @param propertyName 属性名称 * @return true || false 检查对象中是否存在该属性名称 */ private static boolean isCheckBeanExitsPropertyName(Class<?> clazz,String propertyName){ boolean retValue = false; try { Field field = clazz.getDeclaredField(propertyName); if(null != field){ retValue = true; } } catch (NoSuchFieldException e) { Out.println("类: " + clazz.getSimpleName()+",不存在属性名: "+propertyName+" ,详细错误信息: "+e.getMessage()); } return retValue; } /** * 设置字段值 * @param obj 实例对象 * @param propertyName 属性名 * @param value 新的字段值 * @return */ public static void setProperties(Object object, String propertyName,Object value) throws IntrospectionException, IllegalAccessException, InvocationTargetException { PropertyDescriptor pd = new PropertyDescriptor(propertyName,object.getClass()); Method methodSet = pd.getWriteMethod(); methodSet.invoke(object,value); } }
三 使用common beanutils组件
代码:
User user = new User();
BeanUtils.populate(user,request.getParameterMap());
发表评论
-
java json-lib & jQuery & jsonp
2016-06-30 11:31 834参考链接: 1、http://hanqunfeng.iteye ... -
随机分配算法(Intege)
2016-01-08 13:05 5207参考资料: http://blog.csdn.net/yaer ... -
XSS之xssprotect
2012-12-07 23:03 29501参考资料 1 跨网站脚本 ... -
Java之Thread(线程题)
2011-10-31 12:33 1980特别说明:java线程相关的参考了张孝祥老师的代码 参考资料 ... -
Java之ThreadLocal(Synchronized)
2011-10-31 10:10 2698参考资料 1 深入研究java.lang.ThreadLoca ... -
Java之synchronized,wait,notify结合运用示例
2011-10-26 11:54 5941场景一:要求二个线程各 ... -
Java之synchronized深入应用
2011-10-23 08:03 1950参考资料 1 java synchronized详解 http ... -
Java之Timer入门
2011-10-11 15:32 1700参考资料 1 java中timer用 ... -
Java之线程(匿名内部类)
2011-10-10 16:36 164431 Thread对象 Thread t = new Thr ... -
Java之线程(join)
2011-10-10 15:39 1487运用场景:多个线程之间 ... -
Java之线程(synchronized,wait(),notify(),notifyAll())
2011-10-10 15:03 3260参考资料 Java多线程入门大全(适用于有一定基础者) htt ... -
Java之线程(sleep,线程名)
2011-10-10 13:09 9720参考资料 1 Java线程:创建与启动 http://lava ... -
Java之线程入门
2011-10-10 11:11 1540参考资料 1 Java线程:概 ... -
java之表反向生成类
2011-09-23 16:41 3489环境:XP+JDK1.5+Oracle10g 注意事项 1 请 ... -
java之线程, NIO学习资料
2011-09-19 12:13 1145Concurrent In Java 6 第一部分 集合 ... -
Java之BigDecimal
2011-09-15 10:12 18041参考资料 1 java.math.BigDecimal的用法 ... -
java.lang.OutOfMemoryError异常解决方法
2011-08-27 16:47 2117转载:java.lang.OutOfMemoryError异常 ... -
Jcom之jp.ne.so_net.ga2.no_ji.jcom.JComException: createInstance() failed HRESULT=
2011-08-25 12:33 11753参考资料 java应用jcom将word转pdf http:/ ... -
Quartz之AnnualCalendar
2011-08-11 17:14 5825问题1 我想排除一年中 ... -
Quartz之InterruptableJob
2011-08-11 11:03 11785问题1 由于业务需要,停止Quartz中正在执行的任务 Qua ...
相关推荐
3. `public class Convert`:定义名为`Convert`的公共类,这个类是JavaBean的核心,包含了两个主要的方法用于编码转换。 4. `public Convert() {}`:这是JavaBean的默认构造器,无参数,主要用于实例化对象。 5-24...
当用户在网页上填写并提交表单后,这些数据通常需要被转换并赋值到对应的JavaBean对象中,以便于业务逻辑的处理和持久化操作。本教程将详细阐述如何通过表单数据为JavaBean对象赋值,以实现数据的高效管理。 首先,...
Map对象中包含了请求参数,键为参数名,值为参数值。工具类通过反射遍历JavaBean的所有公共属性,如果属性名与Map中的键匹配,就会调用对应的setter方法设置属性值。这样,我们只需要一行代码就能完成JavaBean的初始...
* `request`:JavaBean 的生命周期是当用户请求开启网页时,而当开启网页后,JavaBean 便自动结束。 * `session`:表示该 JavaBean 的生命周期是当 session 存在时,即起始于 session 建立时,而结束于用户未向系统...
JSP页面通过内置的对象如`request`、`response`、`session`等来接收和发送数据,而JavaBean则作为这些数据的载体,进行处理和转换。 DAO(Data Access Object)设计模式是JavaBean在这个模式中常见的一个组件,它...
JSP 文件包含HTML或XML代码,以及嵌入其中的Java代码,这些代码会被服务器解释并转换为Servlet,然后由Servlet处理请求并生成响应。 【描述】提到的"里面有可以运行在MyEclipse10运行的源代码"表明这个项目不仅提供...
在软件开发过程中,特别是在Web应用程序的开发中,经常会遇到需要将表单提交的数据绑定到JavaBean对象上的需求。这可以通过多种方式实现,例如使用Spring MVC等框架的自动绑定特性,或者通过自定义的方法手动实现。...
如果JavaBean的作用域设置为`request`,那么当新的请求到来时,原有的JavaBean实例将不再有效,系统会为新请求创建一个新的实例。 #### 三、JavaBean在实际项目中的应用 JavaBean不仅在前端页面中有着广泛的应用,...
JSP提供了内置对象如request、response、session等,用于处理HTTP请求,管理用户会话,并与数据库交互。 **JavaBean**是Java语言编写的一种可重用组件,遵循一定的规范,通常用来封装业务逻辑。它们是符合JavaBeans...
在线书店(jsp+javabean)是一个基于Web的图书销售系统,主要利用JavaServer Pages (JSP) 技术和...在线书店项目提供了一个实际的场景,帮助你将理论知识转化为实践经验,更好地理解和掌握JSP和JavaBean的协作机制。
JavaBean组件是Java编程语言中的一种面向对象的组件模型,常用于构建可重用的软件模块,特别是在Web应用程序中,如JSP(JavaServer Pages)环境中。JavaBean遵循一定的规范,比如它必须拥有一个无参数的构造器,不...
JavaBean,另一方面,是Java编程中的一个标准,它是一种封装了业务逻辑的对象,通常用于数据存储和传输。在过滤器中,我们可能需要用到JavaBean来传递或存储过滤过程中的数据。例如,我们可以创建一个JavaBean来保存...
Servlet通过`doGet()`和`doPost()`方法来响应HTTP请求,并通过`request`和`response`对象获取和设置请求参数及发送响应。 **JavaBean** JavaBean是一种符合特定规范的Java类,通常用于封装数据和业务逻辑。在JSP+...
通过JSP的内置对象如`request`、`response`、`session`,可以获取和设置请求参数,管理会话状态。 JavaBean是Java编程语言中的一种组件模型,用于封装可重用的业务逻辑。在图书管理系统中,我们可以创建一个`...
4. **序列化**:许多JavaBean实现了Serializable接口,这使得对象可以被序列化,即转换为字节流,便于持久化或在网络间传输。 JavaBean在Web开发中的应用: 1. **视图层(View)**:在JSP(JavaServer Pages)中,...
当用户请求JSP页面时,服务器会将其转换为Servlet,然后执行生成的Servlet代码来生成响应。 **2. JSP基本结构** - **脚本元素**:包括`<scriptlet>`、`<declaration>`和`<expression>`。`<scriptlet>`用于编写任意...
**JSP+JavaBean+Servlet工程详解** 在深入学习如Struts2或Spring MVC这样的现代Web框架之前,了解和掌握基础的Servlet、JSP(JavaServer Pages)以及JavaBean技术至关重要。这些技术构成了Web开发的核心基础,对于...
JSP文件在运行时被转换为Servlet,然后由Web容器(如Tomcat)执行。在本实例中,JSP将用于显示商品信息、用户操作界面以及与JavaBean的交互。 **JavaBean** 是符合特定规范的Java类,通常用于封装数据和业务逻辑。...
JSP还定义了一些内置对象,比如request、response、session、application等,它们提供对Web服务器的直接访问。JSP常用的指令标签包括page、include和taglib,这些指令用于设置页面依赖属性、包含其他文件或者引入...
完成User类定义后,可以通过`BeanUtils.copyProperties(user, request.getParameterMap())`将请求参数复制到User对象中,然后可以通过User对象的getter方法获取并验证用户信息。 3. 提高项目可读性和易维护性 ...