Java EE复习.docx

上传人:b****7 文档编号:23503070 上传时间:2023-05-17 格式:DOCX 页数:66 大小:472.81KB
下载 相关 举报
Java EE复习.docx_第1页
第1页 / 共66页
Java EE复习.docx_第2页
第2页 / 共66页
Java EE复习.docx_第3页
第3页 / 共66页
Java EE复习.docx_第4页
第4页 / 共66页
Java EE复习.docx_第5页
第5页 / 共66页
点击查看更多>>
下载资源
资源描述

Java EE复习.docx

《Java EE复习.docx》由会员分享,可在线阅读,更多相关《Java EE复习.docx(66页珍藏版)》请在冰豆网上搜索。

Java EE复习.docx

JavaEE复习

JavaEE概述企业级应用系统的发展历史

JavaEE的技术组成

搭建JavaEE开发环境

•JDK(JavaDevelopmentKit)1.4.2

•Tomcat4.1.37

•Editplus

重要环境变量

Java_Home

典型应用:

选择Tomcat所需jre

Path

典型应用:

运行javac

Classpath

典型应用:

类库地址

•classpath=.;%java_home%\lib\dt.jar;%java_home%\lib\tools.jar;(注意最前边是一点再一分号,这是表示当前路径,即环境变量classpath必须包含当前路径才行,否则在运行java命令时会出现如下错误)

初识Tomcat

•重要目录,如:

–C:

\Tomcat4.1\bin

–C:

\Tomcat4.1\webapps

第一个工程

webapps

myApp

xx.jsp

WEB-INF

classes

xx.class

web.xml

<%@pageimport="java.util.Date"%>

Welcome

<%out.print(newDate());%>

什么是XML?

•XML指可扩展标记语言(EXtensibleMarkupLanguage);

•XML是一种标记语言,形式类似于HTML;

•XML的设计宗旨是存储与传输数据,而非显示数据;

•XML标签没有被预定义;需要自行定义标签;

•XML本身是不作为的。

•John写给Mike的便签,存储为XML:

Mike

John

Reminder

Don'tforgetthemeeting!

请设计一个早餐目录的xml文件

BelgianWaffles

$5.95

twoofourfamousBelgianWaffleswithplentyofrealmaplesyrup

650

StrawberryBelgianWaffles

$7.95

lightBelgianwafflescoveredwithstrawberriesandwhippedcream

900

Berry-BerryBelgianWaffles

$8.95

lightBelgianwafflescoveredwithanassortmentoffreshberriesandwhippedcream

900

面向过程

青椒炒牛肉

•取出青椒500g,用刀切成細絲,過油

•取出牛肉300g,切丁,用醬油、酒、

黑醋醃製30分鐘

•起油鍋、放入牛肉炒及青椒大火快炒

1分半

•拿出太白粉、水調在一起,這個稱為

芡汁。

•將芡汁倒入鍋中攪拌,會產生黏稠現象

這叫芶芡

•完成。

面向对象

青椒炒牛肉

•青椒

數量:

500g

處理:

用刀切成細絲,過油

•牛肉

數量:

300g

處理:

切丁,用醬油、酒、黑醋醃製

•芡汁

製作:

太白粉調上適量的水

芶芡:

將芡汁倒入鍋中

•青椒處理好、牛肉處理好、芡汁製作好,

放入鍋中快炒1分半後用芡汁芶芡即可。

classPerson{

Stringname;

PublicPerson(){

}

PublicWalk(){

}

}

对象的实现是通过对其构造函数的调用实现的。

类的实现

classPerson{

Stringname;

PublicPerson(){

}

PublicWalk(){

}

}

Personp=newPerson();

p.name=“张三”;

p.Walk();

类与继承

classPerson{

Stringname;

PublicPerson(){

}

PublicWalk(){

}

}

ClassStudentExtendsPerson{

Stringsno;

PublicStudent(){

}

publicStudy(){

}

}

创建一个接口

在程序中实现接口

类和包

•包是类、接口和/或其他包的集合,是一种组织结构。

•包能够形成层次命名空间,缩小了名称冲突的范围,易于管理名称。

导入包

•依照下列语法导入整个包:

importpackage_name.*;

•依照下列语法导入单个类:

importpackage_name.class_name;

•依照下列语法导入位置如上图表示的类My_Class:

importMy_Package.MySub_Package.My_Class;

Get与post

•在客户端,Get方式在通过URL提交数据,数据在URL中可以看到;POST方式,数据放置在HTMLHEADER内提交。

•GET方式提交的数据最多只能有1024字节,而POST则没有此限制。

•提交表单时,只能用Request.QueryString来获取Get方式提交来的数据,只能用Request.Form来获取用Post方式提交的数据。

Servlet编程

•定义:

–一种独立于操作系统平台和网络传输协议的服务器端的Java应用程序,它用来扩展服务器的功能,可以生成动态的Web页面。

•Servlet与上学期学习的Java不同之处:

–不是从命令行启动的,而是由包含Java虚拟机的Web服务器进行加载。

Servlet生命周期

•一个Servlet程序就是一个实现了javax.servlet.Servlet接口的Java类。

•Servlet接口定义了Servlet引擎(如Tomcat)与Servlet程序之间通信的协议。

•javax.servlet.GenericServlet类实现了Servlet接口,它实现了Servlet程序的基本特征和功能。

•javax.servlet.http.HttpServlet类是GenericServlet的子类,它在GenericServlet类的基础上进行了一些针对HTTP特点的扩充。

•通常情况下,我们针对Http协议开发,继承javax.servlet.http.HttpServlet。

第一个Servlet

importjava.io.IOException;

