JavaBean 是使用 Java 语言开发的一个可重用的组件,可以使用 JavaBean 减少重复代码,开发更简洁。那javabean组件提交表单的代码怎么写?下面来我们就来给大家讲解一下。
package com.Util; import java.lang.reflect.Method; import java.util.Date; import javax.servlet.http.HttpServletRequest; import org.apache.commons.lang3.ArrayUtils; import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.math.NumberUtils; import org.apache.commons.lang3.time.DateUtils; public class Request2BeanUtil { /**自动匹配参数赋值到实体bean中 * @param bean * @param request */ public static void populate(Object bean, HttpServletRequest request) { Class clazz = bean.getClass(); Method ms[] = clazz.getDeclaredMethods(); String mname; String field; String fieldType; String value; Object obj = null; for (Method m: ms) { mname = m.getName(); if (!mname.startsWith("set") || ArrayUtils.isEmpty(m.getParameterTypes())) { continue; } try { field = mname.toLowerCase() .charAt(3) + mname.substring(4, mname.length()); value = request.getParameter(field); //注意此处要求form表单中的属性名字要求与javabean的字段名字相同 if (StringUtils.isEmpty(value) || value == null) { continue; } fieldType = m.getParameterTypes()[0].getName(); //以下可以确认value为String类型 if (String.class.getName() .equals(fieldType)) { m.invoke(bean, (String) value); } else if (Integer.class.getName() .equals(fieldType) && NumberUtils.isDigits((String) value)) { m.invoke(bean, Integer.valueOf((String) value)); } else if (Long.class.getName() .equals(fieldType) && NumberUtils.isDigits((String) value)) { m.invoke(bean, Long.valueOf((String) value)); } else if (Date.class.getName() .equals(fieldType)) { m.invoke(bean, DateUtils.parseDate((String) value, "yyyy-MM-dd", "yyyy-MM-dd HH:mm:ss")); } else { m.invoke(bean, value); } } catch (Exception e) { e.printStackTrace(); continue; } } } }
如何处理表单数据?
操纵HTML表单步骤:
写JSP原文件,创建一些HTML的表单并命名。
在Java文件里写Bean,定义属性,GET或者SET方法来配合已经被指定好名字的表单。
回到JSP原文件中,增加jsp:useBean标签来创建一个或者调用一个现成的Bean。
增加jsp:setProperty标签设置HTML表单中需要SET方法的Bean的属性。
增加jsp:getProperty标签设置HTML表单中需要GET方法的Bean的属性。
如果需要处理更多的用户数据,用request对象。
eg1. 用户通过form表单提交数据,提交的数据被处理后,再在Jsp文件中显示处理
usingGetParameter.html让用户输入个人信息;
usingGetParameter.jsp将其一一输出;
eg2. 使用Jsp+JavaBean形式处理表单
showInfo.jsp让用户输入个人信息;
服务器取得这些信息之后,利用show.java这个Javabean中的方法将其一一输出;
另外,通常一个标准的JavaBean有以下特征(编写规范):
一定使用了package语句进行打包;
JavaBean是一个public类型的类;
有一个无参数的构造方法;
属性一般是私有的(即用private修饰);
对属性值xxx的获取有相应的getXxx()方法,并且此方法是公有的(即用public修饰),若要获取的属性xxx为boolean类型则可以使用isXxx()方法;
对属性值xxx的设置有相应的setXxx()方法,并且此方法也是公有的(即用public修饰);
在JavaBean语法中,实际上最大的特点就在于与表单的交互上,所以对于处理表单数据,大家一定要多操作几遍。最后大家如果想要了解更多其他工具教程知识,敬请关注奇Q工具网。
推荐阅读: