Session读取操作

本文详细介绍了在Java Web开发中如何进行Session的读取操作,包括创建Session并读取,使用Person实体类作为Session键值,创建不同Session实例,以及Session的销毁方法。同时提到了配置web.xml和相关依赖的设置。

Session读取

1.创建一个Session 然后进行读取 ,再次创建一个进行读取
public class session extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
   //解决乱码问题
        req.setCharacterEncoding("Utf-8");
        resp.setCharacterEncoding("Utf-8");
        resp.setContentType("Text/html;charset=utf-8");
        //得到session
        HttpSession session = req.getSession();
        //给session存东西
        session.setAttribute("name",new Person("ws",12));
        //获取session的id
        String id = session.getId();
        //判断session是不是新创建的
        if(session.isNew()){
            resp.getWriter().write("session创建成功,id:"+id);
        }else{
             resp.getWriter().write("session已经在服务器上面创建了,id:"+id);
        }
}
2.创建的Session命名为Person实体类,需要无参构造
public class Person {
    private String name;
    private int age;

    public Person() {
    }

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    @Override
    public String toString() {
        return "Person{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }
}

3.创建Session2,对应的People实体类
 @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

 req.setCharacterEncoding("Utf-8");
        resp.setCharacterEncoding("Utf-8");
        resp.setContentType("Text/html;charset=utf-8");

        HttpSession session = req.getSession();
        Person name = (Person) session.getAttribute("name");//读取name内容
        System.out.println(name.toString());//实例化
}
4.创建Session3,将Session销毁
 @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    HttpSession session = req.getSession();
        session.removeAttribute("name");
        session.invalidate();//销毁Session
}
5.配置web.xml
  <servlet>
    <servlet-name>session</servlet-name>
    <servlet-class>com.ws.Servlet.session</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>session</servlet-name>
    <url-pattern>/session</url-pattern>
  </servlet-mapping>
  
  <servlet>
    <servlet-name>session2</servlet-name>
    <servlet-class>com.ws.Servlet.session2</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>session2</servlet-name>
    <url-pattern>/session2</url-pattern>
  </servlet-mapping>

  <servlet>
    <servlet-name>session3</servlet-name>
    <servlet-class>com.ws.Servlet.session3</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>session3</servlet-name>
    <url-pattern>/session3</url-pattern>
  </servlet-mapping>

6.pom.xml依赖
  <dependencies>
  <dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.11</version>
    <scope>test</scope>
  </dependency>
  <dependency>
    <groupId>javax.servlet.jsp</groupId>
    <artifactId>javax.servlet.jsp-api</artifactId>
    <version>2.3.3</version>
    <scope>provided</scope>
  </dependency>
  <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
  <dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>4.0.1</version>
    <scope>provided</scope>
  </dependency>
</dependencies>
7.来源
  1.学习内容来自狂神的视频
  2.TomCat9.0.62
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值