jsp(先转译后执行):
其实本质上jsp就是一个Servlet
①因为每次都要书写网络输出语句表达 所以要在jsp文件中直接声明
前端代码 调用工具类 将jsp转换为.class 再进行转换为servlet
但是需要声明很多的前端代码 就定义了jsp

②jsp单独不能用 需要转换为servlet才能使用
jsp还是servlet 执行的是转以后的JspServlet中的_jservice方法

③JspServlet将my.jsp转义成.从Java文件进行转义然后进行展示
jsp中的局部变量
<% int a = 123;
test();
%>
jsp中的全局变量
<%!
int a = 123;
public static voidtest(){
}
%>
④尽量不在jsp中书写逻辑 尽量在servlet中声明逻辑

⑤注释:
html注释:会被转译 传给浏览器
css注释:会被转译 传给浏览器/注释/
js注释:会被转译 传给浏览器/注释/
java注释::java注释会转译但是不会输出给浏览器
jsp注释:内容直接不转译 级别最高的注释(推荐使用jsp注释)

一、jsp常用的指令和标签
指令:告诉jspServlet怎么转
①page 一般不用改 自动默认
②include
当前页面中引入其他资源进行集成显示
静态引入和动态引入的区别:
静态引入就是先合并再转译 不会被单独转译 效率高(节省资源)
动态引入各自转译 然后进行调用引入 而且不存在资源的冲突
③taglib

二、jsp的使用

三、jsp的内置对象
内置:就是创建好的 直接进行调用就好了
九大内置对象:
内置对象:jsp在转换为Servlet的时候 会在_JSPService方法中声明九个对象
作用:
pageContext存储了另外八个对象

四、EL表达式(即带获取又带输出)$ { }
EL表达式可以写在任意位置 还可以书写算术运算
1.专门获取作用域中的数据 四大作用域
作用域的查找数据的顺序:
pageContext<request<session<applicontion

2.①存储的是字符串数据:

②存储的是实体对象:

③存储的是list集合数据:
基本类型数据:
引用数据类型:

④存储的是map集合数据:
基本类型数据:
引用数据类型:

3.获取指定域中的作用
sessionScope requestScope pageScope applicationScope

五、JSTL标签库(需要结合EL表达式来完成)
①引入jstl标签库
<c:if> test
</c:foreach>

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