JAVA SERVLET 属性范围样例

package com.jeelearning.servlet;

import java.io.IOException;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

/**
 * Servlet implementation class SetAttributeServlet
 */
@WebServlet("/setAttribute")
public class SetAttributeServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;

    /**
     * @see HttpServlet#HttpServlet()
     */
    public SetAttributeServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        response.setCharacterEncoding("utf-8");
        response.setContentType("text/html;charset=utf-8");
        ServletContext servletctx = getServletContext();
        HttpSession session = request.getSession();

        servletctx.setAttribute("applicationAttribute", "应用范围属性");
        session.setAttribute("sessionAttribute", "会话范围属性");
        request.setAttribute("requestAttribute", "请求范围属性");

        RequestDispatcher view = request.getRequestDispatcher("getAttribute");
        view.forward(request, response);

    }

    /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        doGet(request, response);
    }

}
package com.jeelearning.servlet;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

/**
 * Servlet implementation class GetAttributeServlet
 */
@WebServlet("/getAttribute")
public class GetAttributeServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;

    /**
     * @see HttpServlet#HttpServlet()
     */
    public GetAttributeServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        response.setCharacterEncoding("utf-8");
        response.setContentType("text/html;charset=utf-8");
        ServletContext servletctx = getServletContext();
        HttpSession session = request.getSession();
        PrintWriter out = response.getWriter();

        out.println("应用范围属性: ");
        out.println(servletctx.getAttribute("applicationAttribute"));
        out.println("<br/>");
        out.println("会话范围属性: ");
        out.println(session.getAttribute("sessionAttribute"));
        out.println("<br/>");
        out.println("请求范围属性: ");
        out.println(request.getAttribute("requestAttribute"));
        out.println("<br/>");
    }

    /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        doGet(request, response);
    }

}

时间: 2024-09-23 14:25:46

JAVA SERVLET 属性范围样例的相关文章

JAVA的输入输出基本操作样例

这些类的继承关系有些类似,弄一个作为样例,理解一下其中的机制. package cc.openhome; import java.io.*; public class Member { private String number; private String name; private int age; public Member(String number, String name, int age) { this.number = number; this.name = name; thi

MariaDB:安装、配置、JAVA源代码样例

      MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品.在存储引擎方面,使用XtraDB来代替MySQL的InnoDB.         MariaDB由MySQL的创始人麦克尔·维德纽斯主导开发,他早前曾以10亿美元的价格,将自己创建的公司MySQL AB卖给了SUN,此后,随着SUN被甲骨文收购,MySQL的所有权也落入Oracle的手中.MariaDB名称来自麦克尔·维德纽斯的女儿玛丽亚(英语:Maria)的名字 1.设置yum源 参考:

ios开发之Swift - 反射(Reflection)的介绍与使用样例(附KVC介绍)

1,反射(Reflection) 对于C#.Java开发人员来说,肯定都对反射这个概念相当熟悉.所谓反射就是可以动态获取类型.成员信息,同时在运行时(而非编译时)可以动态调用任意方法.属性等行为的特性. 以Java上的两个知名框架(hibernate和spring)为例.hibernate的属性映射就是通过反射来赋值的,spring的bean的创建就是根据配置的class来反射构建的. 2,Objective-C 的 Runtime 在使用ObjC开发时很少强调其反射概念,因为ObjC的Runt

MaxCompute模板与样例

1. 简介 MaxCompute : 是一种快速.完全托管的数据仓库解决方案,用户可以通过SQL, MR, UDF等接口与其交互. MaxCompute Studio : 是MaxCompute平台提供的安装在开发者客户端的大数据集成开发环境(IDE),是用户与MaxCompute交互的高效工具. 代码模板:让用户更加高效的写一些固定模式的代码,简化很多重复的代码,以提高编码效率. 代码示例:一例胜千言,帮助用户快速熟悉语法,可参考示例编写自己的程序,快速上手. 代码模板和示例是用户熟悉新产品和

Java Servlet及Cookie的使用

cookie|servlet 本文介绍了Java Servlet编程所需的软件及环境配置.只要你有一台安装Windows 95/98了的PC机,便可以按照本文的步骤开发Servlet程序了.本文同时给出了通过Java Servlet向用户的硬盘写入和读取Cookie的方法及例程.通过它可以实现网上常见的个性化网页.网上购物篮.密码验证等. Java Servlet是运行于Web服务器上的Java代码,它可以接受用户请求,进行相应的处理,并向用户提供反馈.其作用类似于CGI程序,可以实现网页中很多

Java Servlet/Jsp多语言解决方案(一)

js|servlet|解决 Java Servlet/Jsp多语言解决方案 因为一直不信Java竟会有不能混排显示多国语言的BUG,这个周末研究了一下Servlet. Jsp的多国语言显示的问题,也就是Servlet的多字符集问题,由于我对字符集的概念还 不是很清晰所以写出的东西未必是准确的,我是这样理解Java中的字符集的:在运行时 ,每个字符串对象中存储的都是编码为UNICODE内码的(我觉得所有的语言中都是有相应 编码的,因为在计算机内部字符串总是用内码来表示的,只不过一般计算机语言中的字

Java Servlet API说明文档(2.1a版)(二)

servlet API对象的说明\r 这一部分包含了对Java Servlet API的全部类和接口的详细说明.这个说明与Javadoc API差不多,但是这份文档提供了更多的信息.API包含了两个软件包,十二个接口和九个类.软件包:javax.servlet 所包含的接口:RequestDispatcher:Servlet:ServletConfig:ServletContext:ServletRequest:ServletResponse:SingleThreadModel.所包含的类:Ge

Java Servlet 和 JSP入门教程(4)

js|servlet|教程|入门教程 Java Servlet 和 JSP教程(4) 3.3 输出HTML的Servlet 大多数Servlet都输出HTML,而不象上例一样输出纯文本.要输出HTML还有两个额外的步骤要做:告诉浏览器接下来发送的是HTML:修改println语句构造出合法的HTML页面. 第一步通过设置Content-Type(内容类型)应答头完成.一般地,应答头可以通过HttpServletResponse的setHeader方法设置,但由于设置内容类型是一个很频繁的操作,因

多线程分别定时读写同一个文件的样例

两个线程,一个每分钟写入当前时间到指定文件,另一个线程读出每分钟新写的内容. 使用简单的Thread.sleep技术实现定时 package test.thread; import java.io.BufferedReader; import java.io.File; import java.io.FileReader; import java.io.FileWriter; import java.util.Date; /** * 多线程读写同一个文件的样例. * * @author 赵学庆