首页
学习
活动
专区
工具
TVP
发布

自己小型静态服务器

最近,由于计算机网络课程,自己动手写了一个静态服务器,感觉挺好玩,慢慢了解到tomcat服务器原理,而我这次做只做了GET和PUT方法,废话不多说,下面上代码: package com.xanxus.http...= -1) { fos.write(requestEntity.toString().getBytes()); contentLength -= count; } fos.close(); // 响应报文...InputStreamReader(socket.getInputStream())); OutputStream responseStream = socket.getOutputStream(); // 客户端发送请求字符串...{ stateCode = 404; } fileType = filePath .substring(filePath.lastIndexOf(".") + 1); // 判断请求文件类型,设置输出mime...e.printStackTrace(); } } } 资源下载可以到http://download.csdn.net/detail/xanxus46/4745329 是否觉得很给力,以后有时间,一定会继续动态内容

1.2K40
您找到你想要的搜索结果了吗?
是的
没有找到

自己面试题,自己答案

这个时候,也该详解下,自己那些题目。因为题目是我自己,并不是网上摘,所以知识点比较基础,也不全面。如果大家对面试题有什么建议,欢迎指点。...在这里我想说,虽然开发上这样代码肯定会被批斗,但是面试题,考不只是开发上遇到问题,也有考一些基础知识。这道题就是其中之一。...而且,现在我也觉得还有必要知道这个知识,还没到全民 ES6 时代,抛弃 ES5 时代。...参考: 21条CSS高级技巧 css写作建议和性能优化小结 5.说下自己对模块化开发理解,以及模块化开发好处。...提高开发效率,有利团队协同开发, 避免全局变量污染,命名冲突, 方便代码复用维护等。 8.小结 面试题就是这10道,我自己解决方案也说完了。

64620

换上了自己模板

模板名字为:Yodu 有毒,优读,有读,有毒是因为这是一个代码全是我自己模板,可能会有很大问题;优读是想让自己能够更好阅读别人一些优秀文章;有读是希望更多的人能够阅读更多书籍作品来积累内含。...这个模板样子和我之前用模板几乎一致,之前那个模板是基于http://www.75team.com/大幅度修改移植,因为移植之前没有征求人家意见,所以不会发出来。...总移植别人,感受不到原作者辛苦,也感受不到完善后欣喜,于是乎,我就在想我能不能写个模板呢!...然后就开始在我发布《左雷姆右拉姆至顶至底源码》基础上开始,使用工具是sublime,测试工具360浏览器,chrome浏览器,手机安卓端Yandex浏览器和chrome浏览器。...Javascript设置: 因为加载了jquery所以这个最基本配置很简单,一个手机端菜单交互,一个搜索按钮交互,还有个对于屏幕尺寸变化触发代码 $(".sjcd").click(function

62210

Django下重用自己app

Python包索引 (PyPI) 具有广泛包,你可以在你自己Python程序中使用。查阅一下Django Packages中已经存在可重用应用,你可以结合它们到你项目。...这意味着你可以获取已经存在Python包和Django应用并将它们融合到你自己网页项目。你只需要编写你项目的独特部分。 假设您正在开始一个新项目,需要一个像我们一直在进行投票应用程序。...更多关于打包信息,参见Python 打包和分发项目的教程。 使用你自己包 因为,我们将polls 目录移到项目的目录之外,它不再工作了。...请重新运行服务器以证实这点。...这个工具允许你维护多个分离Python环境,每个都具有它自己库和包命名空间。

1.2K30

一个自己springMVC?

首先,我们先看maven 依赖,没错,自己实现框架当然不用springjar包了; 并为了方便大家理解,我取名和spring原来风格多少有些类似; 首先看到annotation包,@Autowired...instanceMapping.put(beanName, clazz.newInstance());   continue;                           }   //如果自己没有起名字...; }   for (Entry entry : instanceMapping.entrySet()) {   //getDeclaredFields()获取自己声明所有字段...                field.setAccessible(true);   //自己名字   获取注解值                 String beanName...= autowired.value().trim();                   System.out.println("beanName=="+beanName);   //如果没有自己取名字

44440

一个自己springMVC

