首页 > 其他分享 >JSP核心技术

JSP核心技术

时间:2024-10-17 21:20:05浏览次数:3  
标签:String 核心技术 void 对象 JSP 页面 name

JSP核心技术(一)

  1. JSP的概念

    $$
    JSP是Java Server Pages的简称,跟Servlet一样可以动态生成HTML响应, JSP文件命名为

    xxx.jsp。

    与Servlet不同,JSP文件以HTML标记为主,然后内嵌Java代码段,用于处理动态内容。

    JSP的示例

    <%@ page import=“java.util.Date” %>

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

    Hello Time 现在的时间是:<%= new Date()%> $$
    2.JSP与Servlet的关系
1.jsp语法结构
声明区
程序代码区
表达式
注释
指令和动作
内置对象
2.声明区
  • 基本语法:

  • <%! %>

  • 说明:可以定义全局变量、方法、类。

    <%!
    int i;
    public void setName(){… …}
    %>
    
3.程序代码区
  • 基本语法:

    <%程序代码区%>

  • 说明:可以定义局部变量记忆放入任何的java程序代码

    <%
    int j;
    for (int k=0; k<10; k++) {
    … …
    }
    %>
    
4.表达式
  • 基本语法:<%=… …%>

  • 说明:可以输出一个变量或一个具体内容,但=后面必须是字符串变量或者可以被转换成字符串的

    表达式

    注意:不需要以;结束,只有一行

<%=“hello world”%>
<%=i+1%>
  • 案例题目

    使用for循环输出一个html语言的表格,具体表头如下:
    id name age salary
    1 1 1 1
    2 2 2 2
    ...
    5 5 5 5
    
5.注释
格式:
<!--… …--> HTML文件的注释,浏览器可以查看到
<%--… …--%> JSP文件的注释,浏览器看不到
<%//… …%> Java语言中的单行注释,浏览器看不到
<%/*… …*/%> Java语言中的多行注释,浏览器看不到
注释的内容不会被执行
6.指令和动作
  • 指令格式:

    <%@指令 属性=“属性值”%>

  • 指令的属性可以设定多个

  • JSP常用指令有:page,taglib,include

    (1)page指令
    • page指令用于导包和设置一些页面属性,常用属性如下:

      import 导入相应的包,惟一允许在同一文档中多次出现的属性
      contentType 设置Content-Type响应报头,标明即将发送到浏览器的文档类型
      pageEncoding 设置页面的编码
      language 指定页面使用的语言
      session 控制页面是否参与HTTP会话
      errorPage 处理当前页面中抛出但未被捕获的任何异常
      isErrorPage 当前页是否可以作为其他页面的错误处理页面
      
    (2)taglib指令
    • taglib指令用来扩展JSP程序的标签元素,引入其他功能的标签库文件

      <!-- prefix属性用于指定库前缀 -->
      <!-- uri属性用于指定库的标识 -->
      <%@taglib uri=“tagLibary” prefix=“prefix”%>
      
    (3)include指令
    • include指令用于引入另一个JSP程序或HTML文件等,格式如下:

      <%@include file=“被包含的文件地址%>
      
    • JSP引擎会在JSP文件的转换时期先把file属性设定的文件包含进来,然后开始执行转换及编译的工

      作。

    (4)jsp.include/jsp:param
    • jsp:include动作用于引入另一个JSP程序或HTML文件等。

    • 执行到include时,被include的文件才会被编译。

    • 如果include的是jsp文件,那它不会被转换成Servlet文件。

      <jsp:include page=“URLSpec” flush=“true”/>
      <jsp:include page=“URLSpec” flush=“true”>
      <jsp:param name=“key” value=“value”/>
      </jsp:include>
      
    (5)include指令和include动作的区别
    • include指令是在JSP程序的转换时期就将file属性所指定的程序内容嵌入再编译执行(静态包

      含)。

    • include动作在转换时期是不会被编译的,只有在客户端请求时期被执行到才会被动态的编译载入

      (动态包含,推荐)。

    (6)jsp:forward/jsp:param
    • forward动作用于在JSP中实现转发,将请求转发到另一个指定的JSP程序或者Servlet中处理。

    • <jsp:forward page=“urlSpec” flush=“true”/>
      <jsp:forward page=“urlSpec”>
      <!-- 用于指定参数和其对应的值 -->
      <jsp:param name=“key” value=“value”/>
      </jsp:forward>
      

