JavaWeb基础汇总Word文档格式.docx

上传人:b****6 文档编号:18094328 上传时间:2022-12-13 格式:DOCX 页数:78 大小:74.29KB
下载 相关 举报
JavaWeb基础汇总Word文档格式.docx_第1页
第1页 / 共78页
JavaWeb基础汇总Word文档格式.docx_第2页
第2页 / 共78页
JavaWeb基础汇总Word文档格式.docx_第3页
第3页 / 共78页
JavaWeb基础汇总Word文档格式.docx_第4页
第4页 / 共78页
JavaWeb基础汇总Word文档格式.docx_第5页
第5页 / 共78页
点击查看更多>>
下载资源
资源描述

JavaWeb基础汇总Word文档格式.docx

《JavaWeb基础汇总Word文档格式.docx》由会员分享,可在线阅读,更多相关《JavaWeb基础汇总Word文档格式.docx(78页珍藏版)》请在冰豆网上搜索。

JavaWeb基础汇总Word文档格式.docx

step1:

解压到/home/soft01下

step2:

配置环境变量

cd/home/soft01

vi.bash_profile

JAVA_HOME:

jdk的主目录

CATALINA_HOME:

tomcat的主目录

PATH:

CATALINA_HOME/bin

step3:

启动Tomcat

cd/home/soft01/tomcat主目录/bin

shstartup.sh或者shcatalina.shrun

接下来,可以打开浏览器,输入,验证是否配置成功。

step4:

关闭Tomcat

shshutdown.sh

②Windows系统下安装和配置的步骤

解压到某个盘下

JAVA_HOME(JDK的主目录)必须配置

CATALINA_HOME(Tomcat的主目录)可以不配置

PATH(Tomcat的bin目录)可以不配置

“我的电脑”右键“属性”,打开“系统属性”的“高级”选项卡,找到“环境变量。

新建“用户变量”。

新建JAVA_HOME。

新建系统变量或新建用户变量均可,建议新建用户变量。

新建CATALINA_HOME(可以不配置)。

新建PATH(可以不配置)。

如果环境变量中已经有PATH,修改该PATH即可,使用“;

”分号作分隔,如下所示:

PATHC:

\ProgramFiles\Java\;

D:

\apache-tomcat-

Windows操作系统下以“;

”分号为分隔符;

linux系统下以“:

”冒号为分隔符。

进入启动Tomcat的bin目录下,双击“startup.bat”。

进入启动Tomcat的bin目录下,双击“shutdown.bat”。

2)Tomcat目录结构简介

①bin目录:

存放启动和关闭服务器的一些脚本(命令)。

②common目录:

共享(部署在该服务器上的所有程序都可以使用)的一些jar包。

③conf目录:

存放服务器的一些配置文件。

④webapps目录:

部署目录。

⑤work目录:

服务器运行时,生成的一些临时文件。

1.4如何写一个Servlet(不使用开发工具)

先写一个Java类,实现Servlet接口或者继承HttpServlet抽象类。

publicclassHelloWorldServletextendsHttpServlet{

//Tomcat会自动调用service,自己不用再去写方法调用了,所以必须把名字写对!

publicvoidservice(HttpServletRequestrequest,HttpServletResponseresponse)

throwsServletException,IOException{

//异常必须写两个,不能写成Exception,也不能再多个异常

//设置一个消息头content-type,告诉浏览器返回的数据类型是一个html文档,以及编码格式。

此外,还可以告诉服务器,在使用out输出时,使用指定的编码格式进行编码

response.setContentType("

text/html;

charset=utf-8"

"

);

//通过响应对象,获得一个输出流

PrintWriterout=response.getWriter();

//调用流的方法进行输出,其实质是将处理结果写到了response对象上

out.println("

<

spanstyle='

color:

red;

font-size:

30px;

'

>

HelloWorld<

/span>

/**out.close()不调用也可以,因为Servlet方法执行完毕,容器会自动调用out.close方法*/

out.close();

}}

执行编译操作:

javac-d.HelloWorldServlet.java

但是会报错,找不到某些类!

其中-d.代表把编译后的文件放在当前文件夹下。

把Tomcat安装目录中common中lib中的servlet-api.jar和刚编写类放一起(是编译时需要用的jar)。

再次编译:

javac-cpservlet-api.jar-d.HelloWorldServlet.java,其中-cpservlet-api.jar表示告诉Java编译器去哪里找需要的class文件(到servlet-api.jar的jar包中找)。

打包,即创建一个具有如下结构的文件夹:

appname(文件夹名起应用名)

|--WEB-INF(必须大写)

|--classes(文件夹,放.class文件)

|--lib(文件夹,放.jar文件,可没有)

|--web.xml(部署描述文件url-pattern)

将编译好的.class文件放入classes文件夹中(如有包,则一起放入)。

web.xml文件内容:

?

xmlversion="

1.0"

encoding="

UTF-8"

web-appversion="

2.4"

<

!

--根元素-->

xmlns="

/ns/j2ee"

xmlns:

xsi="

/XMLSchema-instance"

xsi:

schemaLocation="

/ns/j2ee

/ns/j2ee/web-app_2_4.xsd"

servlet>

servlet-name>

helloWorld<

/servlet-name>

--类名要完整(包名.类名都要有)-->

servlet-class>

Servletday01.HelloWorldServlet<

/servlet-class>

/servlet>

servlet-mapping>

url-pattern>

/hello<

/url-pattern>

--注意斜线开头-->

/servlet-mapping>

/web-app>

部署,将step3创建的文件夹拷贝到Servlet容器特定的文件夹下面(拷贝到Tomcat的webapps目录下)。

也可以将step3创建的文件夹使用jar命令进行压缩,生成.war为后缀的文件,然后拷贝。

step5:

启动Servlet容器,访问Servlet。

访问格式:

比如在浏览器地址栏输入:

1.5使用MyEclipse开发Servlet

配置MyEclipse,使得MyEclipse能够管理Tomcat。

1)点击工具栏上的“Run/Stop/RestartMyEclipseServers”图标旁边的下拉箭头,选择“ConfigureServer”。

2)在弹出的对话框“Preferences”中展开“MyEclipse”--“Servers”--“Tomcat”--“Tomcat5.X”

选择你目前电脑上Tomcat的版本,此处以Tomcat5为例。

3)将Tomatserver选项置为“Enable”(默认为“Disable”)。

4)点击“Tomcathomedirectory”之后的“Browse”按钮,选择Tomcat主目录,确定,然后“Tomcatbasedirectory”和“Tomcattempdirectory”自动生成,点击“OK”。

两项可改可不改的:

Tomcat下的JDK--“TomcatJDKname”是自己已安装的JDK(Tomcat也是java写的也得依赖JDK)。

建议Tomcat下的Launch--“Tomcatlaunchmode”设置为Runmodel,默认为Debugmode而该模式在有些时候会显示不正常。

5)回到工具栏上的“Run/Stop/RestartMyEclipseServers”图标旁边的下拉箭头,选择Tomcat5.x,点击“Start”。

6)当在控制台显示“ServerstartupinXXXms“,则Tomcat启动成功。

如果出现“Addressalreadyinuse:

JVM_Bind”异常,则说明已经启动了一个Tomcat。

解决办法:

运行shutdown命令,关闭之前开启的Tomcat。

建立一个WebProject(Web工程),填写“Projectname”,JDK最好选5.0,其他选项默认,点击“Finish”。

编写Java类和web.xml文件。

部署项目到Tomcat服务器。

1)点击工具栏“DeployMyEclipseJ2EEProjecttoServer”按钮。

2)弹出对话框“ProjectDeployments”,点击“Add”按钮。

3)弹出“NewDeployment”对话框,选择“Tomcat5.x”,点击“Finish”,最后点击"

OK"

在对话框“ProjectDeployments”对话框有4个按钮,常用的为

①“Add”按钮:

在Tomcat服务器上增加新应用。

②“Remove”按钮:

删除Tomcat服务器上的新应用。

③“Redeploy”按钮:

重新部署该应用,一般每次修改后都需要重新部署一下。

访问Tomcat服务器上的Servlet实例。

在IDE工具(集成开发环境)中启动Tomcat部署项目后,不需要重新启动服务器,系统会自动部署。

IDE工具简化了Servlet的开发步骤:

第1步写一个java类手动

第2步编译自动

第3步打包自动

第4步部署不用手动拷贝,点一下

第5步启动服务器,访问servlet手动

默认情况下,应用名和工程名相同。

工程--属性--MyEclipse--Web--WebContext可修改部署后的应用名。

新建Web工程时也可以手动在ContextrootRUL中更改应用名。

1.6Servlet是如何运行的

比如,在浏览器地址栏输入:

浏览器依据ip和port建立与Servlet容器之间的连接。

浏览器将请求数据打包(即按照http协议的要求,将相关数据封装成一个数据包,一般称之为请求数据包)并发送给Servlet容器。

Servlet容器解析请求数据包,并将解析之后得到的数据放到已创建的request对象上,同时,容器也已经创建好了一个response对象。

Servlet容器依据请求资源路径(即/web01/hello)找到Servlet的配置,然后创建Servlet对象(根据xml文件里配置的类而创建)。

Servlet容器接下来调用Servlet对象的service方法,并且会将事先创建好的request对象和response对象作为service方法的参数传递给Servlet对象。

step6:

Servlet可以通过request对象获得请求参数,进行相应的处理,然后将处理结果写到response对象上。

step7:

Servlet容器读取response对象上的数据,然后将处理结果打包(响应数据包)并发送给浏览器。

step8:

浏览器解析响应数据包,将返回的数据展现给用户。

1.7常见错误及解决方式

1)404:

是一个状态码(是一个三位数字,由服务器发送给浏览器,告诉浏览器是否正确处理了请求),404的意思是说:

服务器依据请求资源路径,找不到对应的资源。

解决:

①依据

②仔细检查web.xml,特别要注意servlet-name是否一致。

2)500:

服务器处理出错,一般是因为程序运行出错。

①检查程序的代码,比如:

是否继承。

②检查web.xml,类名要填写正确。

3)405:

服务器找不到对应的service方法。

检查service方法的签名(方法名、参数类型、返回类型、异常类型)。

1.8根据请求次数显示结果和显示当前时间

eg1:

在地址栏输入,获得5个HelloWorld

qty:

请求参数名字。

5:

请求次数为5。

publicvoidservice(HttpServletRequestrequest,

HttpServletResponseresponse)throwsServletException,IOException{

//读请求参数值,返回值是String

StringqtyStr=request.getParameter("

qty"

intqty=Integer.parseInt(qtyStr);

//转成整数

Stringrs="

;

for(inti=0;

i<

qty;

i++){//处理请求,生成处理结果

rs+="

divstyle='

30px'

/div>

}

//输出处理结果,设置一个消息头content-type,告诉浏览器返回的数据类型是一个html文档

text/html"

out.println(rs);

out.close();

eg2:

在网页上显示当前时间

Java类中写

publicvoidservice(HttpServletRequestrequest,

//告诉浏览器返回的数据类型是一个html文档

Datedate=newDate();

SimpleDateFormatsdf=newSimpleDateFormat("

yyyy-MM-dd"

Stringnow=sdf.format(date);

out.println(now);

//输出到页面out.close();

web.xml中写:

Date<

Servletday01.DateDemo<

/date<

2、HTTP协议

2.1什么是HTTP协议

HTTP(Hypertexttransportprotocol)是超文本传输协议。

是一种应用层协议,由W3C制定,它定义了浏览器(或者其他客户端)与Web服务器之间通讯的过程及数据格式。

2.2通讯的过程

浏览器建立与Web服务器之间的连接(Socket)。

浏览器要将请求数据打包(请求数据包),然后发送给Web服务器。

Web服务器将处理结果打包(响应数据包),然后发送给浏览器。

Web服务器关闭连接。

特点:

一次请求,一次连接。

优点:

Web服务器可以利用有限的连接个数为尽可能多的客户服务(效率高)。

如果浏览器要再发请求,就必须重新建立一个新的连接。

2.3数据格式

1)请求数据包

①请求行:

请求方式+请求资源路径+协议描述。

②若干消息头:

消息头是一些键值对,一般由W3C定义,有特定的含义。

浏览器和服务器之间,可以通过发送消息头来传递一些特定的信息,比如:

浏览器可以通过user-agent消息头来通知服务器浏览器的类型和版本。

③实体内容:

只有当请求方式为post时,浏览器才会将请求参数添加到实体内容里面,如果请求方式为get,浏览器会将请求参数添加到请求资源路径的后面。

2)响应数据包

①状态行:

协议描述+状态码+状态描述。

服务器也可以发送一些消息头给浏览器,比如content-type,告诉浏览器服务器返回的数据类型和编码格式(字符集,比如:

UTF-8、ISO-8859-1)。

程序处理之后,返回的结果。

3)截获数据包,使用MyEclipse中的TCP/IPMonitor,TCP/IPMonitor相当于一个代理服务器,它的原理图如下:

2.4TCP/IPMonitor的使用

1)Window--ShowView--Other--MyEclipseCommon--TCP/IPMonitor

