文章目录
JSP
我们后面,或有替代 JSP的技术,比如 thymeleaf,vue等,但是对于 JavaEE 新手来说,JSP的学习是逃不掉的。各位在学习的时候,不要产生抵触情绪,花个两个小时,了解一项技术,无论它是否过时,也算是一种收获了。何况,jsp中的很多方法,在thymeleaf中,也是有其影子的。
JSP,是一种动态页面技术
是 java + html
何为动态页面?我们举个例子:
比如说,用户想查询所有书本信息,我们后台就会给前端传送一个 List 信息,但是 ,html因为已经固定好了,所以就算获取到了这个list,也无济于事
但是,JSP 就能根据传来的 List 信息,动态的更新页面的信息
这,就是动态页面
JSP小脚本
声明标签 <%!变量或者方法声明%>
表达式标签 <%= 表达式%> 在⻚面上显示的效果
程序代码标签 <%java代码%> ⻚面上动态展示内容
通过小脚本,可以在 JSP 中,写 Java 代码
JSP 原理
古早时期,程序员真的是在 Servlet 中,用流,将前端代码输出到页面上的(这可真的是折磨!),JSP,其实就是将这个折磨的过程,封装了一下,帮助我们,将前端的代码,用流输出出去
JSP 内置对象(9个)
如果面试问JSP(虽然不可能),那么,一定会问 JSP 的内置对象
JSP,一共有 9 种内置对象。
分别为:
request、response、session、application、out、pagecontext、config、page、exception
request 、response
Servlet中,能用的方法,他们基本都能用
page
相当于一个 this 指针,指向的是当前页面
pageContext < request < session < application
它们四个,都有 setAttribute()
和 setAttribute()
方法,区别在于它们的范围
这四个的所用范围,是不断变大的
pageContext
只在当前范围有效
request
只在一次请求有效
session
在一次会话(多次请求)中有效
但是换浏览器的话,数据就没了(因为不同浏览器/客户端 的sessionId 不一样)
application
在多个会话中