WEB核心【JSP】第十四章
目录
- 💂 个人主页: 爱吃豆的土豆
- 🤟 版权: 本文由【爱吃豆的土豆】原创、在CSDN首发、需要转载请联系博主
- 💬 如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连)和订阅专栏哦
🏆人必有所执,方能有所成!
🐋希望大家多多支持😘一起进步呀!
1,JSP
1.1:概述&原理
目标:
1,知道JSP和HTML区别
2,知道JSP在tomcat的执行原理
为什么要使用JSP:
JS:特效,简要逻辑
JAVA:业务逻辑,复杂操作
JSP:java+HTML+css+js
跨平台,业务代码相分析,组件重用,预编译
JSPJava独有,除了可以书写HTML/css/js代码,更支持书写Java代码和EL表达式等强大功能。
拓展名:.jsp
JSP和HTML区别:
HTML:静态WEB资源。
HTML+CSS+JS,处理简单业务逻辑
轻量化快速开发,减少servlet出现,HTML+AJAX 模仿JSP的效果
JSP:动态WEB资源
HTML+CSS+JS + JAVA,处理复杂业务逻辑。
重量级开发,要求效果优先。 JSP+AJAX,给用户体验极佳
找到JSP文件执行的位置
因为HttpJspPage是Servlet的子接口,所以JSP本质是一个Servlet
service
1.2:基本语法【重点】
<% java 代码 (变量,方法,语句)%>
禁用嵌套
不是脚本,变为html元素
定义的都是局部变量,都在_jspService方法内部
脚本输出:
之前:<%out.write("输出内容");%>
现在:<%=变量/输出内容%>
<% %> 放在_jspService方法中
<%! %> 放在成员位置
<%= %> 翻译为out.print();
建议JSP文件上尽量使用JSP注释
1.3:指令
1.3.1:page
Idea 会帮助咱们自动导入
-
<%@ page contentType="text/html;charset=UTF-8" language="java" isErrorPage="true" %>
-
<html>
-
<head>
-
<title>Title</title>
-
</head>
-
<body>
-
<h1>错误信息的专用页面 T T</h1>
-
<img src="002.png"/>
-
<img src="001.png"/>
-
<%
-
//当isErrorPage设置为true时,当前JSP就是一个专用的错误信息处理页面
-
//可以用到一个exception对象,将出错的信息进行封装
-
String message = exception.getMessage();
-
if(message.equals("/ by zero")){
-
out.write("001代码");
-
}
-
-
%>
-
</body>
-
</html>
1.3.2:include
-
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
-
<html>
-
<head>
-
<title>Title</title>
-
</head>
-
<body>
-
<%
-
String str = "字符串";
-
%>
-
<%@include file="/part.jsp"%>
-
</body>
-
</html>
-
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
-
<html>
-
<head>
-
<title>Title</title>
-
</head>
-
<body>
-
<%=str%>
-
</body>
-
</html>
1.3.3:taglib(JSTL标签详细)
该指令用于从外界向当前JSP导入标签库
1.4:九大内置对象【该阶段重点】
1.4.1:简述
isErrorPage=true,才会有exception对象
都在_jspService方法中
请求响应:
request
response
域对象:
pageContext
request
session
application
其他对象:
out
config
exception
page
1.4.2:pageContext
作用1:获取其他八大内置对象
作用2:作为最小域对象,操作其他作用域,作用域键值对查找【频繁】
当前页面域:pageContext,只有在当前页面有效。
<%
pageContext.setAttribute("uname","爱吃豆的土豆");
%>
<%=pageContext.getAttribute("uname")%>
以request为例,向request作用域存放数据:
<%
//效果相同
//request.setAttribute("username","爱吃豆的土豆");
pageContext.setAttribute("username","爱吃豆的土豆",PageContext.REQUEST_SCOPE);
%>
<%=pageContext.getAttribute("username",PageContext.REQUEST_SCOPE)%>
查找数据
<%
pageContext.setAttribute("pwd","123");//page
pageContext.setAttribute("pwd","456",PageContext.REQUEST_SCOPE);//request
%>
<%=pageContext.findAttribute("pwd")%>
<%=pageContext.findAttribute("pwd222222")%>
1.5:out
out对象和Servlet字符流区别:
响应体中:优先刷入的是Servlet字符流
响应体中:紧随其后 是out对象 刷入的内容
1.6:JSP四大作用域【重点】
页面范围:一般无实际应用
请求范围:指需要短暂保存的数据 / 指需要在请求转发中传递的object数据
会话范围:指浏览器开启~浏览器关闭,要保存的OBJECT数据
应用范围:指整个项目期间,所有程序/所有用户 都要共享/传递的 Object数据
Servlet:
Servlet有三大作用域:
HttpServletRequest
HttpSession
ServletContext
最后:
如果文章对您有帮助,就拿起小手赶紧给博主点赞💚评论❤️收藏💙 一下吧!
愿我们在未来的日子里。熠熠生辉!!!
文章来源: qianxu.blog.csdn.net,作者:爱吃豆的土豆,版权归原作者所有,如需转载,请联系作者。
原文链接:qianxu.blog.csdn.net/article/details/125349480
- 点赞
- 收藏
- 关注作者
评论(0)