栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JSP学习笔记

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JSP学习笔记

文章目录
  • JSP介绍
  • JSP快速入门
  • JSP原理
  • JSP脚本
  • JSP缺点
  • EL表达式
  • JSTL标签
  • MVC模式和三层架构
  • 案例

JSP介绍
  • 概念:Java Server Pages,Java服务端页面
  • 一种动态的网页技术,其中既可以定义HTML、JS、CSS等静态内容,还可以定义java代码的动态内容
  • JSP=HTML+Java
JSP快速入门
  • 导入JSP坐标

      javax.servlet.jsp
      javax.servlet.jsp-api
      2.3.3
      provided
    
  • 创建JSP文件
  • 编写HTML和Java代码
JSP原理
  • JSP本质上就是一个Servelt
  • Java Server Pages
  • JSP=HTML+java,用于简化开发
JSP脚本
  • JSP脚本用于在jsp页面内定义java代码
  • jsp脚本分类
    • <%%>内容会直接放到service方法中
    • <%=%>:内容会放到out.print()中,作为out.print()的参数
    • <%!%>:内容会放到jspService()方法之外,被类直接包含
    • 练习:使用jsp脚本展示学生数据


    

    


<%
    List students = new ArrayList();
    students.add(new Student(1, "小黑", "男"));
    students.add(new Student(2, "小红", "女"));
    students.add(new Student(3, "小新", "男"));
%>

    <%
        for (Student student:students) {
    %>
    
    <%
        }
    %>
学号 姓名 性别
<%=student.getIndex()%> <%=student.getName()%> <%=student.getSex()%>
JSP缺点
  • 由于jsp页面内,又可以定义HTML标签,又可以定义java代码,造成了以下问题:
    • 书写麻烦:尤其是复杂页面
    • 阅读麻烦
    • 复杂度高:运行需要依赖各种环境,jre,jsp容器,javaee
    • 占内存和磁盘:jsp会自动生成.java和.calss文件占磁盘,运行的是.class文件占内存
    • 调试困难:出错后,需要找到自动生成的.java文件调试
    • 不利于团队协作:前端人员不会java,后端人员不精html
EL表达式
  • expression Language表达式语言,用于简化jsp页面内的java代码
  • 主要功能:获取数据
  • 语法:${expression}
  • JavaWeb中的四大域对象:
    • 1、page:当前页面有效
    • 2、request:当前请求有效
    • 3、session:当前会话有效
    • 4、application:当前应用有效
    • el表达式获取数据,会依次在这四个范围内寻找,找到为止
      * 有的jsp页面会默认忽略el表达式导致jsp页面接收不到参数,需要设置为不忽略<%@ page isELIgnored="false" %>
JSTL标签
  • JSP标准标签库(JSP Standarded Tag Library),使用标签取代jsp页面的java代码
  • 导入坐标
  
      jstl
      jstl
      1.2
    
    
      taglibs
      standard
      1.1.2
    
  • 在JSP页面上引入JSTL标签库<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
  • 使用


    Title


    ${status}
    
        

true

  • 使用
    • items:被遍历的容器
    • var:遍历产生的临时变量
    • varStatus:遍历状态(index属性从0开始,index属性从1开始)
    • begin:开始数
    • end:结束数
    • step:步长


    Title



        
学号 姓名 性别
${student.index} ${student.name} ${student.sex}
MVC模式和三层架构
  • MVC是一种分层开发模式,其中
    • M:Model,业务模型,处理业务
    • V:View,视图,页面展示
    • C:Controller,控制器,处理请求,调用模型和试图
  • MVC好处
    • 职责单一,互不影响
    • 有利于分工写作
    • 有利于组件再利用
  • 三层架构
    • 数据访问层:对数据库的CRUD操作
    • 业务逻辑层:对业务逻辑进行封装,组合数据访问层中的基本功能,形成复杂的业务逻辑结构
    • 表现层:接受请求,封装数据,调用业务逻辑,响应数据
案例
  • 准备新的模块brand_demo,引入坐标
  • 创建三层架构的包结构
  • 数据库表tb_brand
  • 实体类Brand
  • Mybatis基础环境
    • 没有mybatis-config.xml
    • BrandMapper.xml
    • BrandMapper接口
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/582603.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号