importjava.io.PrintWriter;

importjavax.servlet.ServletException;

importjavax.servlet.http.HttpServlet;

importjavax.servlet.http.HttpServletRequest;

importjavax.servlet.http.HttpServletResponse;

publicclassFirstServletextendsHttpServlet{

protectedvoiddoGet(HttpServletRequestrequest,

HttpServletResponseresponse)throwsServletException,IOException{

response.setContentType("text/html");

PrintWriterout=response.getWriter();

out.println("

DOCTYPEHTMLPUBLIC\"-//W3C//DTDHTML3.2//EN\">"

+""

+""

+""+"FirstServlet"+""

+""

+""

+"

"

+"

"+"HelloWorld!

"+"

"

+"

"

+""

+"");

}

Web.xml

处理客户端输入

•在Web程序设计中表单向服务器提交数据是最常见的方法有两种:

Post方法和Get方法,

•无论是get还是post方法提交的数据,Servlet处理方法一致:

用户只要调用HttpServletRequest的getParameter()方法,给出变量名称即可取得该变量的值。

•需要注意的是,变量的名称是大小写敏感的。

当请求的变量不存在时,将会返回一个空字符串。

Example:

登陆系统P30–P32

Login.html

GetPostData.java

用户名:

密码:

packagecom.servlet;

publicclassgetpostdataextendsHttpServlet{

protectedvoiddoPost(HttpServletRequestrequest,

HttpServletResponseresponse)throwsServletException,IOException{

response.setContentType("text/html;charset=gb2312");

//request.setCharacterEncoding("gb2312");

PrintWriterout=response.getWriter();

out.println(

"\n"+

""+"getpostdata"+"\n"+

"

\n"");

}

}

Example:

RequestParameters

publicclassRequestParamExampleextendsHttpServlet{

publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)

throwsIOException,ServletException

{

.......

stringfirstName=request.getParameter("firstname");

stringlastName=request.getParameter("lastname");

if(firstName!

=null||lastName!

=null){

out.println("FirstName:

");

out.println("="+firstName+"
");

out.println("LastName:

");

out.println("="+lastName);

}else{

out.println("NoParameters,Pleaseentersome");

}

out.print("");

out.println("FirstName:

");

out.println("
");

out.println("LastName:

");

......

}

}

发送非HTML文档

•Servlet可以使用附加在文档之前的MIME(MultipurposeInternetMailExtensions多功能Internet邮件扩充服务)信息来标识数据类型,使得HTTP传输的信息变得丰富多彩。

MIME数据类型

MIME数据类型由两部分(大类/小类)组成,如:

•image/bmpBMP

•image/gifGIF

•image/jpegJPEG

•text/htmlHTML

•text/plainTXT

•text/xmlXML

•application/pdfPDF

•application/mswordMSWORD

•application/vnd.ms-excelMSEXCEL

•application/vnd.ms-powerpointMSPOWERPOINT

发送非HTML文档

•方法:

利用HttpServletResponse对象将header的content类型设置成相应的MIME标志,如:

res.setContentType(“application/pdf”)

publicclassPDFServletextendsHttpServlet{

protectedvoiddoGet(HttpServletRequestrequest,

HttpServletResponseres)throwsServletException,IOException{

res.setContentType("application/pdf");

ServletOutputStreamout=res.getOutputStream();

Filepdf=newFile("c:

\\sample.pdf");

res.setContentLength((int)pdf.length());

FileInputStreaminput=newFileInputStream(pdf);

BufferedInputStreambuf=newBufferedInputStream(input);

intreadBytes=0;

while((readBytes=buf.read())!

=-1)

out.write(readBytes);

}

}

获取Servlet配置参数

用途:

通过配置信息来初始化Servlet可以有效避免硬编码,提高Servlet的可移植性。

获取Servlet配置参数

获取Servlet配置参数

在Servlet中得到配置参数可以通过调用getInitParameter()方法直接获得。

publicclassInitParamServletextendsHttpServlet{

protectedvoiddoGet(HttpServletRequestrequest,

HttpServletResponseres)throwsServletException,IOException{

res.setContentType("text/plain");

ServletOutputStreamout=res.getOutputStream();

Filefile=null;

BufferedInputStreambuf=null;

StringfileDir=getInitParameter("FilePath");

if(fileDir==null||fileDir.equals(""))

thrownewServletException(

"ServletparametersWrongs");

file=newFile(fileDir);

res.setContentLength((int)file.length());

FileInputStreaminput=newFileInputStream(file);

buf=newBufferedInputStream(input);

intreadBytes=0;

while((readBytes=buf.read())!

=-1)

out.write(readBytes);

}

}

}

InitParamServlet

com.servlet.InitParamServlet

FilePath

C:

\1.txt

InitParamServlet

/init

•res.setContentType("text/plain");

如何避免在代码中固定MIME数据类型?

Servlet间协作

•请求指派:

在一个Servlet处理完毕后,将客户端的请求传递到另外一个Servlet来处理。

•实现类:

Requestdispatcher

Requestdispatcher主要方法

•Requestdispatcher.forword(

ServletRequestrequest,

ServletResponseresponse)

–从servlet向服务器上其他资源(servlet,JSP文件或者HTML文件)转发请求。

•Requestdispatcher.include(

ServletRequestrequest,

ServletResponseresponse)

–包含响应中的资源(servlet,JSP文件,HTML文件)内容。

DL

<%@pagecontentType="text/html;charset=gb2312"%>

DOCTYPEHTMLPUBLIC"-//w3c//dtdhtml4.0transitional//en">

登录

欢迎登录系统

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试认证 > 其它考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1