原文 链接 http://blog.csdn.net/iojust/article/details/52429805 -
———热情依旧
- 环境搭建:
- jdk环境配置
- jdk下载:
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html - 安装完成后,系统属性->环境变量->系统变量新建JAVA_HOME,变量值为安装路径,如图
- 系统属性里找到path属性,编辑,在后面加 ;%JAVA_HOME%\bin;
-用户变量里新建CLASSPATH,变量值.
-;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
--
配置完成后,windows+r运行输入“cmd”,输入java,javac,java -version(ps:java和-version中有空格),分别出现对应信息,则配置成功。
--
-
-
- Tomcat环境配置
Tomcat:TomcatTomcat是一个实现了JAVA EE标准的最小的WEB服务器,是Apache 软件基金会的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。因为Tomcat 技术先进、性能稳定,而且开源免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。学习JavaWeb开发一般都使用Tomcat服务器,该服务器支持全部JSP以及Servlet规范
-
下载:http://tomcat.apache.org(ps:下载时候可以直接下载zip格式,免安装,解压即可)
-文件夹如下:
- bin ——Tomcat启动关闭的脚本目录
conf ——Tomcat配置文件
lib ——-Tomcat运行需要的库文件(JARS)
logs ——Tomcat执行时的日志文件
temp ——Tomcat运行时临时文件
webapps ——Tomcat的主要Web发布目录(存放我们自己的JSP,SERVLET,类)
work ——Tomcat的工作目录,Tomcat将翻译JSP文件到的Java文件和class文件放在这里。
- bin ——Tomcat启动关闭的脚本目录
启动Tomcat服务
方法两种:
1,方法一:在CMD命令下输入命令:startup。
2,方法二:右键点击桌面上的“我的电脑”->“管理”->“服务和应用程序”->“服务”,找到“Apache Tomcat”服务,右键点击该服务,选择“属性”,将“启动类型”由“手动”改成“自动”。- 测试Tomcat
打开浏览器,在地址栏中输入http://localhost:8080,出现如下界面,成功。
- jsp基础学习:
- JSP表达式
JSP脚本表达式(expression)用于将程序数据输出到客户端
语法:<%= 变量或表达式 %>
举例:输出当前系统时间:
<%= new java.util.Date() %>
JSP脚本表达式中的变量或表达式后面不能有分号(;)
- JSP脚本片断
JSP脚本片断(scriptlet)用于在JSP页面中编写多行Java代码。语法:
<%
多行java代码
%>
在<% %>中可以定义变量、编写语句,不能定义方法。
范例:
<%
int a = 2;
int b = 4;
int c = a + b;
%>
a+b=<%=c%>
- JSP注释
在JSP中,注释有两大类:
显式注释:直接使用HTML风格的注释:<!- - 注释内容- ->
隐式注释:直接使用JAVA的注释://、/*……*/
JSP自己的注释:<%- - 注释内容- -%>
区别
> <!--这个注释可以看见-->
>
> <%
> //JAVA中的单行注释
>
> /*
> JAVA中的多行注释
> */ %>
>
> <%--JSP自己的注释--%>
- JSP指令
JSP 2.0规范*定义了三个指令:
- page指令
- Include指令
- taglib指令
JSP指令的基本语法格式:
<%@ 指令 属性名=”值” %>
|-page指令(页面属性);
|-include指令(类似于 C语言 define);
|-taglib指令(引入核心标签库): taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"
- 九大内置对象
page,request,session,application在作用域处记录
-
out对象:
out对象是通过调用pageContext对象的getOut方法返回的,其作用和用法与ServletResponse.getWriter方法返回的PrintWriter对象非常相似。
-
pageContext对象:
pageContext 对象的作用是取得任何范围的参数,通过它可以获取
JSP页面的out、request、reponse、session、application
等对象。pageContext对象的创建和初始化都是由容器来完成的,在JSP页面中可以直接使用 pageContext对象。 -
通过pageContext获得其他对象
- getException方法返回exception隐式对象
- getPage方法返回page隐式对象
- getRequest方法返回request隐式对象
- getResponse方法返回response隐式对象
- getServletConfig方法返回config隐式对象
- getServletContext方法返回application隐式对象
- getSession方法返回session隐式对象
- getOut方法返回out隐式对象
-
response对象:
代表的是对客户端的响应,主要是将JSP容器处理过的对象传回到客户端。response对象也具有作用域,它只在JSP页面内有效。
-
config 对象
config 对象的主要作用是取得服务器的配置信息。通过 pageConext对象的 getServletConfig()
方法可以获取一个config对象。当一个Servlet 初始化时,容器把某些信息通过 config对象传递给这个 Servlet。
开发者可以在web.xml 文件中为应用程序环境中的Servlet程序和JSP页面提供初始化参数。 -
exception 对象
exception 对象的作用是显示异常信息,只有在包含 isErrorPage=”true”
的页面中才可以被使用,在一般的JSP页面中使用该对象将无法编译JSP文件。excepation对象和Java的所有对象一样,都具有系统提供的继承结构。exception
对象几乎定义了所有异常情况。在Java程序中,可以使用try/catch关键字来处理异常情况;
如果在JSP页面中出现没有捕获到的异常,就会生成 exception 对象,并把 exception
对象传送到在page指令中设定的错误页面中,然后在错误页面中处理相应的 exception 对象。
- JSP属性作用域
当前页 page:
一个属性只能在一个页面中取得,跳转到其他页面无法取得
一次服务器请求 request:
一个页面中设置的属性,只要经过了服务器跳转,则跳转之后的页面可以继续取得。
一次会话 session:
一个用户设置的内容,只要是与此用户相关的页面都可以访问(一个会话表示一个人,这个人设置的东西只要这个人不走,就依然有效)
上下文中 application:
在整个服务器上设置的属性,所有人都可以访问
- EL表达式
1、获取数据
EL表达式主要用于替换JSP页面中的脚本表达式,以从各种类型的web域 中检索java对象、获取数据。
使用EL表达式获取数据语法:
“${标识符}”
分别从page、request、session、application四个域中查找相应的对象,找到则返回相应对象,
找不到则返回”” (ps:不是null,而是空字符串)。
2、执行运算
利用EL表达式可以在JSP页面中执行一些基本的运算。
1、关系运算符:
2、逻辑运算符:
3、empty运算符:检查对象是否为null(空)
4、二元表达式:${user!=null?user.name :”“}
5、[ ] 和 . 号运算符
3、获取web开发常用对象
EL表达式语言中定义了11个隐含对象,使用这些隐含对象可以很方便地获取web开发中的一些常见对象,并读取这些对象的数据。
语法:${隐式对象名称}:获得对象的引用
序号 | 隐含对象名称 | 描 述 |
1 | pageContext | 对应于JSP页面中的pageContext对象(注意:取的是pageContext对象。) |
2 | pageScope | 代表page域中用于保存属性的Map对象 |
3 | requestScope | 代表request域中用于保存属性的Map对象 |
4 | sessionScope | 代表session域中用于保存属性的Map对象 |
5 | applicationScope | 代表application域中用于保存属性的Map对象 |
6 | param | 表示一个保存了所有请求参数的Map对象 |
7 | paramValues | 表示一个保存了所有请求参数的Map对象,它对于某个请求参数,返回的是一个string[] |
8 | header | 表示一个保存了所有http请求头字段的Map对象,注意:如果头里面有“-” ,例Accept-Encoding,则要header[“Accept-Encoding”] |
9 | headerValues | 表示一个保存了所有http请求头字段的Map对象,它对于某个请求参数,返回的是一个string[]数组。注意:如果头里面有“-” ,例Accept-Encoding,则要headerValues[“Accept-Encoding”] |
10 | cookie | 表示一个保存了所有cookie的Map对象 |
11 | initParam | 表示一个保存了所有web应用初始化参数的map对象 |
- JavaBean
- 什么是JavaBean
JavaBean是一个遵循特定写法的Java类,它通常具有如下特点
- 这个Java类必须具有一个无参的构造函数
- 属性必须私有化。
- 私有化的属性必须通过public类型的方法暴露给其它程序,并且方法的命名也必须遵守一定的命名规范。
javaBean范例:
public class UserBean {
// ------------------UserBean私有属性---------------------------------------
private String uesrname;
private String password;
private String sex;
private int age;
// ---------------------------------------------------------
// ------------------UserBean无参数构造方法---------------------------------------
/**
* 无参数构造方法
*/
public UserBean() {
}
// ---------------------------------------------------------
// ------------------UserBean对外提供的用于访问私有属性的public方法---------------------------------------
public String getUesrname() {
return uesrname;
}
public void setUesrname(String uesrname) {
this.uesrname = uesrname;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
- 在JSP中使用JavaBean
JSP技术提供了三个关于JavaBean组件的动作元素,即JSP标签,它们分别为:
- 标签:用于在JSP页面中查找或实例化一个JavaBean组件。
- 标签:用于在JSP页面中设置一个JavaBean组件的属性。
- 标签:用于在JSP页面中获取一个JavaBean组件的属性。
- Servlet
- Servlet简介
Servlet是sun公司提供的一门用于开发动态web资源的技术。
Sun公司在其API中提供了一个servlet接口,用户若想用发一个动态web资源(即开发一个Java程序向浏览器输出数据),需要完成以下2个步骤:
1、编写一个Java类,实现servlet接口。
2、把开发好的Java类部署到web服务器中。
按照一种约定俗成的称呼习惯,通常我们也把实现了servlet接口的java程序,称之为Servlet.
- Eclipse创建和编写Servlet
这里引用一下图片
- 核心标签库
JSTL的核心标签库标签共13个,使用这些标签能够完成JSP页面的基本功能,减少编码工作。
从功能上可以分为4类:表达式控制标签、流程控制标签、循环标签、URL操作标签。
(1)表达式控制标签:out标签、set标签、remove标签、catch标签。
(2)流程控制标签:if标签、choose标签、when标签、otherwise标签。
(3)循环标签:forEach标签、forTokens标签。
(4)URL操作标签:import标签、url标签、redirect标签、param标签。
在JSP页面引入核心标签库的代码为:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
引用菜鸟教程↓
- 学习总结
- 本次实践课,因为各方面原因,学习时间较短,但是仍然受益匪浅,通过老师的讲解,可以避免走很多弯路,并且在接下来的学习中,帮助能够做到“修行在个人”,让我们对于web开发有了了解和兴趣,激励我们自主探讨和研究。