jsp页面和C标签.


1.背景介绍

JSP全称Java Server Pages,是一种动态网页开发技术。它使用JSP标签在HTML网页中插入Java代码。标签通常以<%开头以%>结束。

JSP是一种Java servlet,主要用于实现Java web应用程序的用户界面部分。网页开发者们通过结合HTML代码、XHTML代码、XML元素以及嵌入JSP操作和命令来编写JSP。

JSP通过网页表单获取用户输入数据、访问数据库及其他数据源,然后动态地创建网页。

JSP标签有多种功能,比如访问数据库、记录用户选择信息、访问JavaBeans组件等,还可以在不同的网页中传递控制信息和共享信息。


2.知识剖析

JSP通过网页表单获取用户输入数据、访问数据库及其他数据源,然后动态地创建网页。

JSP标签有多种功能,比如访问数据库、记录用户选择信息、访问JavaBeans组件等,还可以在不同的网页中传递控制信息和共享信息

(C标签)标签共有13个,功能上分为4类:

1.表达式控制标签:out、set、remove、catch

2.流程控制标签:if、choose、when、otherwise

3.循环标签:forEach、forTokens

4.URL操作标签:import、url、redirect

c:if与Java语言中的if语句的使用方法一样,但不能实现else的功能

c:when,c:otherwise无法单独使用,只能作为c:choose的子标签来使用。这三个标签组合起来实现Java中的switch语句的功能.

c:forEach用于遍历一个对象集合,,c:forToken用于遍历字符串,而且每次遍历结果返回字符串中的一个单词

c:url用于对URL地址进行编码。

c:import向当前JSP页面中引入URL资源(可以是远程序站点上的资源)。Include指令和include动作不能向JSP页引入Web程序以外的资源,引入的资源必须位于当前Web程序中

c:redirect用于HTTP重定向.

c:param只能嵌入到c:url、c:import、c:redirect标签中作为子元素来使用。此标签主要用于设置URL中将要传入的参数。

c:catch用于处理JSP页面错误


3.常见问题

jsp页面是如何加载的

jsp页面的特点


4.解决方案

(1)当客户第一次请求JSP页面时,JSP引擎会通过预处理把JSP文件中的静态数据(HTML文本)和动态数据(Java脚本)全部转换为Java代码。这个转换工作实际上是非常直观的,对于HTML文本只是简单的用out.println()方法包裹起来,对于Java脚本只是保留或做简单的处理。

(2)JSP引擎把生成的.java文件编译成Servlet类文件(.class)。对于Tomcat服务器而言,生成的类文件默认的情况下存放在web容器work目录。

(3)编译后的class对象被加载到容器中,并根据用户的请求生成HTML格式的响应页面

jsp页面的特点

性能更加优越,因为JSP可以直接在HTML网页中动态嵌入元素而不需要单独引用CGI文件。

服务器调用的是已经编译好的JSP文件,而不像CGI/Perl那样必须先载入解释器和目标脚本。

JSP 基于Java Servlet API,因此,JSP拥有各种强大的企业级Java API,包括JDBC,JNDI,EJB,JAXP等等。

JSP页面可以与处理业务逻辑的 Servlet 一起使用,这种模式被Java servlet 模板引擎所支持。


5.编码实战


6.扩展思考

为什么不建议在jsp中写代码?

可读性很差,<%....%>将java代码和html都写在一起,还要尖括号的表达式,看起来复杂难懂.

jsp难于调试,不能进行单元测试,维护性差

jsp内写java代码,安全性低,代码都在jsp中可以被看到

也不符合老大讲的mvc将各个层级分开的理念..


7.参考文献

百度

http://blog.csdn.net/chabale/article/details/9406437

http://www.jb51.net/article/73527.htm


问题:

jsp必须转换成Java类才可以运行吗,

是的,这个可以在Tomcat的文件目录里面可以看到,jsp页面是被转译成了java  class文件加载的.


今天的分享就到这里啦,欢迎大家点赞、转发、留言、拍砖~

技能树.IT修真院

“我们相信人人都可以成为一个工程师,现在开始,找个师兄,带你入门,掌控自己学习的节奏,学习的路上不再迷茫”。

这里是技能树.IT修真院,成千上万的师兄在这里找到了自己的学习路线,学习透明化,成长可见化,师兄1对1免费指导。快来与我一起学习吧~

www.jnshu.com/login/1/14708688


PPT



undefined_腾讯视频

你可能感兴趣的:(jsp页面和C标签.)