03---javabean02(javabean与表单)

来源:互联网 发布:中国乡村 萧公权知乎 编辑:程序博客网 时间:2024/06/05 11:11

按原始的办法,即手动的去生成SimpleBean对象;
input_bean.jsp:
 <%@ page contentType="text/html" pageEncoding="gbk"%>
 <%@ page import="org.lid.demo.SimpleBean"%>
 <html>
 <head><title>这是测试</title></head>
 <body>
  <%
   request.setCharacterEncoding("gbk");
   SimpleBean simple=new SimpleBean();
   String name=request.getParameter("name");
   String age=request.getParameter("age");
   simple.setName(name);
   simple.setAge(Integer.parseInt(age));
  %> 
   
  <h3>姓名:<%=simple.getName()%></h3>
  <h3>年龄:<%=simple.getAge()%></h3>
 </body>
 </html>

input_bean.html:
 <html>
 <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>

第二种方法:
 <%@ page contentType="text/html" pageEncoding="gbk"%>
 <html>
 <head><title>这是测试</title></head>
 <body>
  <%
   request.setCharacterEncoding("gbk");
  %> 
  <jsp:useBean id="simple" scope="request" class="org.lid.demo.SimpleBean"/>
  <jsp:setProperty name="simple" property="*"/>
  <h3>姓名:<%=simple.getName()%></h3>
  <h3>年龄:<%=simple.getAge()%></h3>
 </body>
 </html>
 通过一个<jsp:setProperty>标签就可以完成所有参数的自动设置,而且可以自动将String类型
 转换成int类型,这个标签的语法如下:
  <jsp:setProperty>:表示操作指定javabean中属性,里面定义了两个属性
   ·name:表示的是使用的javabean中的id的定义
   ·property:表示的是设置里面的属性内容,如果为*则表示自动匹配,与表达相匹配; 
  <jsp:setProperty>表示javabean设置属性,name指的是为那个javabean对象设置属性,
   而property指的是javabean对象的属性与表单中的属性匹配;
 注意:表单中的属性必须与javabean中属性名字是相同的;
 使用这种操作,实际上最终还是调用了javabean中的setter和getter方法;
 当然,这种操作的原理依然是反射机制,通过反射机制可以将指定属性名称的setter方法进行调用;