首页 > 基础资料 博客日记
JavaWeb学习-ServletAPI
2023-07-28 19:17:16基础资料围观530次
文章JavaWeb学习-ServletAPI分享给大家,欢迎收藏Java资料网,专注分享技术知识
1. servlet的生命周期:实例化、初始化、服务、销毁
在servlet初始化时候设置参数:
(1)获取config:
ServletConfig config = getServletConfig();
(2)获取初始化参数值:
String parameter = config.getInitParameter(key);
在web.xml中设置参数
<servlet>
    <servlet-name>Demo01Servlet</servlet-name>
    <servlet-class>com.servlet.Demo01Servlet</servlet-class>
    <init-param>
        <param-name>hello</param-name>
        <param-value>world</param-value>
    </init-param>
    <init-param>
        <param-name>username</param-name>
        <param-value>jom</param-value>
    </init-param>
</servlet>
<servlet-mapping>
    <servlet-name>Demo01Servlet</servlet-name>
    <url-pattern>/Demo01</url-pattern>
</servlet-mapping>
或者在servlet.java中设置(使用注解的方式)
@WebServlet(urlPatterns = {"/demo01"},
        initParams = {
            @WebInitParam(name="hello",value = "world"),
                @WebInitParam(name="username",value = "jom")
        })
2. ServletContext和<context-param>
servlContext的作用:(用户可以共享)
1.获取web的上下文路径
  String getContextPath();
2.获取全局的参数
  String getInitParameter(String name);
  Enumeration getInitParameterNames();
3.和域对象相关的
  void setAttribute(String name,Onject object);
  Object getAttribute(String name);
  void removeAttribute(String name);
  域对象(域对象就是在不同资源之前来共享数据,保存数据,获取数据)
  ServletContext是我们学习的第一个域对象(Servlet共有三个域对象ServletContext、HttpServletRequest、HttpSession)
4. 请求转发的
  RequestDispatcher getRequestDispatcher(String path);
  在Servlet跳转页面:
  4.1请求重定向(你找我借钱,我没有,你自己去找他借钱)
        response.sendRedirect("test.jsp");//重定向到test.jsp
        
    1.地址栏会改变,变成重定向到的地址
    2.可以跳转到项目内的资源,也可以跳转项目外的资源
    3.浏览器向服务器发出两次请求,那么不能使用请求来作为域对象来共享数据。
  4.2请求转发(你找我借钱,我没有,我帮你去向他借钱)
request.getRequestDispatcher("test.jsp").forward(request, response);//转发到test.jsp
    1.地址栏不会改变
    2.只能跳转到项目内的资源,不能跳转项目外的资源。
    3.浏览器向服务器发出一次请求,那么可以使用请求作为域对象共享数据。
5.读取web项目的资源文件
  String getRealPath(String path);
  InputStream getResourceAsStream(String path);
  URL getResource(String path);
获取servletcontext的方法:
(1)在初始化方法中:获取servletcontext,获取初始化参数值
ServletContext servletContext = getServletContext();
在web.xml中配置
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:applicationContext.xml</param-value>
    </context-param>
</web-app>
(2)在服务方法中也可以通过request对象获取:
request.getServletContext();
request.getSession().getServletContext(); //通过session获取
获取初始化的值:
String contextConfigLocation = servletContext.getInitParameter("contextConfigLocation");
文章来源:https://www.cnblogs.com/Joyce-mi7/p/16504946.html
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
标签:

