Tomcat服务器开发教程_响应静态页面到浏览器

Tomcat服务器开发教程_响应静态页面到浏览器

更新时间:2017年04月07日

  • 视频类型:java
  • 适合对象:Java学员、Java爱好者、开发人员
  • qq交流群:1461566656
一键免费下载

下载介绍

更多>>
Tomcat服务器开发教程_响应静态页面到浏览器

【响应静态:html 资源到浏览器】

(1)需求分析:截获到请求的 URI 之后,判断请求的是否为服务器中某个 webapp 的 html 资源,如果是服务器中的某个 webapp 的 html 资源,服务器端程序应找到该文件,并且将该文件中的 html 代码读取到 JVM内存中,然后再将内存中的 html 代码响应到浏览器页面上,如果客户端请求的资源在服务器端 webapp中未找到,服务器应提示浏览器客户端“您访问的资源不存在”,这就是著名的 404 错误。 404 被称为HTTP 状态码,属于 HTTP 协议的一部分。webapp 以及 webapp 中的 html 资源不是 web 服务器开发人员需要完成的,应该是 webapp 的开发人员负责开发的。 web 服务器只负责读取该 html 资源然后响应到浏览器页面上。 所以此时我们的角色发生了改变,我们现在的角色变为 webapp 的开发人员。在httpserver 的根目录下新建 web 应用起名 oa(办公系统),在 oa 文件夹下新建 index.html 文件,并编写简单的 html 代码。 

(2)webapp 开发角色:

 A、在 httpserver 的根目录下新建 web 应用起名 oa(办公系统)文件夹

 B、在 oa 文件夹下新建 index.html 文件,并编写简单的 html 代码index.html 页面代码



OA 办公系统-首页




欢迎使用 OA 办公系统



 


(3)转变为服务器开发角色:

  A、在 HandlerRequest 类中 run()方法继续处理请求,目前已经截获到请求的 URI

  B、在 HandlerRequest 类中 run()方法中判断,请求 URI 是否以 html 或 htm 结尾

   a、如果是以 html 或 htm 结尾,服务器定位到该 html 文件,将其读取到 JVM 内存中

   b、然后再将这些 html 代码响应到浏览器页面上,浏览器解释执行 html 代码展示效果

//在 run 方法中,获取返回客户端消息对象 out

PrintWriter out = new PrintWriter(clientSocket.getOutPutStream());

if(requestURI.endWith(“ .html”) || requestURI.endWith(“ .htm”)){

responseStaticPage(requestURI,out);//响应静态页面请求

}

out.flush();

  c、 编写 public static void responseStaticPage(requestRUI,out)方法处理静态页面请求

String htmlPath = requestURI.substring(1);//获取静态页面路径

BufferedReader br = null;

try{

//读取静态页面

br = new BufferedReader(new FileReader(htmlPath)); 

StringBuilder html = new StringBuilder();

html.append(“HTTP/1.1 200 OK ”);

html.append(“Content-Type: text/html; charset=utf-8 ”); 


String temp = null;

while((temp = br.readLine()) != null){

html.append(temp);

}

out.print(html);

}catch(FileNotFoundException e){ //404 页面找不到

out.append(“HTTP/1.1 404 NotFound ”);

out.append(“Content-Type: text/html; charset=utf-8 ”);

html.append("");

html.append("404-错误");

html.append("

404-NotFound

er>

");


html.append(“”);

out.print(html);

}finally{ //关闭 br 流  }

 (4)打开浏览器,输入 URL 访问(访问的资源存在的时候)

    打开浏览器,输入 URL 访问(访问的资源不存在的时候)

    报名咨询
    免费教程
    面授学习
    直播学习
    夜校学习