第6章 Jsp语法基础


教学要求

(1) 熟练掌握:JDK、Eclipse jee的下载安装和使用
(2) 熟练掌握:JSP的3个编译指令和Jsp的语法
(3) 掌握:Jsp的3个动作指令

延伸阅读


6.1 JDK、Eclipse jee的下载安装和使用


6.1.1 JDK下载、安装和配置

JDK
JDK(Java Development Kit) 是Java语言的软件开发工具包(SDK)。
JDK版本
版本 名称 发行日期
JDK 1.1.4 Sparkler(宝石) 1997-09-12
JDK 1.1.8 Chelsea(切尔西–城市名) 1999-04-08
J2SE 1.2 Playground(运动场) 1998-12-04
J2SE 1.3 Kestrel(美洲红隼) 2000-05-08
J2SE 1.4.0 Merlin(灰背隼) 2002-02-13
J2SE 1.4.2 Mantis(螳螂) 2003-06-26
Java SE 5.0 (1.5.0) Tiger(老虎) 2004-09-30
Java SE 6.0 (1.6.0) Mustang(野马) 2006-04
Java SE 7.0 (1.7.0) Dolphin(海豚) 2011-07-28
Java SE 8.0 (1.8.0) Spider(蜘蛛LTS) 2014-03-18
Java SE 9.0 (1.9.0) 未知 2017-09-21
Java SE 10.0 (1.10.0) 未知 2018-03-14
Java SE 11.0 (1.11.0) LTS 2018-09-25
【实训1】JDK下载、安装、配置(建议jdk8u181)

(1) 下载地址[https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html],建议选64位[jdk-8u181-windows-x64.exe], 或选32位[jdk-8u181-windows-i586.exe]。

(2) 双击下载文件[jdk-8u181-windows-x64.exe], 一路[Next],记住安装地址如默认位置[C:\Program Files\Java\jdk1.8.0_181]。

(3) 右键[我的电脑]、[属性]、[高级]、[环境变量]、[系统变量],添加:JAVAL_HOME:[C:\Program Files\Java\jdk1.8.0_181];修改:path 前插 %JAVAL_HOME%/bin;

(4) 验证:cmd界面运行[javac -version],显示版本号1.8.0_181。

6.1.2 Eclipse jee的下载安装和使用

Eclipse
Eclipse是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。Eclipse最初是由IBM公司开发的IDE开发环境,2001年11月贡献给开源社区,现在它由非营利软件供应商联盟Eclipse基金会(Eclipse Foundation)管理。
Eclispe版本
版本代号 平台版本 主要版本发行日期 SR1发行日期 SR2发行日期
Callisto(木卫四) 3.2 2006年6月26日 N/A N/A
Europa(欧罗巴) 3.3 2007年6月27日 2007年9月28日 2008年2月29日
Ganymede(木卫三) 3.4 2008年6月25日 2008年9月24日 2009年2月25日
Galileo(伽利略) 3.5 2009年6月24日 2009年9月25日 2010年2月26日
Helios(太阳神) 3.6 2010年6月23日 2010年9月24日 2011年2月25日
Indigo(靛蓝) 3.7 2011年6月22日 2011年9月23日 2012年2月24日
Juno(朱诺) 3.8及4.2 2012年6月27日 2012年9月28日 2013年3月1日
Kepler(开普勒) 4.3 2013年6月26日 2013年9月27日 2014年2月28日
Luna(月神.露娜) 4.4 2014年6月25日 2014年9月25日 2015年2月27日
Mars(火星) 4.5 2015年6月25日 N/A N/A
Neon(霓虹灯.氖) 4.6 2016年6月25日 N/A N/A
Oxygen(氧气) 4.7 2017年6月25日 N/A N/A
Photon(光子) 4.8 2018年6月25日 N/A N/A
【实训2】Eclipse下载、安装、配置(建议安装photon-R)

