離弦之Ray

            BlogJava :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
            55 Posts :: 0 Stories :: 33 Comments :: 0 Trackbacks
           

          servlet 基本結(jié)構(gòu)

          public class ServletClass extends HttpServlet {

          public void doGet(HttpServletRequest request, HttpSevletResponse response)

          throws ServletException,IOException{

          //Use “request” to read incoming HTTP headers


          //Use “response” to specify the HTTP response status


          //use “out” to send content to browser

          PrintWriter out = response.getWriter();

          }

          }

          如果希望servlet對(duì)GETPOST請(qǐng)求采用同樣的行動(dòng),只需要讓doGet調(diào)用doPost,反之亦然。
          值得注意的是doGetdoPost都要接收以上兩種類型的參數(shù)。


          servlet 處理表單數(shù)據(jù)

          表單數(shù)據(jù)

          1)使用FORM來創(chuàng)建HTML表單

          <FORM ACTION="..."> 其中 "..."指的就是處理表單的servlet 或者JSP

          2)使用輸入元素收集用戶數(shù)據(jù)

          <INPUT TYPE="TEXT" NAME="...">

          3)在接近表單的尾部放置提交按鈕

          <INPUT TYPE="SUBMIT">

          讀取表單數(shù)據(jù)

          有三種情況:①request.getParameter②request.getParameterValues

          request.getParameterNames

          getParameter對(duì)應(yīng)于單個(gè)值的讀取,如果有這個(gè)參數(shù)但沒值,那就返回空的String;如果沒有這個(gè)參數(shù),則返回null

          getParameterValues對(duì)應(yīng)于同一個(gè)參數(shù)的多個(gè)值,返回的是一個(gè)數(shù)組,是這個(gè)參數(shù)值的集合。如果不存在這個(gè)參數(shù)名,那就返回一個(gè)null;如果這個(gè)參數(shù)只有一個(gè)值,那就返回一個(gè)只有一個(gè)元素的數(shù)組。

          getParameterValues返回的是所有參數(shù)的一個(gè)Enumeration,如果沒有參數(shù),那返回的就是一個(gè)空的Enumeration而不是null。同時(shí)這個(gè)Enumeration中的次序是亂序的。

          要對(duì)參數(shù)為null或者為空String的情況作出相應(yīng)的處理

          if((param==null)||(param.trim().equals(""))){...}


          RequestDispatcher

          下面的代碼:

          RequestDispatcher dispatcher = request.getRequestDispathcer s(address);

          dispatcher.forward (request,response);



          JSP

          JSP直接插入表達(dá)式

          <%= Java Expression%> 比如:<%= new java.util.Date() %>

          其實(shí),JSP在后臺(tái)都被轉(zhuǎn)化成servlet,所以servlet JSP沒有本質(zhì)的區(qū)別。


          scriptlet

          說白了,就是直接在JSP頁(yè)面中插入java代碼,我不是很喜歡,太亂了。舉個(gè)例子:

          <% if(Math.random()<0.5) {%>

          <H1>Have a <I>nice</I> day!</H1>

          <% } else {%>

          <H1>Have a <I>lousy</I>day!</H1>

          <% } %>

          JSP page指令

          import 屬性

          <%@ import = "package.class"%>

          <%@ import = "package.class1,package.class2...package.classN"%>

          contentTypepageEncoding屬性

          <%@ page contentType = "someMimeType; charset = someCharacterSet"%>

          比如<%@ page contentType = "application/vnd.ms-excel"%>

          pageEncoding指的是字符集

          比如設(shè)置成日語(yǔ):<%@ page pageEncoding="Shift_JIS"%>


          session屬性

          控制頁(yè)面是否參加HTTP會(huì)話

          <%@ page session = "true"%>


          isELIgnored屬性

          是否忽略JSP2.0表達(dá)式語(yǔ)言

          <%@ page isELIgnored = "ture"%>


          此外還有bufferautoFlusherrorPageisErrorPageisThreadSafeextendslanguage屬性


          JSP中使用JavaBean

          基本要掌握三個(gè)語(yǔ)句

          <jsp: useBean id="beanName" class="package.class"/>

          <jsp:getProperty name = "beanName" property="propertyName"/>

          <jsp:setProperty name ="beanName" property="propertyName" value="propertyValue"/>






          posted on 2007-10-14 22:57 離弦之ray的技術(shù)天空 閱讀(620) 評(píng)論(0)  編輯  收藏 所屬分類: J2EE

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 怀远县| 昔阳县| 眉山市| 大化| 安西县| 靖西县| 朝阳市| 如皋市| 定远县| 淮阳县| 吉水县| 确山县| 抚宁县| 宾川县| 信阳市| 仙桃市| 四平市| 张掖市| 阜新| 灵宝市| 聂拉木县| 安远县| 神木县| 宣化县| 靖安县| 广东省| 习水县| 富裕县| 青州市| 许昌县| 来凤县| 德格县| 友谊县| 漠河县| 连江县| 永春县| 扶余县| 朝阳区| 时尚| 高陵县| 万盛区|