【蓝旭】第四周预习博客


前言

预习并了解jsp


一、JSP概述

1.什么是JSP

JSP(Java Server Pages)是JavaWeb服务器端的动态资源
其根本是一个简化的Servlet设计。
通常返回给客户端的就是一个HTML文本,客户端只要有浏览器就能浏览。
它与html页面的作用是相同的,显示数据获取数据

2.JSP的组成

JSP主要由6大元素组成:指令、注释、脚本、声明、表达式、静态内容。


①指令
page指令、include指令、taglib指令
格式:<%@java代码%>

常用属性: languageimportpageEncoding

②注释
分为2种:html的注释和脚本的注释

html注释:

 <!--这是注释,但客户端可以查看到 -->
 <%--这也是注释,但客户端查看不到,减轻了网络负担--%>

脚本注释:

// 单行注释 
 /*多行注释*/

③脚本
在jsp中可执行的java代码
格式:<% java代码%>

④声明
定义变量和方法
格式:<%! java代码%>

⑤表达式
<%= 表达式%> 不以分号未结束

⑥静态内容
HTML

JSP = html + Java脚本(代码片段) + JSP动态标签

  • Servlet
    优点:动态资源,可以编程
    缺点:不适合设置html响应体
  • html:
    优点:不用为输出html标签而发愁
    缺点:html是静态页面,不能包含动态信息
  • jsp:
    优点:在原有html的基础上添加java脚本,构成jsp页面

二、JSP语法

1.JSP脚本

JSP脚本就是Java代码片段,它分为三种:

  • <% … %>:代码段,Java语句
    java代码片段(常用),用于定义0~N条Java语句(方法内能写什么,它就可以放什么)
  • <%= … %>:表达式
    表达式的值会被输出到客户端
    用于输出(常用),用于输出一条表达式(或变量)的结果
  • <%! … %>:定义,定义成员
    例如成员变量,方法等
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>JSP演示</title>
  </head>

  <body>
    <h1>JSP演示</h1>
    <%
    // Java语句
    String s1 = "hello jsp";
    // 不会输出到客户端,而是在服务器端的控制台打印
    System.out.println(s1);
    %>
  <!-- 输出到客户端浏览器上 -->
    输出变量:<%>s1 %><br/>
    输出int类型常量:<%=100 %><br/>
    输出String类型常量:<%="你好" %><br/>
    <br/>
    使用表达式输出常量是很傻的一件事,因为可以直接使用html即可,下面是输出上面的常量:<br/>
    100<br/>
  </body>
</html>
<!-- 它是jsp指令,也是一种特殊的标签! -->
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!-- java代码的片段 -->
<%
String path = request.getContextPath();//获取项目名
/*
http://localhost:8080/day11_1/
*/
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <!-- 向页面输出basePath -->
    <base href="<%=basePath%>">
    <title>My JSP 'a.jsp' starting page</title>
     
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">   
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="This is my page">
    <!--
    <link rel="stylesheet" type="text/css" href="styles.css">
    -->
 
  </head>
   
  <body>
  <%-- xxx --%>
   
<table border="1" align="center" width="60%">
    <tr>
        <td>姓名</td>
        <td>年龄</td>
    </tr>
<%
    for(int i = 0; i < 10; i++) {
%>  
    <tr>
        <td>张三</td>
        <td>29</td>
    </tr>
<%
    }
%>
</table>
     
  </body>
</html>

三、JSP原理


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值