(1) 下载地址[https://www.eclipse.org/downloads/packages/release/photon/r],下载[Eclipse IDE for Java EE Developers],64位[eclipse-jee-photon-R-win32-x86_64.zip], 32位[eclipse-jee-photon-R-win32.zip]。

(2) 右键安装文件[eclipse-jee-photon-R-win32-x86_64.zip]解压到如[d:\eclipse]文件夹,右键[d:\eclipse\eclipse.exe]发送到->桌面快捷方式。

(3) 解压语言包[BabelLanguagePack-eclipse-zh_4.8.0.v20180815020001.zip]解压到当前文件[eclipse],复制[eclipse]文库夹下的[features]、[plugins]目录到eclipse的安装目录下的[eclipse]中。

(4) 双击桌面快捷图标[eclipse],创建个人工作空间如[d:\jee_du]。

【实训3】Eclipse jsp网页文件的模板设置

(1) 设置jsp网页文件的字符编码:eclipse -- 窗口 > preferences - >web ->JSP Files - encoding:utf-8

(2) java代码补全:Window —> Preferences —> Java —> Editor —> Content Assist —> [auto activation triggers for java] "."->.abcdefghijklmnopqrstuvwxyz
窗口 —> 首选项 —> Java —> 编辑器 —> 内容辅助 —> 勾选 启动自动激活 —> java自动激活触发器: "." -> .abcdefghijklmnopqrstuvwxyz

(3) 设置jsp网页文件的模板:eclipse -- 窗口 > preferences - >web ->JSP Files - Editor ->templates 在这里可以设置如下的模板。

【实训4】tomcat下载、安装、配置(建议安装Tomcat8.5.34)

(1) 下载地址[https://tomcat.apache.org/],单击右侧Download列表的Tomcat 8.5.34, 选64位[32-bit Windows zip]下载[apache-tomcat-8.5.34-windows-x86.zip]安装文件,或选64位[64-bit Windows zip]下载[apache-tomcat-8.5.34-windows-x64.zip]安装文件。

(2) 右键安装文件[apache-tomcat-8.5.34-windows-x64.zip]解压到如[d:\]文件夹。

(3) 记住tomcat的安装目录[d:\apache-tomcat-8.5.34],在[d:\apache-tomcat-8.5.34\bin]双击startup.bat启动tomcat。

(4) 在浏览器网址栏输入[http://localhost:8080],显示tomcat安装成功。

(5) 记住tomcat的安装目录[d:\apache-tomcat-8.5.34],在[d:\apache-tomcat-8.5.34\bin]双击shutdown.bat停止tomcat。

(6) Eclipse中tomcat设置: 窗口 —> 首选项 —> Server —> Runtime En —> Add ->apache-tomcat-8.5.34: Name, Browser

(7) Eclipse底部Servers: New

Tomcat目录结构
/bin
存放windows或Linux平台上启动和关闭Tomcat的脚本文件。
/conf
存放Tomcat服务器的配置文件,其中最重要的是server.xml和web.xml。
/lib
存放Tomcat服务器所需的各种jar文件。
/logs
存放Tomcat执行时的日志文件。
/webapps
当发布Web应用时,默认会Web应用文件发布于此目录。
/work
存放JSP编译后产生的class文件。

6.1.3 Hello World jsp网页

JSP
JSP全名为Java Server Pages(Java服务器页面),其根本是一个简化的Servlet设计,它是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。
JSP= html + java代码 + jsp tag
JSP是在传统的网页HTML(标准通用标记语言的子集)文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件,后缀名为(*.jsp)。
JSP是服务器端程序
JSP与Servlet一样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。
JSP跨平台
用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。
常见动态网站开发技术对比
平台 特点
jsp 跨平台,安全性高,适合开发大型的、企业级的Web应用、分布式应用(Hadoop)。优势更在于包罗万象。例如:12306、10086.cn、网上银行
.net 简单易学,安全性和跨平台性差
php 简单、高效、成本低、开发周期短,适合中小型企业的Web应用开发(LAMP)
node.js 配合前端模板技术如Vue.js采用前后端分离的json/ajax作为数据格式在一些场景下很有吸引力。
python 在做数据分析和人工智能方面也有很多可以直接使用的算法库。

【例1】Hello World jsp网页(helloworld.jsp)

【实训5】Eclipse配置tomcat服务器,编辑、运行HolloWorld.jsp

(1) 配置web服务器: 窗口 - 首选项 - server - runtime - add ...

(2) 配置web浏览器: 窗口 - 首选项 - 常规 - web - 浏览器 ...

(3) Server - new / server - apache - 8.5 - 下一步

知识点
(1) /WEB-INF/web.xml中首页文件列表(首页文件名index/default):
<welcome-file-list>
	<welcome-file>/index.html</welcome-file>
	<welcome-file>/index.jsp</welcome-file>
	<welcome-file>/default.html</welcome-file>
	<welcome-file>/default.jsp</welcome-file>
</welcome-file-list>    
</p>
(2) 项目的虚拟路径 ...
(3) 修改Tomcat默认端口(conf目录下的server.xml的以下标记)
<Connector connectionTimeout="20000" port="8888" protocol="HTTP/1.1" redirectPort="8443"/>
        

6.2 Jsp基本语法


JSP基本语法(声明、表达式、脚本)、3个编译指令(@page、@include、@taglib)、7个动作指令(jsp:include、jsp:forward、jsp:param、...)、9个内置对象
JSP网页组成
图1 JSP网页组成
JSP网页组成
图2 JSP网页组成
        1. 注释 <%-- 注释--%>
        2. 脚本 <% java代码%>
        3. 声明 <%! 声明%>     (注意!紧挨着百分号,用来声明变量与方法) 
        4. 表达式 <%= 表达式%> (注意=紧挨着百分号,表达式末尾没有分号)
        5. 指令 <%@ 指令%>
    

6.2.1 jsp注释与脚本

【例2】jsp注释与脚本(comment_scriptlet.jsp)

6.2.2 jsp声明与表达式

【例3】jsp声明(declaration.jsp)

6.3 Jsp编译指令

6.3.1 page编译指令

JSP编译指令是通知JSP引擎的消息,它不直接生成输出。编译指令有下列3个。

page:该指令是针对当前页面的指令。
include:用于指定包含另一个页面。
taglib:用于定义和访问自定义标签。		<%@taglib prefix="..." url = "..."%> 
语法格式:<%@ 编译指令名 属性名="属性值"...%>
    

page指令的常用语法格式是:

6.3.2 include编译指令

【例4】include编译指令

(1) 创建ch06_jsp/date.jsp

(2) 创建ch06_jsp/date_.jsp

(3) 创建ch06_jsp/include.jsp

jsp include编译指令(include.jsp)

6.3.3 taglib编译指令

6.3.4 阶段项目

【例5】九九乘法表(multiplication.jsp)

5.3.5 jsp页面生命周期

    .metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps
    .metadata\.plugins\org.eclipse.wst.server.core\tmp0\work\Catalina\localhost\
    

【例5】jsp页面生命周期(multiplication.jsp)

5.4 动作指令


  1. jsp:include: 用于动态引入一个Jsp页面。
  2. jsp:forward: 执行页面转向,将请求的处理转发到下一个页面。
  3. jsp:param: 用于传递参数,必须与其他支持参数的标签一起使用。

5.4.1 jsp:include指令

【例6】include指令(include.jsp)

/ch06_jsp/date.jsp

/ch06_jsp/date_.jsp

/ch06_jsp/include.jsp

5.4.2 jsp:forward与jsp:param指令

【例7】forward指令(forward.jsp)

/ch06_jsp/login.jsp

/ch06_jsp/forward.jsp

JSP的 7个动作指令

  1. jsp:include: 用于动态引入一个Jsp页面。
  2. jsp:forward: 执行页面转向,将请求的处理转发到下一个页面。
  3. jsp:param: 用于传递参数,必须与其他支持参数的标签一起使用。
  4. jsp:plugin: 用于下载JavaBean或Applet到客户端执行。
  5. jsp:userBean: 创建一个JavaBean的实例。
  6. jsp:setProperty: 设置JavaBean实例的属性。
  7. sp:getProperty: 获取JavaBean实例的属性值。

5.5 习题


1.填空题(概念、知识点----------讲义中醒目的关键字)

(1)

(2)

(3)

(4)

(5)

(6)

(7)

(8)

2.操作题

(1)

(2)

(3)

(4)

3.编程题

(1) 仿照【例题2】。

(2) 仿照【例题3】。

(3) 仿照【例题7,8】使用(。

(4) 仿照【例题10】使用(。

(5) 仿照【例题11】使用




返回目录