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;
        }

}


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