JavaBean与表单

样例:

输入表单:

<html>
<head><title>欢迎来到望星空</title></head>
<body>
	<form action="input_bean.jsp" method="post">
		姓名:<input type="text" name="name"><br>
		年龄:<input type="text" name="age"><br>
		<input type="submit" value="提交">
		<input type="reset" value="重置">
	</form>
</body>
</html>
接收内容1:
<%@ page contentType="text/html" pageEncoding="GBK"%>
<%@ page import="blog.csdn.joywy.SimpleBean"%>
<html>
<head><title>欢迎来到望星空</title></head>
<body>
<%
	request.setCharacterEncoding("GBK"); 
	SimpleBean simple = new SimpleBean();
	simple.setName(request.getParameter("name"));
	simple.setAge(Integer.parseInt(request.getParameter("age")));
%>
<h3>姓名:<%=simple.getName()%></h3>
<h3>年龄:<%=simple.getAge()%></h3>
</body>
</html>
接收内容2:
<%@ page contentType="text/html" pageEncoding="GBK"%>
<html>
<head><title>欢迎来到望星空</title></head>
<body>
<% request.setCharacterEncoding("GBK"); %>
<jsp:useBean id="simple" scope="page" class="blog.csdn.joywy.SimpleBean"/>
<jsp:setProperty name="simple" property="*"/>
<h3>姓名:<%=simple.getName()%></h3>
<h3>年龄:<%=simple.getAge()%></h3>
</body>
</html>

比起分别设置属性的内容方便多了,而且可以自动将String类型的数据变为int类型的数据,并自动设置到age属性中。

<jsp:setProperty>标签表示为JavaBean中的属性设置内容,其中一共有两个属性。

1.name:对应着<jsp:useBean>中声明的id属性,表示使用指定的JavaBean。

2.property:表示要操作的属性,“*”表示自动匹配

在进行自动匹配时,实际上匹配的是参数名称(这里的参数名称是通过表单控件指定的)是否与属性的名称相符合,如果符合则会自动调用对应的setter进行内容的设置。在编写简单Java类的时候,类中的属性必须封装,封装之后的属性需要按照指定的格式编写对应的setter、getter方法。

注:

1.以上还是通过反射完成的操作。在反射机制中可以通过getMethod()方法取得一个指定名称方法的Method对象,在这里传入的是属性的名称,可以根据属性名称找到对应的setter()方法,完成属性内容的设置。

2.age的内容必须是数字,由于<jsp:setProperty>的操作中可以自动将输入的字符串变为int型的数据,所以此时输入的数据必须全部由数字组成,否则将出现"NumberFormatException"。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值