2)在TCP/IPMonitor的空白处点右键--Properties--弹出对话框点Add,增加新的监视器:

3)点击Start,启动代理服务器--OK。

4)测试1.8案例eg1,地址栏输入:

,注意使用代理端口号!

执行完毕,即可查看TCP/IPMonitor出现的内容。

2.5get请求与post请求

1)哪些情况下,浏览器会使用get方式发请求:

①直接在浏览器地址输入某个地址。

②点击链接地址。

③表单默认的提交方法:

formmethod="

get(默认)/post"

2)哪些情况下,浏览器会用post方法发请求:

①设置表单的method属性值为“post”。

3)get请求的特点:

①get请求会将请求参数添加到请求资源路径的后面,因为请求行存放的数据大小有限(也就是地址栏的最长字节数),所以get请求只能提交少量的数据。

②get请求会将请求参数显示在浏览器地址栏,不安全(比如,路由器会记录整个地址)。

4)post请求的特点:

①post请求会将请求参数添加到实体内容里面,所以,可以提交大量的数据。

②post请求不会将请求参数显示在浏览器地址栏,相对安全一些。

但是,post请求并不会对请求参数进行加密处理。

用HTTPS协议进行加密处理。

服务器不关心是用浏览器还是Java程序发送的请求,只要符合协议格式,都会处理。

2.6如何读取请求参数

1)方法一:

Stringrequest.getParameter(StringparaName);

①如果paraName(即参数名称)与实际的参数名称不一致,会获得null(不报错)。

②在使用表单提交数据时,如果用户没有填写任何的值,会获得空字符串"

2)方法二:

String[]request.getParameterValues(StringparaName);

①当有多个参数且名称相同时,使用该方法。

比如:

city=bj&

city=cs&

city=wh

getParameterValues方法也可用于只有一个参数的情况。

2.7JDBC访问数据库(MySql)

1)使用MySql数据库

①登录MySql:

mysql-uroot;

//登录mysql,使用root用户权限

②查看当前所有的数据库:

showdatabases;

③创建一个新的数据库:

createdatabasedb_changdefaultcharactersetutf8;

//创建db_chang数据库,默认是用utf8编码集(不能写减号-)

④使用某个数据库:

usedb_chang;

⑤查看当前数据库有哪些表:

showtables;

droptabletablname;

//删表

⑥建表:

createtablechang_emp(idintprimarykeyauto_increment,

namevarchar(50),salarydouble,ageint);

insertintochang_emp(name,salary,age)values("

tom"

10000,23);

auto_i

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

当前位置:首页 > 成人教育 > 成考

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

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