JSP详解

JSP的概念:

概念:Java Serve Pages Java服务端页面

一种动态的网页技术,其中可以定义Html、css、js等静态内容。还可以定义Java代码的动态内容。

JSP=Html+java

JSP的存在使我们可以不用在servlet里面用输出流一行一行的写字符串,而是直接将java代码和html代码写在一起方便书写。

在实际开发时,我们通常在业务层处理完后,将最后的响应转发到JSP作为页面展示。

<%@ page contentType="text/html; utf-8" language="java" %>



    Tittle



    

JSP,hello|||

<% System.out.println("nihao jsp"); %> > >

JSP快速入门

1、导入JSP坐标

JSP详解_第1张图片

2、创建JSP文件

3、编写HTML标签和JAVA代码

JSP原理

JSP本质上就是一个servlet。

我们编写了JSP,容器(Tomcat)会自动的将JSP转换为servlet,再编译成字节码文件发送给浏览器。JSP详解_第2张图片

JSP脚本

JSP脚本用于在JSP页面内部定义JAVA代码。

脚本分类:

1、 <%%>内容会直接放到_jspService()方法中。

2、<%= %>内容会放到out.print()中,作为out.print()的参数。

3、<%!%>内容会放到_jspService方法外,被类直接包含。

JSP的缺点

实际上,由于JSP的种种缺点,在如今的开发中我们几乎已经不使用了。

1、书写很麻烦,尤其是很复杂的页面,需要不断用<%%>去进行打断。

2、阅读很麻烦

3、复杂度高,运行需要依赖各种环境,JRE,JSP容器,JavaEE

4、占用内存和磁盘,JSP会自动生成.java和.class文件。其中.java文件存放的是解析后的servlet文件,.class文件是运行文件。

5、调试困难:出错后,我们需要在自动生成的servelt文件中寻找错误

6、前后端做不到分离

现在我们通常使用HTML+AJAX的技术来代替,后面会有写AJAX。

为了便于后期维护和开发,我们通常不在JSP文件里面直接写JAVA代码,而是使用JSP展示数据,有关逻辑处理和数据封装我们放到Servlet里面进行处理。

这就引入了一个概念-EL表达式

EL表达式

EXpression Language表达式语言,用来简化JSP页面中JAVA代码

主要功能为:获取数据

语法:${expression}

${brands}:获取域(比如request域,response域)中键为brands的值。

JSP详解_第3张图片 JSP详解_第4张图片

 JSTL标签

JSP标准标签库,使用标签取代JSP页面上的JAVA代码。(感觉有点像Mybatis配置mapper.xml文件中的那个标签?)



JSP详解_第5张图片

有点类似于增强for循环,这个item就相当于users,var相当于user

for(User user:users){

} 

第二种循环遍历方式,和普通for循环很像 

JSP详解_第6张图片

 MVC模式和三层架构

MVC模式是一种分层开发的模式

M:Modle,业务模型,处理业务。

V:View,视图,界面展示。

C:Controller,控制器,请求处理,调用模型和视图。

JSP详解_第7张图片

MVC的好处:

指责单一,互相不影响。

有利于分工协作。

有利于组件重组。

三层架构

​​​​​​​ JSP详解_第8张图片

数据访问层:对数据库进行基本的CRUD操作。

业务逻辑层:对业务逻辑进行封装,组合数据访问层中的基本数据,形成复杂的业务逻辑功能。

表现层:接受请求,封装数据,调用业务逻辑层,(通过JSP展示),响应数据 。

其中,对于不同层我们可以采用框架对其进行优化,在后续学习的Spring系列框架,就分别对应了表现层和业务逻辑层。而对于数据访问层的开发,Mybatis就是其开发框架。

MVC模式和三层框架之间的关系 

JSP详解_第9张图片

 

 

你可能感兴趣的:(JavaWeb,java,servlet,前端)