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

JSP学习(一) --------- JSP规范及命令书写规则

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

JSP学习(一) --------- JSP规范及命令书写规则

目录
  • 一、JSP 规范
  • 二、JSP命令书写规则
    • 基本语法
    • 实例


一、JSP 规范

1.概述

  • 来自于JAVAEE 规范的一种
  • JSP 规范制定了如何开发 JSP 文件代替响应对象将处理结果写入到响应体的开发流程
  • JSP规范制定了 Http 服务器应该如何调用管理JSP文件

2.响应对象存在弊端

  • 适合将数据量较少的处理结果写入到响应体
  • 如果处理结果数量过多,使用响应对象增加开发难度

3.JSP文件优势

  • JSP 文件在互联网通信过程中是响应对象的替代品
  • 降低将处理结果写入到响应体的开发工作量降低处理结果维护难度
  • 在JSP 文件开发时,可以直接将处理结果写入到JSP 文件不需要手写out.print命令,在Http 服务器调用 JSP 文件时,根据JSP 规范要求自动将JSP文件书写的所有内容通过输出流写入到响应体

4.HTML文件与JSP文件区别

  • 作为资源文件的类型不同
    (1) HTML文件属于静态资源文件,其相关命令需要在浏览器编译并执行的
    (2) JSP文件属于动态资源文件,其相关命令需要在服务端编译并执行

  • 调用形式不同
    (1) 如果浏览器访问HTML文件,此时Http服务器直接通过一个输出流将HTML文件中所有内容写入到响应体
    (2) 如果访问JSP文件,此时Http服务器根据JSP规范来操作JSP文件编译调用

5.两者之间的联系

混入了Java代码的网页,就是JSP。在JSP中,HTML和 Javascript源代码客户端均可见,而Java内嵌代码客户端不可见

二、JSP命令书写规则

新建一个 Java Web 项目,我们发现在其web目录下,存在一个index.jsp文件。打开此文件,内容如下。

其中,在文件中有效代码的第一行即 <%@ page contentType="text/html;charset=UTF-8" language="java" %>作用是设置网页类型为 text/html ,设置网页编码方式为 UTF - 8,编程语言为 Java。其下方的为HTML代码,会直接写入到网页当中。

在HTML代码中的内容为 $ END $,我们之前在介绍欢迎资源文件中说过,其默认欢迎资源文件为index.html, index.htm,index.jsp,优先级从高到低


     index.html
     index.htm
     index.jsp

这就是我们在打开新建网站时通常情况下会出现 一行 $ END $的原因,我们在网站中没有写index.html 与 index.htm 文件,其默认欢迎资源文件只能为 index.jsp

基本语法
  1. JSP程序段

作用 : 插入Java代码
格式 :

<% Java代码 %>
  • 标签 <% %> 中放置 Java 代码,HTML代码放在此标签之外
  • 在JSP程序段中不能定义函数
  • 凡是没有写入<% %>的代码,都被解释为HTML
  • JSP中程序段可以用很多段,但系统会认为是一大段,所以程序段中的大括号可以跨多个程序段,即无论在哪个<% % >中的Java代码,都会被解释成一个整体。
  1. JSP表达式

作用 : 将其里面内容所运算的结果输出到客户端
格式 :

<%= 变量/ 返回值/ 表达式 %>
  • JSP 表达式中不能用分号" ; "结束
  • 在 JSP 表达式中不能出现多条语句
  • JSP表达式的内容一定是字符串类型,或者能通过 toString()函数转换成字符串的形式
  1. JSP指令

作用 :JSP 指令告诉 JSP 引擎对 JSP 页面如何编译,不包含控制逻辑,不会产生任何可见的输出。
格式 :

<%@ 指令类别 属性1="属性值1" ··· 属性n="属性值n" %>

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

  • JSP 包含三个指令:page、include 和 taglib。其中,使用最多的是 page 指令和 include 指令。
  • 通常情况下,JSP程序都是以page指令开头的。page指令用来设定页面的属性和相关功能,可以导入需要的类、指明JSP输出内容的类型、指定处理异常的错误页面等操作。
  1. JSP声明

格式 :

<%! 代码 %>
  • JSP声明中,可以定义网页中的全局变量,这些变量在JSP中的任何页面都能用
  • JSP声明中定义的变量是网页级别的,系统会优先执行,所以可以在JSP的任何地方定义变量。
  • JSP声明中只能作定义,不能实现逻辑控制
实例

新建学生类,在JSP文件中创建学生对象,并学生信息以表格的形式在网页中输出出来

学生类:

package Entity;

public class Student {
    String name;
    int age;

    public Student() {

    }

    public Student(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }
}

test.jsp文件

<%@ page import="Entity.Student" %>
<%@ page import="java.util.List" %>
<%@ page import="java.util.ArrayList" %><%--
  Created by IntelliJ IDEA.
  User: 繁花fancy
  Date: 2021/11/10
  Time: 22:13
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>

<%
    Student stu1 = new Student("Mike", 18);
    Student stu2 = new Student("Heke", 20);
    Student stu3 = new Student("Shell", 19);
    List list = new ArrayList<>();
    list.add(stu1);
    list.add(stu2);
    list.add(stu3);
%>
<%
    for (Student stu : list) {

%>
姓名 年龄
<%=stu.getName()%> <%=stu.getAge()%>
<% } %>

效果如图

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/462438.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

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

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