servlet筆記(一)

1.經過WEB層處理,是B/S結構(瘦客戶端);
  未經WEB層處理是C/S結構。
2.客戶層(browser)--->WEB層(jsp/servlet)--->業務層(EJB)--->數據層(DBServer)
3.             GET                |              POST
  位置  地址後面追加    |          http header中
  長度  255                     |          無限制
  利弊  顯示密碼            |          安全
4.所有自定義servlet必須實現 javax.servlet.Servlet 接口,容器自動調用其中的方法。
5.生命週期:init()  <只創建一次,讓所有用戶訪問>
                       service()
                       destroy()
6.抽象類javax.servlet.GenericServlet:不和特定協議相關
                                  |
                                  |
  抽象類javax.servlet.http.HttpServlet:與http協議相關(大部分的時候用它繼承)
7.響應流程:service()接收到請求 ---->請求封裝到javax.servlet.ServletRequest對象中---->傳回service()

                    ---->service()解析 ---->寫到javax.servlet.ServletResponse對象中---->傳回client(javaI/O流)
8.得到當前webApplication對象
  ServletContext sc;----servlet屬性
  sc = this.getServletContext();----init()中寫
9.設置響應類型,字符集
  private static final String CONTENT_TYPE = "text/html; charset=GBK";-----servlet屬性
  response.setContentType(CONTENT_TYPE);----doGet()中寫 
10.如果用戶用form傳來中文數據,要加入 request.setCharacterEncoding("GB2312");--->doGet()的第一行
11.設置頁面刷新時間 response.setHeader("Refresh" , "5");
12.String name = request.getParameter("name");--->得到表單數據
    String[] hobby = request.getParameterValues("hobby");---注意返回類型是String[]
   if(hobby!=null){
   for(int i = 0;i < hobby.length; ++i){
   out.print(hobby[i]);
   }
   }

   String queryString = request.getQueryString();--->得到GET方法的上傳字符串 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章