1、jsp 和 java 的关系
一般 java 指的标注版 Java SE
另外两个版本: Java EE 和 Java ME
JSP 属于 Java EE 的一部分。
Java EE:
组件:Web层组件(JSP + Servlet) + 业务层组件(EJB)
服务:JNDI JDBC RMI JAAS JavaMail 等等
Java EE 包括2个体系:标准(上面介绍的) + 流行(Struts + Hibernate + Spring)
两套体系都是 JSP + Servlet 为基础。
2、JSP 会涉及哪些内容
JSP 语法基础 (Java + HTML):
对于 Java,需要掌握 Java 的基本语法(类定义 对象定义和使用 常用类库java.lang.*, java.util.*)
对于 HTML,主要表单元素(输入) + 表格(显示信息) + 基本HTML
JSTL,标准标签库,用于输出和控制
EL,通常与 JSTL 一起使用,主要用于输出
Servlet,几乎所有介绍 JSP 的书和课程都包含 Servlet,因为 JSP 实际上指的是 Java Web 开发。用 Servlet 主要是控制器。
JDBC,对数据库的访问。
JavaBean (Java类)
3、JSP 的运行环境
JDK
服务器:我们用Tomcat。其他的服务器: IBM Websphere + BEA WebLogic + JBoss(免费的) + GlassFish(新出的Java EE 5服务器)
4、JSP 的开发环境
页面:DreamWeaver开发页面
代码:本文编辑器 Eclipse NetBeans JBuilder
注:我们采用记事本
5、Tomcat 文件夹
webapps 主要各个应用,编写的每个应用(网站)都可以放在这个位置
bin 这个是启动服务器的相关文件,tomcat6 用于命令行方式的启动, tomcat6w 用于 windows 方式的启动
conf 用于配置,常用的是 server.xml 另外一个是 web.xml
work 存放临时文件
logs 系统运行时候的日志信息
6、实例:hello.jsp
创建一个应用,实际上需要在 webapps 中创建文件夹, bookstore, 相当于应用的名字
文件夹中要创建一个子文件夹WEB-INF,这个每个应用 web 应用都需要的。
在 WEB-INF 中需要 web.xml,是 web 应用的配置文件,还应该有 classes 和 lib 子文件夹(存放类文件)
JSP 文件和 HTML 文件直接放在 bookstore 下面。
hello.jsp文件内容如下:
<%@ page contentType="text/html; charset=gb2312"%>
<!-- 上面的代码声明文档类型和编码方式,每个JSP文件基本上都会有 -->
<html>
<head>
<title>第一个JSP程序</title>
</head>
<body>
Hello,晚上好!
</body>
</html>
先启动服务器:
访问程序:http://127.0.0.1:8080/bookstore/hello.jsp
http表示协议
127.0.0.1表示主机IP地址,也可以写主机名字
8080表示服务器的端口,上网的时候不用输入端口,因为采用了默认的端口,默认端口80。
bookstore表示应用,是应用的名字
hello.jsp就是资源
7、JSP的运行原理
过程:
首先启动服务器,并且要保证应用在服务器上(把应用放在webapps下面,会自动加载)
在客户端通过浏览器发送请求(在地址栏输入地址)
服务器接收到请求之后,查找有没有这个文件对应的java文件的对象。如果没有这个对象,需要创建(先把JSP文件转换成Java文件,编译成.class文件,加载类并创建对象),然后调用对象的相应方法,方法完成对用户的响应,通常是输出的html代码。
客户端接收到的是html代码,浏览器解析这个代码生成页面。