: 首先,我们先看maven 依赖,没错,自己实现框架当然不用springjar包了; 并为了方便大家理解,我取名和spring原来风格多少有些类似; 首先看到annotation包,@Autowired...instanceMapping.put(beanName, clazz.newInstance());   continue;                           }   //如果自己没有起名字...return; }   for (Entry entry : instanceMapping.entrySet()) {   //getDeclaredFields()获取自己声明所有字段...                field.setAccessible(true);   //自己名字   获取注解值                 String beanName = ...autowired.value().trim();                   System.out.println("beanName=="+beanName);   //如果没有自己取名字

1.2K140

如何对自己代码负责

,RD将观察日志方式告知QA,QA结合自己测试过程观察抓包数据和服务器调用日志数据,如果日志能反映出一定问题后,可以联系负责对方接口功能QA同学帮忙查看,因为大部分时间环境不稳定可能因为对方正在部署...,而大部分时间都是由于下游接口在部署环境或者删除了测试数据造成,整体感觉QA同学对于RD帮助不大,同时QA同学也需要具备一定技术能力,在RD同学告知一定问题排查方式后可以尝试自己解决一些环境问题...我自己写了一个泛化RPC调用框架,可以在开发机上直连到目标服务不同环境服务进行调用,解决了因为代码合并,部署,测试数据不完整等问题,大大提高了开发测试效率。...现在团队自己写了一个脚本,可以提交linux命令分发到所有服务器去执行,这种方式好处是更符合大家用linux排查问题方式,但是如果存在服务器节点增减则需要维护这个脚本,大部分时间可能会忘掉,造成查询不到情况...代码质量进行保障,主动帮上下游同学排查自己代码功能以外问题,并及时给出反馈等。

67430

python调用自己py文件

目录 python如何调用自己py文件呢? 如果是不同目录怎么调用呢? 如果需要调用多个文件在多个目录呢?...关于__init__.py解释 关于sys.path解释 ---- python如何调用自己py文件呢?...同一个目录下直接import xx就好了,xx为自己要调用模块名字,虽然会有下划线报错,其实,没有错,仍然可以调用,之前一直都被报错吓住了 如果是不同目录怎么调用呢?...那就把需要调用那个目录添加一下,比如调用C:\xxx\a.py 那就添加一下c:\xxx路径(windows路径和linux路径符号不同\\,/,注意区别) 然后import a就行了,前面r是为了告诉...当然可以多次sys.path.append(r”C:\xxx”)来添加多个目录, 但是这样很麻烦,如果文件距离很近,比如这样就没有必要写 ?

5.8K40

如果你想自己Benchmark框架

简介 使用过JMH同学一定会惊叹它神奇。JMH作为一个优秀Benchmark框架带给了我们无数欢乐。作为一个有极客精神程序员,那么有没有想过去自己实现一个Benchmark框架呢?...我们知道JIT中代码是动态编译成为机器码,并且是需要一定时间。 只有JIT检测到你这是热点代码,才会对其进行优化。 我们检测代码性能,一般是指代码在稳定运行环境中情形。...对于Server服务器来说,因为代码要服务很多个client,所以磨刀不误砍柴工,短暂延迟带来永久收益,听起来是可以接受。...Client编译和Server编译,甚至是OSR都是不同。大家在Benchmark时候一定要注意。 05 第五条军规 注意初始化对性能影响。...总结 掌握上面几条规则,相信大家也能够写出属于自己Benchmarks。 更多精彩内容 1 JVM中栈frames详解 2 Dirty cards和PLAB 3 JVM中Safepoints

65030

Go Web编程--给自己服务器添加错误和访问日志

错误日志和访问日志是一个服务器必须支持功能,我们教程里使用服务器到目前为止还没有这两个功能。...正好前两天也写了篇介绍logrus日志库文章,那么今天文章里就给我们自己服务器加上错误日志和访问日志功能。...ErrorLog *log.Logger ... } 我们之前在创建服务器时候自己实现了Server类型对象,那么现在要做就是将上面初始化好错误日志记录器指定给ServerErrorLog...添加访问日志 和Server对象可以设置错误日志记录器不一样,访问日志只能是我们通过自己编写中间件方式来实现了。...中间件后,就可以正常记录服务器访问日志了。

1.1K20

服务器托管双线技术方案怎么_自己搭建内网穿透服务器全端口

