在开始写代码之前,先要把准备工作做好:

把学要的资料(即要显示在网页上的html文件 和图片)放在Moudle的根目录下,如图:

package cn.kgc.cn.kgc.bs;

import java.io.IOException;

import java.net.ServerSocket;

import java.io.InputStream;

import java.io.BufferedReader;

import java.io.InputStreamReader;

import java.io.BufferedInputStream;

import java.io.FileInputStream;

import java.io.BufferedOutputStream;

import java.net.Socket;

public class Server {

public static void main(String[] args) {

try {

//首先创建服务器的ServerSocket接口对象

ServerSocket server=new ServerSocket(8888);

while(true){

//通过server的accept()方法来对网络端进行监听,并获得网络端Socket对象

Socket socket=server.accept();

//创建多线程,以提高效率

new Thread(new Runnable() {

@Override

public void run() {

try{

//获得网络字节输入流,以便于读取网络端发送的地址请求

InputStream is=socket.getInputStream();

//使用BufferedReader把网络字节输入流包装成网络字符缓冲流,提高读取效率

BufferedReader br=new BufferedReader(new InputStreamReader(is));

//读取网络端返回的字符串请求中的第一行

String line=br.readLine();

//对第一行内容进行分割,以便于下面获取网络端需要访问的文件路径

String[]split=line.split(" ");

/**

* 分割后的元素存放在数组中

* 对下标为1的元素进行截取

* 获得学要的文件路径

*/

String sub=split[1].substring(1);

System.out.println(sub);

/**

* 需要使用服务器的本地字节输入流

* 把文件按照得到的路径写到

* 服务器的内存中

* 然后使用网络字节输出流

* 把内存中的文件写到网络端

*/

//把本地字节输入流和网络字节输出流分别包装成缓冲字符输入流和字符输出缓冲流

BufferedInputStream bis=new BufferedInputStream(new FileInputStream(sub));

BufferedOutputStream bos=new BufferedOutputStream(socket.getOutputStream());

int len=0;

//读取文件

while((len=bis.read())!=-1){

//把文件写到网络端

bos.write(len);

}

//释放资源呢

bos.close();

bis.close();

is.close();

socket.close();

}catch(IOException e){

e.printStackTrace();

}

}

}).start();

}

} catch (IOException e) {

e.printStackTrace();

}

}

}

java服务器访问html_浏览器输入服务器端口号来访问html网页相关推荐

  1. java服务器推送浏览器_前端如何让服务器主动向浏览器推送数据

    前言 前面我们已经聊了ajax,它的特点是浏览器必须先发起请求,服务器才能给出对应的响应,想一想能不能让服务器主动向浏览器推送数据呢?那么这篇文章我们来聊一聊服务器推送功能. 轮询 假设你现在需要去做 ...

  2. 服务器端口被疯狂占用,服务器端口号占用的处理

    报错内容: org.apache.catalina.LifecycleException: Protocol handler start failed org.apache.catalina.Life ...

  3. java服务器下载文件浏览器无反应

    用google浏览器作的测试 需求: 将指定内容以文件流的形式下载 代码: @RequestMapping("saveSort") public void saveSort(Str ...

  4. 在阿里云网站备案后,浏览器输入域名还是无法访问网站

    1)域名是否解析?是否与ip地址绑定. 2)安全组80端口是需要打开的,由于默认不打开,我就被卡在了这一步.

  5. 猫和老鼠java下载安装_tomcat(Java服务器)

    Tomcat(Java服务器工具)是一款十分优质的Java服务器软件.在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选.对于一个初学者来说,可以这样认为,当在一台机 ...

  6. 网页vnc连接服务器后怎么使用,如何使用TightVNC Java Viewer从Web浏览器访问远程VNC桌面...

    VNC代表( 虚拟网络计算 )是用于管理和控制的机器上远程使用VNC客户端调用VNC查看一个开源的图形桌面共享工具. 您必须在机器访问远程桌面上安装VNC客户端,但如果你不希望你的机器上安装VNC客户 ...

  7. 远程服务器端口怎么修改,如何修改远程服务器端口号

    如何修改远程服务器端口号 内容精选 换一换 云堡垒机与AD服务器对接,认证登录系统的用户身份,AD认证的模式包括认证模式和同步模式两种.认证模式在此模式下,云堡垒机不会同步AD域服务器上的用户信息,需 ...

  8. java服务器访问接口提示network error_北京JAVA开发三年,拿到美团35K的offer面试心得...

    前言 长文干货提示,文章为大家完整记录了一位在北京做了3年的JAVA开发的朋友,如何通过美团的面试及拿到35K的offer.全篇内容由全程电话录音再手打腾稿,原创手打不易,请记得三连支持! 文章末尾有 ...

  9. php如何修改服务器的端口号,php请求远程服务器端口号

    php请求远程服务器端口号 内容精选 换一换 已成功登录Java性能分析.待安装分析辅助软件的服务器已开启sshd.已安装JDK并配置环境变量.打开"添加目标环境"窗口,如图1所示 ...

  10. 浏览器输入域名网址访问后的过程详解

    我们从系统网络的角度分析在浏览器输入域名网址访问后的过程: 1.以富贵论坛为例,客户端浏览器通过DNS解析到https://www.fgba.net/,IP地址是202.108.22.5,通过这个IP ...

最新文章

  1. Win10安装bash慢的解决方案
  2. GitHub + jsDelivr + PicGo 搭建个人图床
  3. 自定义动画属性java_创建酷炫动画效果的10个JavaScript库
  4. Windows下安装配置Maven
  5. Python不使用scrapy框架而编写的网页爬虫程序
  6. 修改Launcher2欢迎页面字符重叠
  7. 数据结构实验5-递归
  8. 概率论由相关性求数学期望和方差的公式_概率论笔记2--离散随机变量、数学期望和方差...
  9. 基于can总线的A2L文件解析(2)
  10. 信息安全从业者书单推荐
  11. 1002. 写出这个数 (20)练习
  12. 一文读懂微信之父张小龙:失败天才、颠覆者、独裁者、人性操控师
  13. 科研篇一:NeurIPS2019 分类整理-对抗样本Meta-Learning
  14. eureka集群高可用配置
  15. MySQL面试题——聚簇索引和非聚簇索引
  16. css应该放在哪里,css文件应该放在哪
  17. 小程序云开发,学习总结
  18. 新闻学计算机报哪一项,2017年新闻学考研常考名词解释汇总(一)
  19. 文旅融合助力沉浸式夜游体验项目的发展
  20. 徒给别人做嫁衣——与人共同创业(1)

热门文章

  1. Hadoop学习笔记—6.Hadoop Eclipse插件的使用
  2. UVaOJ 10328 Coin Toss
  3. [译]C#7 Pattern Matching
  4. Emoji表情符号在MySQL数据库中的存储
  5. 【机房收费系统C#版】——导出Excel
  6. OpenCV学习:OpenCV文件一览
  7. 学习yii2.0框架阅读代码(九)
  8. 2014年10月30日-----SQL的基础知识
  9. 关于c#中的string
  10. 第十二章 演员评论家(Actor-Critic)-强化学习理论学习与代码实现(强化学习导论第二版)