小滴课堂-学习笔记:javaweb开发核心之应用上下文和JSP核心知识

33 篇文章 0 订阅
14 篇文章 0 订阅

logo 愿景:"让编程不再难学,让技术与生活更加有趣"


更多架构课程请访问 xdclass.net

目录

第1集 什么是应用上下文ServletContext

第2集 什么是JSP和Servlet的微妙关系知多少

干货文档


第1集 什么是应用上下文ServletContext

简介:讲解Javaweb作用域对象介绍和ServletContext讲解

 

  • 什么是作用域对象:

    • 就是对象的生命周期,在javaweb开发里面有多个不同生命周期的对象
    • 比如:PageContext,ServletRequest,HttpSession,ServletContext;
    • 对象里面包含属性和对应的数据,所以不同作用域对象使用场景会不同

 

 

  • ServletContext:

    • 它代表了servlet环境的上下文,相当于一个全局存储空间
    • 同一个WEB应用程序中,所有的Servlet和JSP都可以共享同一个区域,是最大的作用域对象

    (webapps下的每个目录就是一个应用程序)

    • 四大作用域对象-用于存取数据(举个形象的例子):

      • PageContext(页面)->ServletRequest(请求)->HttpSession(会话)->【ServletContext】(应用);
    • 生命周期:在WEB服务器启动时创建,服务器关闭时销毁

image-20200528221243734

  • 加载应用默认参数

    • web.xml
    
    
    
      <context-param>
            <param-name>url</param-name>
            <param-value>xdclass.net</param-value>
        </context-param>
    ​
        <context-param>
            <param-name>username</param-name>
            <param-value>jack</param-value>
        </context-param>
    

     

  • 获取api

    
    
    
    ServletContext servletContext = req.getServletContext();
    String url = servletContext.getInitParameter("url");
    System.out.println(url);
    

     

  • 存储全局数据(只要是同个应用,都可以共享这些数据,类似map结构)

    
    
    
    servletContext.setAttribute("appInfo","xdclass.net info");
    ​
    String appInfo = (String)servletContext.getAttribute("appInfo");
    ​
    System.out.println("TestServlet appInfo="+appInfo);
    
    

     

第2集 什么是JSP和Servlet的微妙关系知多少

简介:介绍什么是JSP和Servlet的关系

 

  • 什么是JSP: 全称Java Server Pages,是一种动态网页开发技术;

    • 使用JSP标签在HTML网页中插入Java相关代码,标签通常以<%开头 以%>结束
    • JSP本身就是一种Servlet, JSP在第一次被访问的时候会被编译为HttpJspPage类,是HttpServlet的一个子类
    • 为什么用这个:和原生Servle 相比JSP可以很方便的编写HTML网页而不用去大量的用println语句输出html代码
    • 通俗来说:jsp就是在html里面写java代码,servlet就是在java里面写html代码

 

  • 添加jsp-api.jar到项目里面,和添加servlet-api.jar一样的步骤

 

  • JSP内置了9个对象可以直接用(先简单知道就行):out、session、response、request、config、page、application、pageContext、exception



​
request  HttpServletRequest类的实例
​
response HttpServletResponse类的实例
​
out PrintWriter类的实例,用于把结果输出至网页上
​
session HttpSession类的实例
​
application ServletContext类的实例,与应用上下文有关
​
config  ServletConfig类的实例
​
pageContext PageContext类的实例,提供对JSP页面所有对象以及命名空间的访问
​
page    Java类中的this关键字
​
Exception   Exception类的对象,代表发生错误的JSP页面中对应的异常对象
​
  • JSP脚本程序
<% 代码片段 %>​





<%
out.println("IP address is " + request.getRemoteAddr());
%>
  • JSP表达式的语法格式:(不能用分号结束)
<%= 表达式 %>





<%=request.getRequestURL()%>


  • 中文编码问题,顶部添加这些信息(部分同学)



<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
  • JSP的现状:2015年之前很公司使用,过后互联网发展很块,各类分布式技术架构,前端框架、后端框架大量出现,性能和便利性比JSP强很多,

所以基本很少企业使用JSP了,但是这个是学javaweb里面基础知识,大家可以简单学,不用花特别多时间(学校或者其他老旧的书本会花很多时间讲这个)




<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><html>
​
 <head>
​
   <title>小滴课堂</title>
​
 </head>
​
 <body>
​
<h4>
​
 <%=request.getRequestURL()%>
​
</h4>
​
</html>
​
​

 

 

干货文档

                                                        关注公众号发送:“CSDN干货文档”  即可领取

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dev666

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值