多线路接入技术就是在互联网数据中心(IDC)通过特殊技术手段把不 同网络接入商(ISP)服务接入到一台服务器上或服务器集群,使服务器所提供网络服务访问用户能尽可能以同一个ISP或互访速度较快ISP...户源服务器数据,然后缓存在不同网段节点服务器上。...再配合智能DNS服务器分网解析功能,实现不同网络用户都能访问到离自己最近网段上网站,从而 避免因为网络问题而影响网站访问速度目的。...使用此方案来实现双线路需要在CNNIC(中国互联网信息中 心)申请IDC自己IP地址段和AS号,然后通过BGP协议将此段IP地址广播到网通、电信等其它网络运营商,使用BGP协议互联后网通与电信所有...服务器只需要设置一个IP地址,最佳访问路由是由网络上骨干路由器根据路由跳数与其它技术指标来确定,不会对占用服务器任何系统资源。

3.4K100

【蒙圈】自己Js,自己不认识了?

最近在讲课时候,发现一个新问题,就是许多同学面对着自己写完代码,蒙圈了。 我是谁?我在哪里?我在做什么?这些代码是怎么出现? 说来可能难以相信,明明是你自己写出来代码嘛。...但是,下课之前我说,今天作业,如何如何要求,格式什么样,标明用了多长时间,然后就有同学在学习群里问我,。。原话记不太清了,大概意思就是,自己看不明白了,还得再写一遍呀?...我说,要这样你何止再重写一遍啊,你得反复多几遍才行。然后跟我说没思路,我说每个功能点,每个函数它们是如何交互、沟通,我都给你们画思维导图呀, 。。。 。。 如此这般吧。...咱们在课上代码时候,能写出来主要有二个因素, 1、我刚讲完,脑子里还有印像; 2、我把代码都写好了,在视频里你们都能照着; 写完之后,脑子里印象退散,又没有代码参考,思路又不太到位,自然再看自己代码就蒙圈了...在我个人看来,咱们前端新人代码时候,容易只顾眼前,就是很容易顾头不顾尾。所以写完之后,最好就是从头到尾再检查一遍。如果js运行没有错误,那么就把JS格式再清理一下, <!

69540

自己服务器上搭建自己邮箱

前言: 这可能是我文章中为数不多有全程完整截图、不是在完工后再来回忆文章,但并不是因为我一开始就打算这篇教程,而是搭建邮箱这玩意我做了”双份“——先在我自己服务器上面给我自己搭建,确认成功了...、各项功能都正常了我才在 @gaoice 服务器上面搭建,并同时边搭建边截图,之所以我这个,是因为我在给自己服务器搭建时候走了太多弯路,过程太曲折,以至于在完工之后我觉得有必要写这么一篇文章来记录这个过程...这边免费用户一天只能测三次,而上面的dkim测试就没有限制,故不要因为dkim、spf、dmarc等问题导致意外而浪费每天仅有的三次测试机会 最后来一张绝望Gmail截图 写在最后: 我之前在自己服务器上面搭建时候...,看了这篇之后考虑过ewomail、iredmail、mailcow和poste.io,ireadmail和ewomail都是丢给你一个脚本让你自己服务器上面跑,ewomail同时还是开源,文档也很详细...实测在配置了ssl之后,25端口在出方向阻塞并不影响发件,但是入方向会影响收件,不过这个是在自己可控范围内,因为25端口入站方向是由自己控制 参考资料: Poste.io官方文档/开始使用 Poste.io

8.3K50

照虎画猫自己Spring

…… 所以,每一篇时候,我都用一两句话总结该篇主要讲的是Spring干了什么事,实现了什么功能。...所以,今天我照虎画猫,写了一个自己Spring——Fairy项目。 Fairy项目 取名Fairy,意为小精灵,象征着东西不大,但是能量无穷,稍有契合Spring春天生机盎然之意。...配置文件好处就是可扩展性强,耦合度低。当需要声明一个bean时候,我们只需要打开配置文件,在其中加上一个标签,填充你需要使用那个类即可,剩下工作就交个容器。...只是这里,我们不再引入Spring任何依赖,我们要自己造轮子,完成这次bean加载。...这样,我们就如愿完成了FairyBean类加载和实例化,我们没有用到Spring任何依赖,自己写了个小容器完成了类加载。

59880
领券