Java小白学习指南【day32】---Servlet交互&JSP原理及运用

一、Servlet交互

1、Servlet三大职责

  1. 接收请求参数(封装) ;

  2. 调用业务方法处理业务(去调用业务service层);

  3. 响应请求(跳转页面或其他Servlet);

2、跳转的两种方式【重点】

请求转发(forward)重定向(redirect)
访问 WEB-INF×
传参数×
访问外网×
重复提交的问题
路径变化
代码req.getRequestDispatcher(path).forward(req, resp);resp.sendRedirect(path)

二、JSP学习

1、JSP基本认识

JSP(java server page):java服务器端(动态)网页,JSP就是Java中用来做动态网页的技术;锁业在JSP中既可以写JAVA代码,也可以写HTML代码

注:JSP就是Servlet,服务器会把JSP搞成一个Servlet的类

2、JSP的编译原理、语法

编译过程:

在这里插入图片描述

语法:

  • 两种注释注释:
<!-- 这是HTML注释,在前端浏览器可以看到 -->
<%-- 这是JSP注释,给程序员看的,前端浏览器是看不到的 --%>
  • java代码写法
<%
	这里写Java代码
%>

<%=表达式(输出数据到页面上)  %>
<%=new java.util.Date().toLocaleString() %>

<%! 定义成员变量 %>

3、三大指令

  • page :页面指令 :当前页面的一些配置
  • include:包含指令 :可以包含其它页面
  • taglib:标签指令(明天学习)

4、page指令

格式:

<%@page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" ... >

language="java":语言只有java,意义不大

contentType="text/html; charset=UTF-8":输出的页面类型,相当于在Servlet里面写:resp.setContentType("text/html;charset=utf-8")

import : 导包

errorPage: 如果出错了,指向某个页面

isErrorPage:这个页面是否是一个错误页面

  • 如果值是true,我们后面报500的时候就可以在页面看到错误信息

5、include指令

可以把一个页面的内容包含到另外一个页面

注意:一般被包含的jsp文件我们会取名为 jspf(jsp片断)

<%@ include file="/include/head.jspf" %>

6、四大作用域

作用域对像都是容器,数据放在那个作用域,就只能在对应作用域取获取,没有包含关系,大小关系指的仅仅是存放对象的存活时间。

在这里插入图片描述

  • application : 活到项目死亡 ,一般可以用于计算当前多少人在访问我们的网站
    • 注意: appcation就是ServletContext
    • 在JAVA代码中获取上下文路径 getContextPath()
    • 获取当前的真实路径 getRealPath("/")
  • session :一次会话, 活到浏览器关闭,一般用于保存登录用户
    • 默认只活半小时,你的浏览器有半个小时没有碰
  • request : 一次请求 (用得最多)
  • pageContext: 当前页面

7、九大内置对象

内置对象
applicationServletContext全局对象
sessionHttpSession会话对象
requestHttpServletRequest请求对象
pageContextPageContext当前页对象
responseHttpServletResponse响应对象
outJspWriter输出对象
pagethis当前对象
configServletConfig配置对象
exception异常对象
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值