用Java实现一个Http代理服务器

需求描述:

假设我们有这样一种场景,需要接受到用户的http请求(来自浏览器或者其他),将这个http请求转发给后端的服务。在转发的过程中,需要尽可能的高效并且不能丢失header头信息。如图一所示。server部分可以作为一个黑盒,但是肯定会有一个nginx,至于背后是php-fpm还是tomcat就无从知晓了。

继续阅读“用Java实现一个Http代理服务器”

Spring Boot 在Tomcat容器中的启动办法

使用Spring boot的官方tutorials可以非常方便的完成spring的示例,示例也非常简单,使用注解直接就完成了RESTful API的开发。但是当这个应用使用tomcat来启动的时候,却产生了404错误。加之使用的是淘宝改动过的tomcat(主页地址),使得寻找问题变得复杂起来。最后,在阅读了官方文档后,饶了几个页面,终于找到了问题所在。无论你是使用的Building a RESTful Web Service的代码,还是使用的官方https://start.spring.io/生成的代码,都是同样的解法。

继续阅读“Spring Boot 在Tomcat容器中的启动办法”

[转载]git在git push之后无痕回滚到某一次提交的方法

有一天,你高兴的改完了代码,并git push之后发现,哎呀,改错分支了。我的分支是xxxxx需要上线的,结果同时在开发另外一个项目,分支叫ssssss,这个尴尬的时候,有没有办法不留痕迹的将你的分支恢复到git push之前的状态呢?所谓的无痕是指在远程也没有记录,方法如下:

git代码库回滚: 指的是将代码库某分支退回到以前的某个commit id

继续阅读“[转载]git在git push之后无痕回滚到某一次提交的方法”

家庭多媒体共享解决方案

前言 : 现在每个人的家里都会有很多移动设备,手机,ipad,可能还有很多电脑,台式机、笔记本。或许还有不止一台电视。如果每个设备上都会有一些照片,视频,音乐,这些资料共享起来非常不方便,我手机上的照片能否在电脑、电视上观看? 我下载的高清电影,能否在多个设备上播放,而不用拷来拷去? 这就是我们的需求。

  1. 我喜欢听歌,有很多音频文件,他们或许是APE格式的,或许是AAC格式的,再不济是320kbps的。这些文件存储很占空间,在手机上拷贝一份,在电脑上拷贝一份,够麻烦的了。我希望我回到家,只需要打开音响,打开手机,然后就能用音箱欣赏这些音乐,该怎么做?
  2. 我有很多720p和1080p的高清电影,我希望我在电视上能够播放。能够在电脑上播放,或许最后结尾没看完,我想在我的手机看个结尾,怎么办?拷贝来拷贝去? 多麻烦啊

  3. 这些音频尤其是高清视频,动辄16G,这么大我下载到猴年马月去? 能不能在我不在家里的时候,自动下载?

  4. 共享中心,你需要一个NAS,这个当前最好的是群晖,最便宜的是1800多?他可以实现下载、共享的功能,但是他不能播放,所以你还需要一个HTPC,用来播放你的高清电影、连接音箱播放音乐。一个HTPC配下来也需要2000多。

继续阅读“家庭多媒体共享解决方案”

群晖问题-windows共享无法看到

群辉设置之后,smb服务正常,能够使用,而windows的共享却突然不见了? 其实是在高级设置里,将启用高级共享权限打开,并把用户加进去,就可以了!1

 

如果这样依然不行的话,控制面板-->网络-->常规-->系统名称 稍作修改,把名称改成其他的,就可以看见了

Spring的IoC依赖注入的几种方式

JSP的前生今世:Jsp以前就是用来在HTML里写java的,最后jsp会被编译成Servlet来执行。以前,Jsp的开发是在html里嵌入java代码,这样杂乱无章持续了段时间,发现,写的太累了。因为HTML和Java的混合,导致ux不能参与进来,java部分看不懂,而java的开发,对html又不精通,更别说,项目大了以后,各种代码的混乱。所以,后来Jsp干脆直接用来做了表示层。

继续阅读“Spring的IoC依赖注入的几种方式”

利用Etag来跟踪用户行为

本文转载自:

http://www.oschina.net/translate/cookieless-cookies?from=20130826

英文原文:Cookieless cookies

淘醒迷乐 推荐于 7天前 (共 5 段, 翻译完成于 08-20)

 

实际上是使用了Http协议的etag字段,非常巧妙,这个etags可以由我们生成,因此可以保证唯一性,然后发送给客户端,作为用户的一个标识,来跟踪用户的行为.

继续阅读“利用Etag来跟踪用户行为”

java第一步,纪念下

终于把Spring-frameword的example(spring-petclinic)跑通了,Java语言虽然不难理解,但是这开发,真是麻烦啊,跟我大PHP比起来,真不是一个等级的。

看了一点点test中的方法,尤其是那个数据验证的实现,转的圈圈快被转晕了,不知道为何如此,还有待细细研究