jsp 动态网页技术:服务器和用户交互的动态网页技术
jsp【java server page 】jsp ≈ html +servlet
jsp 文件是以 *.jsp结尾:jsp文件 靠服务器运行,jsp 是服务器端脚本语言
jsp 解决的问题:
servlet将数据传到html ,html 无法展示java代码中存储的数据
servlet中 Printwriter.print("html代码"); 展示页面很麻烦,我们使用转发或重定向 html
jsp实现 服务器端java代码和客户端页面代码html代码的数据交互问题
jsp的工作原理和生命周期:jsp ---->servlet
jsp 利用 tomcat工具类将 jsp 编译成 servlet ,servlet中 service方法中 ,writer.println(会将jsp的html代码输出到前端浏览器)
生命周期:
1 加载jsp 的web项目
2 当我们访问jsp文件的时候,jsp引擎会将index.jsp文件 转换成 java类
index_jsp.java servlet文件 ----->编译 成一个 class文件 
3 jsp初始化【jspInit()】
4 接收请求,将 带有数据的html响应到页面 
jspService(final javax.servlet.http.HttpServletRequest request, final javax.servlet.http.HttpServletResponse response)
out.write("html代码 +展示的数据 ");
5 jsp 转换成servlet销毁
jspDestroy()
jsp 文件(jsp脚本语言基本结构)java代码+html+js+css
jsp页面构成简单介绍:
<%@page language="java" import="java.util*" isELIgnored="false"  errorPage="error.jsp" pageEncoding="UTF-8"%>
<!-- page指令:是对jsp的描述,约束 ,编码设置 
  pageEncoding:编码集设置
  language:使用的语言是java语言
  import:需要导入 java包或类
  extends:继承某个java 
  errorPage:如果当前jsp 发生运行逻辑错误会跳转到 error.jsp页面
  isELIgnored:属性 false 可以使用EL表达式;true 默认忽略
  jsp对应的servlet 3.0 3.1 版本 默认是忽略EL表达式
  taglib 指令:引入外部的标签库
  java在 < %代码块中 % >
-->
jsp的基本语法:
jsp的结构 :java代码+html 代码 js代码 css代码
jsp 基本代码块
<% @ page %>
<% 普通代码块 是java代码 %>
jsp的声明代码块
<%! 变量的声明 %>
<%! int num ; %> <%! int num=0 ; %>
<% num =1; %>
jsp的输出表达式
将数据输出到页面上,java代码中的数据 (变量 输出到页面上)
<%= 输出的内容 %>
jsp 的注释 【<%-- --%>注释不能嵌套】
jsp的注释和java代码的注释 不会显示在浏览器源码中,不会响应到客户端,html js css 的注释会显示在浏览器源码中, 会响应到客户端
注意:普通的代码块 按照java代码规范 需要加;输出表达式 不能加。
jsp的指令:(熟悉)
page 对jsp文件的描述
taglib 引入外部的标签库
include 静态导入:指令将 两个jsp文件进行合并 ,会变成一个servlet ,所以如果变量相同会报异常
this is parent .jsp!!!!!!!!!!!!!!!!!!<hr>
<!-- jsp文件合并静态导入 -->
<%@include file="child1.jsp" %>
jsp的动作元素:include 动态导入
会将jsp页面的展示结果合并变成一个页面,两个jsp文件会变成两个servlet
<!-- 动态导入 -->
<jsp:include page="child1.jsp"></jsp:include>
静态导入和动态导入:动态导入的灵活性比较高