jsp内置对象(重点)

1.基本概念
  • 在JSP程序中有9个内置对象由容器为用户进行实例化,程序员可以不用定义就直接使用这些变量。
  • 在JSP转换成Servlet后,会自动追加这些变量的定义,使用内置对象可以简化JSP的开发。
2.对象名称
对象名称对象类型作用
outJSPWriter输出流
requestHttpServletRequest请求信息
responseHttpServletResponse响应信息
seessionHttpSession会话
applicationServletContext全局的上下文对象
pageContextPageContextJSP页面上下文
pageObjectJSP页面本身
configServletConfigServlet配置对象
exceptionThrowable捕获网页异常
3.out内置对象
  • out内置对象是一个缓冲的输出流,用来给客户端输出信息。

  • 常用方法如下:

    • 方法声明功能介绍
      void println(String x)向客户端输出各种类型数据
      void newLine()输出一个换行符
      void close()关闭输出流
      int getBufferSize()返回缓冲区的大小
      int getRemaining()返回缓冲区中未使用的字节数
      void flush()输出缓冲区里的数据
      void clearBuffer()输出缓冲区里的数据清除缓冲区里的数据,同时把数据输出到客户端
      void clear()清除缓冲区里的数据,但不把数据输出到客户端
4.request内置对象
  • request对象封装的是调用JSP页面的请求信息,它是HttpServletRequest接口的一个实例。

  • 该对象的属性值只在一个请求中保存

  • 常用方法如下:

  • 方法声明功能介绍
    String getMethod()返回客户端向服务器端传送数据的方式
    String getParameter(String name)返回客户端向服务器端传送的参数值
    String[] getParameterValues( String name)获得指定参数的所有值
    String getRequestURI()获得请求地址
    String getRemoteAddr()返回发送请求的客户端或最后一个代理的IP地址
    int getRemotePort()返回发送请求的客户端或最后一个代理的端口号
    String getServerName()获取服务器的名字
    int getServerPort()获取服务器端的端口
    void setAttribute(String name,Object o)在此请求中存储属性。属性在请求之间重置
    Object getAttribute(String name)将指定属性的值作为对象返回,若不存在则返回空
5.response内置对象
  • response对象用于给客户端相应输出处理结果,它是HttpServletResponse接口的一个实例。

  • 经常用于设置HTTP标题,添加cookie、设置响应内容的类型和状态、发送HTTP重定向和编码

    URL。

  • 常用方法如下:

    方法声明功能介绍
    void addCookie(Cookie cookie)添加一个Cookie对象,用于在客户端保存特定的信息
    void addHeader(String name, String value)添加HTTP头信息,该Header信息将发送到客户端
    boolean containsHeader(String name)判断指定名字的HTTP文件头是否存在
    void sendRedirect(String location)重定向JSP文件
    void setContentType(String type)设置类型与编码方式
6. session内置对象
  • session对象表示浏览器和服务器之间的一次会话,一次会话可以包含多次请求,在多次请求之间

    可以借助session对象存储信息,它是HttpSession类型的一个实例。

  • 该对象的属性值在一次会话范围中保存,保存在服务器端,只要不关闭浏览器,默认半个小时内都

    可以访问

  • 常用方法如下:

    方法声明功能介绍
    void setAttribute(String name,Object value)使用指定的名称将对象绑定到此会话
    Object getAttribute(String name)返回在此会话中用指定名称绑定的对象,如果没有对象在该名称下绑定则返回空值
7. application内置对象
  • application对象是一个web程序的全局变量,它是ServletContext类型的一个实例。

  • 在整个服务器上保存数据,所有用户共享。

  • 常用方法如下:

    方法声明功能介绍
    void setAttribute(String name, Object object)将对象绑定到此servlet上下文中的给定属性名
    Object getAttribute(String name)返回给定名称的servlet容器属性,若没有该名称的属性返回null
