动态页面JSP

概述

  • JSP全称:Java Server Pages,是一个Java服务端页面

  • JSP在java项目中取代html静态页面,让页面中的代码实现动态变动。一种动态的网页技术,其中既可以定义 HTML、JS、CSS等静态内容,还可以定义 Java代码的动态内容

  • JSP=HTML+CSS+JAVA

  • JSP的作用:实现前后端代码分离,简化开发,避免了在Servlet中直接输出HTML标签,也要避免在JSP中直接书写JAVA代码。

JSP和HTML区别

从页面的内容来看,JSP比HTML多了一条语句

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

JSP可以写JSTL标签,让页面实现动态变化。

两者都可以使用css,js等静态内容。

JSP写JAVA

  • <%...%>:内容会直接放到_jspService()方法之中

  • <%=…%>:内容会放到out.print()中,作为out.print()的参数

  • <%!…%>:内容会放到_jspService()方法之外,被类直接包含

EL表达式

Expression Language 表达式语言,用于简化 JSP页面内的Java代码,它的主要功能是获取数据

语法:${expression},列如:${model.id},获取域中存储的key为brands的数据(这里的key指的是浏览器中属性部分)

JavaWeb中的四大域对象:

  1. page:当前页面有效

  1. request:当前请求有效

  1. session:当前会话有效

  1. application:当前应用有效

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

JSTL标签库

JSP标准标签库(Jsp Standarded Tag Library) ,使用标签取代JSP页面上的Java代码

<c:forEach items="${expression}" var="model"></c:forEach>

expression:EL表达式 var中随意赋值,这里的循环相当于java中的增强for循环,EL表达式相当于增强for循环:后---------- var相当于:前

<c:if test="${flag ==1}">男</c:if>

<c:if test="${flag ==2}">女</c:if> test相当于条件判断。

使用JSTL标签 要在JSP页面头部加入

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

JSP缺点

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

  1. 书写麻烦:特别是复杂的页面

  1. 阅读麻烦

  1. 复杂度高:运行需要依赖于各种环境,JRE,JSP容器,JavaEE…

  1. 占内存和磁盘:JSP会自动生成.java和.class文件占磁盘,运行的是.class文件占内存

  1. 调试困难:出错后,需要找到自动生成的.java文件进行调试

  1. 不利于团队协作:前端人员不会 Java,后端人员不精 HTML

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值