07-【jsp基本了解】的更多相关文章

  1. JSP-Runoob:JSP 语法

    ylbtech-JSP-Runoob:JSP 语法 1.返回顶部 1. JSP 语法 本小节将会简单地介绍一下JSP开发中的基础语法. 脚本程序 脚本程序可以包含任意量的Java语句.变量.方法或表达 ...

  2. JavaWeb01-动态网页

    01.动态网页的优势 动态网页是在服务器端运行的程序!随不同用户,不同条件 返回不同的结果! 001.交互性:网页会根据用户的要求和选择而动态的改变和现实网页内容! 002.自动更新:无需改变页面的代 ...

  3. HeadFirst Jsp 07 (使用 jsp)

    Jsp 变成 Servlet, 容器会查看你的JSP, 把它转换成java源代码, 再编译成完整的Java servlet类. Jsp 不需要你的编译, 容器会自动替换成servlet. 在 jsp中 ...

  4. 07.整合jsp、整合freemarker、整合thymeleaf

    整合jsp pom.xml部分内容 <packaging>war</packaging> </dependencies> <dependency> &l ...

  5. java web学习总结(二十六) -------------------JSP属性范围

    所谓的属性范围就是一个属性设置之后,可以经过多少个其他页面后仍然可以访问的保存范围. 一.JSP属性范围 JSP中提供了四种属性范围,四种属性范围分别指以下四种: 当前页:一个属性只能在一个页面中取得 ...

  6. jsp页面中jstl标签详解

    JSLT标签库,是日常开发经常使用的,也是众多标签中性能最好的.把常用的内容,放在这里备份一份,随用随查.尽量做到不用查,就可以随手就可以写出来.这算是Java程序员的基本功吧,一定要扎实. JSTL ...

  7. jsp 页面标签 积累

    http://www.cnblogs.com/xiadongqing/p/5232592.html <%@ taglib %>引入标签库 ========================= ...

  8. JSP数据交互(二)和Servlet基础

    01.Application原理与应用 01.application对象的作用域范围是整个应用服务,而它在应用中所承担的责任就类似于一个全局变量.只要服务启动,则application对象就会存在. ...

  9. 07 JavaWeb

    软件开发的两种架构:c/s和b/s          * C/S     client/server     客户端/服务器     例子:QQ     快播     暴风影音...          ...

  10. jsp中用EL读取了数据库里面的时间,怎么设置格式显示的格式

    首先导入标签 <%@taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%> < ...

随机推荐

  1. 微服务的脚手架Jhipster使用(一)

    随着微服务的普及以及docker容器的广泛应用,有传统的soa服务衍生出微服务的概念,微服务强调的是服务的独立性,屏蔽底层物理平台的差异,此时你会发现微服务跟容器技术完美契合.在此基础上衍生出的云原生 ...

  2. CetOS 服务不支持 chkconfig 的解决方法

    今天在添加Elasticsearch系统自动启动服务的时候,提示 “服务 elasticsearch 不支持 chkconfig ”,如下图: 后来查找了下原因,是脚本编写的不符合规范,缺少关键的前三 ...

  3. TensorFlow2.0(12):模型保存与序列化

    .caret, .dropup > .btn > .caret { border-top-color: #000 !important; } .label { border: 1px so ...

  4. Python3 Selenium自动化web测试 ==> 第七节 WebDriver高级应用 -- 浮动框中,单击选择某个关键字选项

    学习目的: 了解WebDriver的高级应用 正式步骤: 测试Python3代码 # -*- coding:utf-8 -*- from selenium import webdriver from ...

  5. Ingreslock后门漏洞

    一.简介 1524端口 ingreslock Ingres 数据库管理系统(DBMS)锁定服务 利用telnet命令连接目标主机的1524端口,直接获取root权限. Ingreslock后门程序监听 ...

  6. 【VS开发】recv函数函数返回值说明(特别有利于工程调试)

    recv函数 int recv( SOCKET s, char FAR *buf, int len, int flags); 不论是客户还是服务器应用程序都用recv函数从TCP连接的另一端接收数据. ...

  7. shell-变量,字符串,数组,注释,参数传递

    Linux的Shell有很多种,常见的有Bourne Shell Bourne Again Shell C Shell K Shell Shell for Root 等,其中Bourne Again ...

  8. day22 subprocess、configeparser、表格操作模块

    今日内容: 1.configparser模块的使用 2.subprocess模块的使用 3.表格处理模块 xlrd模块 xlwt模块 1.configparser模块 configparser模块是用 ...

  9. Linux文件属性之用户和组基础知识介绍

    一.Linux多用户多任务介绍 Linux/Unix 是一个多用户.多任务的操作系统:在讲Linux账号及账号组管理之前,我们先简单了解多用户.多任务操作系统的基本概念. 1.1Linux单用户多任务 ...

  10. 基于模板匹配的目标跟踪(OpenCV)

    基于VS2010+ OpenCV2.代码可以读入视频,也可以读摄像头,两者的选择只需要在代码中稍微修改即可.对于视频来说,运行会先显示第一帧,然后我们用鼠标框选要跟踪的目标,然后跟踪器开始跟踪每一帧. ...