今天在项目中碰到了时间戳,类似这样的格式yyyyMMddHHmmss,本文就时间戳进行一个简短的总结。

防止浏览器缓存(304)

URL 的末尾追加了时间。这就确保了请求不会在它第一次被发送后即缓存,而是会在此方法每次被调用后重新创建和重发;
此 URL 会由于时间戳的不同而稍微有些不同。

Read More

分布式系统在当前的互联网开发中已经是标配,因此我选择了开发一套分布式博客作为我的毕业设计。目前项目已经开发过大半,于是决定将开发的过程及过程中用到的技术以及心得记录下来,供后续参考交流。

本文是我的毕业设计基于Dubbox的分布式微博的系列文章第一篇,将主要讲解项目的主要技术及逻辑结构。

主要技术

dubbox    dubbo2.8.4

SSM spring4 springMVC Mybatis
bootstrap3    
mysql7
Zookeeper
Redis
Druid
Solr
Nginx
lombok
Nginx
tomcat7

Read More

Dubbo简介

Dubbo是阿里巴巴出品的一款分布式的SOA服务治理框架,致力于提供高性能和透明化的RPC(Remote Procedure Call Protocol)远程调用的解决方案,以及SOA服务治理方案。

简单的说,Dubbo就是个服务框架,如果没有分布式的需求,其实是不需要用的,只有在分布式的时候,才有dubbo这样的分布式服务框架的需求,并且它本质上是一个服务调用的产品,说白了就是个远程服务调用的分布式框架(告别了Web Service模式中的wsdl,通过生产者和消费者的方式在dubbo上注册,从而达到远程服务调用的目的)

Read More

github地址https://github.com/HeartOfSwords/EducationNewsHunterSpider

WebHunter爬虫系统介绍

WebHunter是最近开发的一款新闻爬虫系统,它分为手动和自动两种模式,可以基于web容器如tomcat运行,也能够作为客户端独立运行在命令行模式下,而且能够扩充为GUI客户端。

本文是对WebHunter爬虫系统的介绍。旨在提供一份较为明晰的文档指导用户使用。

Read More

说到单例模式,想必各位小伙伴都能够不假思索的挥手写一段出来。并且能对其分类有所理解。

传统的单例模式—懒汉模式

public class Singleton{

    private static final Singleton singleton = null;

    private Sinleton(){}

    public Singleton getSingletonInstance() {
        if(singleton == null) {
            singleton = new Sinleton();
        }
        return sinleton;
    }

Read More

Nginx作为一款高性能服务器常用于负载均衡及反向代理,相比于Apache,Nginx有着很多优势:

轻量级,同样起web 服务,比apache 占用更少的内存及资源
抗并发,nginx 处理请求是异步非阻塞的,而apache 则是阻塞型的,在高并发下nginx 能保持低资源低消耗高性能
高度模块化的设计,编写模块相对简单
社区活跃,各种高性能模块出品迅速啊
Nginx 使用更少的资源,支持更多的并发连接,体现更高的效率

Read More

回调是一种双向调用模式,什么意思呢,就是说,被调用方在被调用时也会调用对方,这就叫回调。“If you call me, i will call back”。

Java语言中经常会使用到回调机制,或许只是平时没有注意到吧。比如Android开发中的OnClickListener,当按键触发的时候会执行用户实现的回调方法,从而完成对按键的反馈。再比如在使用SpringJDBC进行数据库操作时候的某些方法,比如JdbcTemplate.update(sql, new PreparedStatementSetter()),这里的PreparedStatementSetter()就是一个回调接口,用户在其内部实现setValues()回调方法执行插入或者更新操作。

本文通过一个简单的例子来对回调的实现及其机理做一个小记录,以备未来查看,也希望给读者一些启发,抛砖引玉。

Read More

Fork me on GitHub