欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

JSP教程基础篇之HTML表单演示

来源: javaer 分享于  点击 18707 次 点评:104

JSP教程基础篇之HTML表单演示


JSP教程之HTML表单

大多数情况下,商业的网站都要有一些表单,比如说输入一下消费者的姓名啦,地址啦,或者敲一个词来用搜索引擎来查一下啦,或者市场人员从来访者处收集一些数据供参考什么的。

那些表单传回的数据怎么处理的?

来访者通过表单向JSP引擎输入了数据,并保存在了request对象中,那么接下来怎么办?

首先,JSP引擎把存放在request对象中的数据发到JSP页面指定的服务器端的组件JavaBeans组件, servlet,或者enterprise bean),组件收到这些个数据以后,有可能再存这些数据到数据库或者其他的地方存放起来,同时,返回一个response对象给JSP引擎。JSP引擎再把response对象传给JSP页面,这时的页面包含了定义好的格式和从服务器端得到的数据。这时JSP引擎和Web服务器再发送一个整理好的完整的页面给客户,也就是这们在浏览器上看到的结果。客户和服务器间的通信协议可以用HTTP,当然也可以用其他的。

Request和Response对象在你制作的JSP原代码中起作用。到于request对象到底怎么用,我要在接下来详细的讲给你听。

如何创建表单,那么本JSP教程将给你展现一个步骤:

用HTML定义一些有代表性的表单做成一个JSP文件,然后用JSP标签在表单和服务器端对象通常都用Bean)传递数据。一般情况下是这么干的:

1、 写JSP原文件,创建一些HTML的表单并命名。

2、 在Java文件里写Bean,定义属性,GET或者SET方法来配合已经被你指定好名字的表单。

3、 回到JSP原文件中,增加标签来创建一个或者调用一个现成的Bean。

4、 增加标签设置HTML表单中需要SET方法的Bean的属性。

5、 增加标签设置HTML表单中需要GET方法的Bean的属性。

6、 如果需要处理更多的用户数据,用request对象。

说了半天你可能看不懂,其实看一个例子你就懂了。

先看一个简单的hello的例子吧:

这段程序其实还是计算机程序里那个最经典的“hello,world”的程序,只不过呢,我使他挠了一点弯儿,使他看起来比较智能和复杂。首先你输入你的名字,然后Duke跟你说:“hello!”

JSP源码

  1. dukebanner.html   
  2.  
  3. ﹤table border="0" width="400" cellspacing="0" cellpadding="0"﹥   
  4.  
  5. ﹤tr﹥   
  6.  
  7. ﹤td height="150" width="150"﹥   ﹤/td﹥   
  8.  
  9. ﹤td width="250"﹥   ﹤/td﹥   
  10.  
  11. ﹤/tr﹥   
  12.  
  13. ﹤tr﹥   
  14.  
  15. ﹤td width="150"﹥   ﹤/td﹥   
  16.  
  17. ﹤td align="right" width="250"﹥   
  18. ﹤img src="duke.waving.gif"﹥ ﹤/td﹥   
  19.  
  20. ﹤/tr﹥﹤/table﹥﹤br﹥   
  21.  
  22. 主JSP文件:hellouser.jsp   
  23.  
  24. ﹤%@ page import="hello.NameHandler" %﹥   
  25.  
  26. ﹤jsp:useBean id="mybean" scope="page" class="hello.NameHandler" /﹥   
  27.  
  28. ﹤jsp:setProperty name="mybean" property="*" /﹥   
  29.  
  30. ﹤html﹥   
  31.  
  32. ﹤head﹥﹤title﹥Hello, User﹤/title﹥﹤/head﹥   
  33.  
  34. ﹤body bgcolor="#ffffff" background="background.gif"﹥   
  35.  
  36. ﹤%@ include file="dukebanner.html" %﹥   
  37.  
  38. ﹤table border="0" width="700"﹥   
  39.  
  40. ﹤tr﹥﹤td width="150"﹥   ﹤/td﹥   
  41.  
  42. ﹤td width="550"﹥   
  43.  
  44. ﹤h1﹥My name is Duke. What's yours?﹤/h1﹥﹤/td﹥﹤/tr﹥   
  45.  
  46. ﹤tr﹥﹤td width="150"   ﹤/td﹥﹤td width="550"﹥   
  47.  
  48. ﹤form method="get"﹥   
  49.  
  50. ﹤input type="text" name="username" size="25"﹥   
  51.  
  52. ﹤br﹥   
  53.  
  54. ﹤input type="submit" value="Submit"﹥   
  55.  
  56. ﹤input type="reset" value="Reset"﹥   
  57.  
  58. ﹤/td﹥﹤/tr﹥   
  59.  
  60. ﹤/form﹥   
  61.  
  62. ﹤/table﹥   
  63.  
  64. ﹤%   
  65.  
  66. If ( request.getParameter("username") != null )   
  67.  
  68. {   
  69.  
  70. %﹥   
  71.  
  72. ﹤% @ include file="response.jsp" %﹥   
  73.  
  74. ﹤% }   
  75.  
  76. %﹥   
  77.  
  78. ﹤/body﹥﹤/html﹥   
  79.  
  80. 回应文件:response.jsp   
  81.  
  82. ﹤table border="0" width="700"﹥   
  83.  
  84. ﹤tr﹥   
  85.  
  86. ﹤td width="150"﹥   ﹤/td﹥   
  87.  
  88. ﹤td width="550"﹥   
  89.  
  90. ﹤h1﹥Hello, ﹤jsp:getProperty name="mybean" property="username" /﹥!   
  91.  
  92. ﹤/h1﹥   
  93.  
  94. ﹤/td﹥   
  95.  
  96. ﹤/tr﹥   
  97.  
  98. ﹤/table﹥   
  99.  
  100. 处理数据的Bean:(namehandler.java)   
  101.  
  102. package hello;   
  103.  
  104. public class NameHandler   
  105.  
  106. {   
  107.  
  108. private String username;   
  109.  
  110. public NameHandler() {   
  111.  
  112. username = null;   
  113.  
  114. }   
  115.  
  116. public void setUsername( String name ) {   
  117.  
  118. username = name;   
  119.  
  120. }   
  121.  
  122. public String getUsername() {   
  123.  
  124. return username;   
  125.  
  126. }   
  127.  
  128. }  

建立HTML表单

一个HTML的窗分为三个部分:

相关栏目:

用户点评