前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >javaWeb idea学习笔记(七)Jsp极速入门

javaWeb idea学习笔记(七)Jsp极速入门

原创
作者头像
逆回十六夜
修改2020-02-21 14:16:32
5790
修改2020-02-21 14:16:32
举报
文章被收录于专栏:逆回十六夜逆回十六夜

JSP本质就是Servlet

Java Server Pages

Jsp基础语法

指令

Page指令

通常位于jsp页面的顶端,同一个页面可以拥有多个page指令

<%@ page 属性1=“属性值1” 属性2=“属性值2”...%>

属性:

language,指定jsp页面使用脚本语言,默认是java

import,通过该属性来引用脚本语言中使用到的类文件,默认值无

contentType,用来指定Jsp页面所采用的编码方式,默认值:text/html,ISO-8859-1

代码语言:javascript
复制
<%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8"%>
<%@ page import="java.util.*"%>

Include指令

将一个外部文件嵌入到jsp页面中同时解析这个页面的jsp语句

include指令,(静态包含)被包含的文件被原封不动的插入到包含页面中使用该指令的位置,然后JSP编译器再对这个合成的文件进行编译,最终编译后的文件只有一个。   是在翻译阶段执行

<jsp:include> (动态包含)包含文件时,当该动作标识执行后,JSP程序会将请求转发到(注意不是重定向)被包含页面,并将执行结果输出到浏览器中,然后返回页面继续执行后面的代码,以为web容器执行的两个文件,所以JSP编译器会分别对这两个文件进行编译。   在请求处理阶段执行.

从表面上来看就是一个带参数一个不带参数

示例:

one.jsp

代码语言:javascript
复制
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>one</title>
</head>
<body bgcolor="<%=request.getParameter("bgcolor")%>">
这是页面1
</body>
</html>

two.jsp

代码语言:javascript
复制
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>two</title>
</head>
<body>
<jsp:include page="one.jsp">
    <jsp:param name="bgcolor" value="red"/>
</jsp:include>
这是页面2
</body>
</html>

可以理解为直接插入到页面的位置

代码语言:javascript
复制
<html>
<head>
    <title>two</title>
</head>
<body>
<html>
<head>
    <title>one</title>
</head>
<body bgcolor="red">
这是页面1
</body>
</html>
这是页面2
</body>
</html>

taglib指令

使用标签库定义新的自定义标签,在jsp页面中启用定制行为

注释

html注释<!--内容--> 客户端可见

jsp注释<%--内容--%> 客户端不可见

或者

<%

//注释

/*注释*/

%>

Jsp脚本

代码语言:javascript
复制
<%
    out.println("大家好,我是个人练习生蔡徐坤!");
%>

Jsp声明

代码语言:javascript
复制
<%!
    String s="张三";          //声明变量
    int add(int x,int y){    //定义函数
        return x+y;
    }
%>

Jsp表达式

代码语言:javascript
复制
<p>字符串内容为<%=s%></p>
<p>表达式的计算为<%=add(5,6)%></p>

Jsp页面的生命周期

用户第一次发起请求,jsp引擎将jsp转化为servlet,生成字节码文件并执行JspInit,之后执行JspService,如果不是第一次请求,则直接执行JspService

Jsp生成的Servlet常驻内存响应速度快,每一个请求生成一个新的线程来处理,要考虑线程同步的问题,并非线程安全

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Jsp基础语法
    • 指令
      • Page指令
      • Include指令
      • taglib指令
    • 注释
      • Jsp脚本
        • Jsp声明
          • Jsp表达式
          • Jsp页面的生命周期
          相关产品与服务
          容器服务
          腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档