【JSP】我说我不会JSP,面试官就让我回去等通知了( 二 )



【JSP】我说我不会JSP,面试官就让我回去等通知了
本文插图

JSP内置了9个对象!内置对象有:out、session、response、request、config、page、application、pageContext、exception 。
重要要记住的是:JSP的本质其实就是Servlet 。 只是JSP当初设计的目的是为了简化Servlet输出HTML代码 。
【JSP】我说我不会JSP,面试官就让我回去等通知了
本文插图
【【JSP】我说我不会JSP,面试官就让我回去等通知了】

什么时候用JSP 重复一句:JSP的本质其实就是Servlet 。 只是JSP当初设计的目的是为了简化Servlet输出HTML代码 。
我们的Java代码还是写在Servlet上的 , 不会写在JSP上 。 在知乎曾经看到一个问题:“如何使用JSP连接JDBC” 。 显然 , 我们可以这样做 , 但是没必要 。
JSP看起来就像是一个HTML , 再往里边增加大量的Java代码 , 这是不正常 , 不容易阅读的 。
所以 , 我们一般的模式是:在Servlet处理好的数据 , 转发到JSP , JSP只管对小部分的数据处理以及JSP本身写好的页面 。
例如 , 下面的Servlet处理好表单的数据 , 放在request对象 , 转发到JSP

【JSP】我说我不会JSP,面试官就让我回去等通知了
本文插图

JSP拿到Servlet处理好的数据 , 做显示使用:

【JSP】我说我不会JSP,面试官就让我回去等通知了
本文插图

JSP需要学什么 JSP我们要学的其实两块就够了:JSTL和EL表达式
EL表达式 **表达式语言(Expression Language , EL),EL表达式是用${}括起来的脚本 , 用来更方便的读取对象!**EL表达式主要用来读取数据 , 进行内容的显示!
为什么要使用EL表达式?我们先来看一下没有EL表达式是怎么样读取对象数据的吧!在1.jsp中设置了Session属性

【JSP】我说我不会JSP,面试官就让我回去等通知了
本文插图

在2.jsp中获取Session设置的属性

【JSP】我说我不会JSP,面试官就让我回去等通知了
本文插图

效果:

【JSP】我说我不会JSP,面试官就让我回去等通知了
本文插图

上面看起来 , 也没有多复杂呀 , 那我们试试EL表达式的!
在2.jsp中读取Session设置的属性

【JSP】我说我不会JSP,面试官就让我回去等通知了
本文插图

只用了简简单单的几个字母就能输出Session设置的属性了!并且输出在浏览器上!

【JSP】我说我不会JSP,面试官就让我回去等通知了
本文插图

使用EL表达式可以方便地读取对象中的属性、提交的参数、JavaBean、甚至集合!

【JSP】我说我不会JSP,面试官就让我回去等通知了
本文插图

JSTL JSTL全称为 JSP Standard Tag Library 即JSP标准标签库 。 JSTL作为最基本的标签库 , 提供了一系列的JSP标签 , 实现了基本的功能:集合的遍历、数据的输出、字符串的处理、数据的格式化等等!
为什么要使用JSTL?
EL表达式不够完美 , 需要JSTL的支持!在JSP中 , 我们前面已经用到了EL表达式 , 体会到了EL表达式的强大功能:**使用EL表达式可以很方便地引用一些JavaBean以及其属性 , 不会抛出NullPointerException之类的错误!**但是 , EL表达式非常有限 , 它不能遍历集合 , 做逻辑的控制 。 这时 , 就需要JSTL的支持了!


推荐阅读