8. pageContext****内置对象
  • pageContext对象是PageContext类型的对象,可以使用这个对象来管理其他的隐含对象

  • 只在一个页面中保存数据。

    方法声明功能介绍
    void setAttribute(String name, Object value,int scope)使用适当的作用域设置指定的名称和值
    Object getAttribute(String name, int scope)返回指定作用域中名称关联的对象,若找不到则返回null
    ServletRequest getRequest()获取请求对象
    ServletResponse getResponse()获取响应对象
    HttpSession getSession()获取会话对象
    ServletConfig getServletConfig()获取配置对象
    JspWriter getOut()获取输出对象
    Object getPage()获取页面对象
    Exception getException()获取异常对象
9.exception****内置对象
  • exception 对象是Throwable的实例,表示的是JSP的异常信息。

  • 如果要使用它,必须将对应页面page指令的isErrorPage属性设置成true。

  • 单个页面的处理方式

    <%@page errorPage="error.jsp" %>
    
  • 在web.xml中配置统一的异常处理页面。

    <error-page>
    <exception-type>java.lang.Throwable</exception-type>
    <location>/error.jsp</location>
    </error-page>
    

标签:String,核心技术,void,对象,JSP,页面,name
From: https://blog.csdn.net/W20001228/article/details/143023489

相关文章

  • jsp东哈驾校管理系统的设计与实现dy35m(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表学员,教练,报名登记,退学登记,练车预约,考试预约,报考信息,报考反馈,成绩信息开题报告内容一、项目背景随着汽车保有量的不断增加,驾驶培训行业迎来了巨大的发......
  • jsp订餐管理系统的设计与实现3v4h1--(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表用户,厢房信息,厢房预约,菜品分类,特色美食,员工信息,营业统计开题报告内容一、项目背景随着餐饮行业的数字化转型,订餐管理系统成为提升餐厅运营效率、优化顾......
  • jsp动物园管理系统的设计与实现zoejc程序+源码+数据库+调试部署+开发环境
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表饲养员,后勤人员,动物类型,动物信息,食谱定制,物资信息,物资入库,排班申请,排班申请2,工资信息开题报告内容一、研究背景与意义随着城市化进程的加快和公众对......
  • javaWeb项目-ssm+jsp股票交易管理系统功能介绍
    本项目源码(点击下方链接下载):java-ssm+jsp股票交易管理系统实现源码(项目源码-说明文档)资源-CSDN文库项目关键技术开发工具:IDEA、Eclipse编程语言:Java数据库:MySQL5.7+框架:ssm、Springboot前端:Vue、ElementUI关键技术:springboot、SSM、vue、MYSQL、MAVEN数据库工......
  • AI赋能R-Meta分析核心技术:从热点挖掘到高级模型、助力高效科研与论文发表
     Meta分析是针对某一科研问题,根据明确的搜索策略、选择筛选文献标准、采用严格的评价方法,对来源不同的研究成果进行收集、合并及定量统计分析的方法,现已广泛应用于农林生态,资源环境等方面,成为Science、Nature论文的重要分析方法。以ChatGPT为代表AI大语言模型带来了新一波人工......
  • jsp电子商务平台设计与实现4x766程序+源码+数据库+调试部署+开发环境
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、项目背景随着互联网技术的不断进步,电子商务平台已成为现代商业活动的重要组成部分。它不仅打破了地域限制,为消费者提供了丰富的商品选择和便捷......
  • jsp电子产品销售系统n0tof程序+源码+数据库+调试部署+开发环境
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、课题名称电子产品销售系统的设计与实现二、研究背景与意义随着电子商务的蓬勃发展,电子产品销售行业正经历着从传统销售模式向线上销售模式的......
  • jsp电影推送及电影数据管理系统3f6db(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、课题背景与意义随着电影产业的快速发展,用户对电影的选择需求日益多样化。然而,如何从海量的电影资源中精准地找到用户感兴趣的内容,成为了一个亟......
  • jsp电影院管理系统7740a--(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、项目背景与目标随着电影市场的不断扩大和观众需求的多样化,电影院管理面临着诸多挑战。传统的人工管理方式已难以满足高效、准确、实时的管理需......
  • jsp电子商城系统8vaq3--(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、项目背景随着互联网技术的飞速发展,电子商务已成为现代商业的核心模式之一。电子商城作为电子商务的关键载体,为企业和个人提供了一个跨越地域限......