cookie和javaBean

一,cookie
cookie是Web服務器保存在客戶端的一系列文本信息
cookie的作用
對特定對象的追蹤
統計網頁瀏覽次數
簡化登錄
安全性能
容易信息泄露

常用方法:
    方法名                         說明
    void setMaxAge(int expiry)          設置cookie的有效期,以秒爲單位
    String getMaxAge()              獲取cookie的有效期,以秒爲單位
    void setValue(Stringh newValue)         在cookie創建後,對cookie進行賦值
    String getName()                獲取cookie的名稱
    String getValue()               獲取cookie的值

eg:
cookieTest.jsp 設置cookie

<%
    Cookie c=new Cookie("uname","asd");
    //如果不設置cookie的有效期,那麼cookie不會在客戶端保存
    c.setMaxAge(60);
    response.addCookie(c);
    response.sendRedirect("after.jsp");
%>

//after.jsp 獲取cookie
<%
    Cookie[] c=request.getCookies();
    String value="";
    for(int i=0;i<c.length;i++){
        String cname=c[i].getName();
        if(cname.equals("uname")){
             value=c[i].getValue();
        }
    }

%>
value:<%=value %>

二,JavaBean
在前面的開發中使用純jsp開發,其實沒有很好的體現Java的面向對象思想。
大量的代碼重複混亂。在Java WEB開發中如果想要編寫結構良好的代碼,則需要使用JavaBean。

JavaBean就是使用Java語言開發的一個可重用的組件(遵循一定規則的普通Java類),在JSP中可以使用JavaBean減少重複的代碼,使得整個JSP代碼的開發變得更加簡潔。

JSP中使用JavaBean的優點:
    1.實現界面和Java代碼分離,這樣便於日後維護和擴展
    2.可以解決代碼重複編寫,減少代碼冗餘

JavaBean分爲兩類:   
    封裝數據
    封裝業務
JavaBean需要遵循的規則
    1.所有的類必須放到一個包中,在WEB項目中沒有包的類是不存在的。
    2.所有類必須聲明爲public class,這樣才能被外界訪問
    3.所有屬性必須封裝,及使用private修飾
    4.如果屬性要被外界訪問,則必須提供setter和getter方法
    5.一個JavaBean至少存在一個無參的構造方法,此方法提供給JSP中的標籤使用。

如果在一個類中只包含屬性、setter、getter方法,那個這個類就稱爲簡單的JavaBean(封裝數據),還有人稱他們:
    POJO:(Plain Orinary Java Objects):簡單Java對象
    VO:(Value Object):傳輸值的對象
    TO:(Transfers Object):傳輸對象
<jsp:useBean id=“實例名稱” class=“完整類名” scope=“作用域">
</jsp:useBean>   


<jsp:setProperty  name=“bean實例名” property="*" />
或 
<jsp:setProperty  name=“bean實例名” property=“bean中屬性名”                 /><jsp:setProperty  name=“bean實例名” property=“屬性名“ value=“屬性值”/>

<jsp:getProperty name=“bean實例名稱” property=“屬性名稱" /> 
javaBeanTest.jsp
```

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>

    <title>My JSP 'javaBeanTest.jsp' starting page</title>
  </head>

  <body>
    姓名:<jsp:getProperty name="p1" property="name" /> <br/>
    性別:<jsp:getProperty name="p1" property="sex" /> <br/>
    年齡:<jsp:getProperty name="p1" property="age" /> <br/>   
    愛好:<jsp:getProperty name="p1" property="hb" /> <br/>   
  </body>
</html>
base.vo.Person

package base.vo;

public class Person {
        private String name;
        private String sex;
        private int age;
        private String hb;

        public String getHb() {
            return hb;
        }
        public void setHb(String hb) {
            this.hb = hb;
        }
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public String getSex() {
            return sex;
        }
        public void setSex(String sex) {
            this.sex = sex;
        }
        public int getAge() {
            return age;
        }
        public void setAge(int age) {
            this.age = age;
        }

}


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