JSP

JSP脚本

JSP脚本用于在JSP页面内定义Java代码

JSP脚本分类:

  1. <%…%>:内容会直接放到_jspService()方法之中
  2. <%=..%>:内容会放到out.print()中,作为out.print()的参数.
  3. <%!..%>:内容会放到_jspService()方法之外,被类直接包含.

JSP缺点

由于JSP页面内,既可以定义HTML标签,又可以定义Java代码,造成了以下问题:

  1. 书写麻烦:特别是复杂的页面。
  2. 阅读麻烦。
  3. 复杂度高:运行需要依赖于各种环境,JRE,JSP容器,JavaEE…
  4. 占内存和磁盘:JSP会自动生成.java和.class文件占磁盘,运行的是.class文件占内存。
  5. 调试困难:出错后,需要找到自动生成的.java文件进行调试。
  6. 不利于团队协作:前端人员不会Java,后端人员不精HTML。

jsp已经比较老了,可替换成html+ajax

EL表达式

  • Expression Language表达式语言,用于简化JSP页面内的Java代码

  • 主要功能:获取数据

  • 语法:${expression}

    ${brands}:获取域中存储的key为brands的数据

  • JavaWeb中的四大域对象:

    1. page:当前页面有效
    2. request:当前请求有效
    3. session:当前会话有效
    4. application:当前应用有效

el表达式获取数据,会依次从这4个域中寻找,直到找到为止

MVC模式

MVC是一种分层开发的模式,其中:

  • M: Model,业务模型,处理业务

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

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

MVC好处

  • 职责单一,互不影响
  • 有利于分工协作
  • 有利于组件重用

image-20221110163134521

三层架构

  • 数据访问层:对数据库的CRUD基本操作

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

  • 表现层:接收请求,封装数据,调用业务逻辑层,响应数据

    image-20221111194620652