第一种通过手工输入完成:
html页面:input_bean.htm
<html>
<head></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>
jsp页面:input_bean.jsp
<%@page contentType="text/html" pageEncoding="GBK"%>
<%@ page import="cn.mldn.lxh.demo.SimpleBean"%>
<html>
<head></head>
<body>
<%
request.setCharacterEncoding("GBK");
SimpleBean simple = new SimpleBean();
simple.setName(request.getParameter("name"));
simple.setAge(Integer.parseInt(request.getParameter("age")));
%>
<h1>姓名:<%=simple.getName()%></h1>
<h1>年龄:<%=simple.getAge()%></h1>
</body>
</html>
第二种通过标签来完成:<jsp:userBean> 、<jsp:setProperty>
html页面同上
jsp页面如下:
<%@page contentType="text/html" pageEncoding="GBK"%>
<html>
<head></head>
<body>
<%request.setCharacterEncoding("GBK");%>
<jsp:useBean id="simple" scope="page" class="cn.mldn.lxh.demo.SimpleBean"/>
<jsp:setProperty name="simple" property="*"/>
<h1>姓名:<%=simple.getName()%></h1>
<h1>年龄:<%=simple.getAge()%></h1>
</body>
</html>
通过<jsp:setProperty>标签就可以完成所有请求参数的设置。而且可以自动将String类型转化为Int类型。这个标签的语法如下:
里面的name属性就是上面<jsp:useBean id="simple" scope="page" class="cn.mldn.lxh.demo.SimpleBean"/>id属性
property属性则是设置里面的属性内容,如果为*则表示自动匹配,与表单相匹配
如果让表单的参数自动设置到javabean中的话,就需要让参数与属性相一致。
总结:通过javaBean可以完成参数设置的问题
完成的原理依然是反射机制;