自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 资源 (1)
  • 收藏
  • 关注

原创 基于注解的Spring项目启动源码分析(也适用Spring Boot)

去年从深圳辞职后,现在打算开始找新工作了。其实以前才开始流行注解配置项目时就看过这些源码了,可能由于懒惰吧,没有留下只言片语。现在写篇文章查遗备缺,也便各位做个交流。注解的自启动基于Servlet3.0的检测与调用首先我们来看AbstractAnnotationConfigDispatcherServletInitializer这个抽象类,一般我们的启动都需要继承这个类...

2020-05-04 21:49:06 273

原创 gson和jackson序列化简单基准测试

首先声明这个测试不是严谨的基准测试(BenchmarkTesting),只是自己用来说明一些问题的代码,比如严谨的测试应该是测试多次并列举出内存占用,cpu使用情况,执行的最大时间、最小时间平均时间等等等。废话不多说先上代码首先是Book的实体类,尽量将一些常用类型包括package com.example.demo.model;import java.time.L...

2019-09-09 10:41:35 266

原创 基于WebFlux的响应式Spring初探demo

1、响应式编程式什么?为什么现在都认为这个是微服务的趋势?先挖个坑吧,给个简单的公式。响应式编程=数据流+变化传递+声明式2、下面废话不多说直接上代码WebFlux的核心Reactor的实现思路和介绍可跳转https://docs.spring.io/spring/docs/current/spring-framework-reference/web-reactive.h...

2019-09-09 10:25:33 299

原创 简单的压测模拟

[code="java"]import java.time.Duration;import java.time.LocalDateTime;import java.util.concurrent.CountDownLatch;import java.util.concurrent.ExecutorService;import java.util.concurrent.Execu...

2018-05-11 19:52:10 237

原创 Java的驼峰与下划线的属性对象互相转换

[code="java"]import com.xxxx.util.constant.PropertyNameStyle;import com.google.common.collect.Lists;import lombok.extern.slf4j.Slf4j;import org.apache.commons.collections.CollectionUtils;i...

2018-05-11 19:50:49 4514 4

基于netty的echo server和echo client

既然学了netty自然需要实验下,自然自己就简单实验下。这个是简版的,所以比较粗糙。[code="java"]package study.netty;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import io.netty.bootstrap.ServerBootstrap;import...

2018-04-05 12:59:34 362

基于Nio的echo server和echo client

最近想学netty,但平常工作中NIO用的比较少,所以最近就复习了下NIO。自己写了个基于NIO的echo例子,代码挺简单的。[size=medium][color=red]echo 服务端代码[/color][/size][code="java"]package study.nio.echo;import java.io.IOException;import ja...

2018-04-05 12:28:14 213

原创 面试编程题的实验

昨天某知名互联网企业对我做了一个电话面试。然后叫我在他给的一个网址上面做一个编程题。题目是这样的。[size=x-large][color=green]共计9个苹果,有2只猴子,一个猴子每次拿2个苹果,一个猴子每次拿3个苹果,如果剩余的苹果不够猴子每次拿的数量,则2只猴子停止拿苹果,请用java多线程模拟上面的描述[/color][/size][size=med...

2018-03-28 19:38:36 635

针对基于Redis Cluster的接口数据缓存删除实现

首先定义个工具interface,基于Java 8的实现.主要利用了Redis Cluster的hashTags特性。详细细节可前往[url]https://redis.io/topics/cluster-spec[/url]的Keys hash tags章节了解。个人建议还是看完这个规范的前半部分才好理解,为什么会出现hash tags这个东西。[code="java"]pa...

2018-03-26 10:35:27 681

原创 spring的基于java的项目配置示例2

[code="java"]import com.xxx.support.config.AbstractAppInitializer;import com.xxx.support.config.BaseRootConfig;public class AppInitializer extends AbstractAppInitializer { @Override prot...

2018-03-20 17:32:16 181

简单ELK配合logback搭建日志监控中心

今天得闲就自己搭了个ELK示例,过程挺简单的。 Elastic Search,logstash, kibana再这个地址[url]https://www.elastic.co/cn/products[/url]都可以下载。话不多说。首先安装ES。解压下载包到置顶目录启动脚本再bin目录下的elasticsearch,参数配置在config目录下。主要配置文件为elasticsearc...

2018-03-20 17:30:14 408

原创 spring的基于java的项目配置示例1

spring的基于java的项目配置示例。[code="java"]import org.springframework.web.context.AbstractContextLoaderInitializer;import org.springframework.web.context.WebApplicationContext;import org.springfram...

2018-03-16 08:26:31 178

原创 HttpClient实例

[code="java"]import java.io.IOException;import java.io.InterruptedIOException;import java.net.UnknownHostException;import java.security.KeyManagementException;import java.security.NoSuchAlgo...

2018-03-16 08:15:47 157

基于spring data的Elastic Search的配置示例

基于spring data的Elastic Search的配置示例[code="java"]import java.net.InetAddress;import java.net.UnknownHostException;import java.util.ArrayList;import org.apache.commons.lang3.tuple.Immutabl...

2018-03-15 17:41:50 542

方便jedis cluster操作的工具类

由于redis的集群 redis cluster不支持keys这样的多key操作(具体原因由于sharding 后,不同的key属于不同的slot,难以支持原子操作)。所以如果一个对外需要对缓存做失效处理时比较棘手。所以本类提供工具方法再redis cluster查找按照hashTags处理的keys和一般的keys。基于jedis cluster实现。有优化空间,现在懒得改了...

2018-03-15 17:37:58 1621

爬虫基础类

自己封装的爬虫基础类。[code="java"]public interface TaskBaseInfo { /** * 返回任务的名称. * * 一般用作日志输出 * @return */ String taskName(); /** * 返回任务的唯一code * @return 在整个爬虫项目中不重复的Cod...

2018-03-15 17:28:46 133

基于AOP的ajax的referrer判断

网页中ajax请求的referrer的值是当前域名。(其实这个工作nginx来做最好)所以对于一些简单的安全验证可以通过这样的方式来做。下面是我的实现。[code="java"]import java.lang.annotation.Documented;import java.lang.annotation.ElementType;import java.lang.a...

2018-03-15 17:23:28 289

原创 冒泡排序、快速排序(快排)、KMP算法的Java实现

[size=medium]人太懒了,好久没发文章了。今天就写点自己的算法实现吧。比较简单恐贻笑大方之家,但又觉得还是记录下来比较好。 前两天qq的群里有人再说他老大不懂java但在招聘Java工程师。所以就选择语言无关又能考察下能力的最大公约数----算法。大概是冒泡排序、快速排序(快排)、二分查找、KMP算法。 做Java大家都懂,可以通过comparable和Compar...

2018-03-15 14:43:21 202

RedisHandler实例

[code="java"]import java.util.HashMap;import java.util.Map;import org.apache.log4j.Logger;import redis.clients.jedis.Jedis;import redis.clients.jedis.JedisPool;import redis.clients.jed...

2016-02-16 13:36:57 818

Java Timestamp从MySQL数据库取出的字符串转换为LocalDateTime

最新在工作中使用了Java 8的LocalDateTime这个新的日期时间类,整体感觉还是不错的。不过在使用过程中遇到一个问题,写了个转换方法。 我在从一个从数据库取出并生成的一个名为user的实体对象。这个实体对象包涵一个String(BTW.为什么Java到8了还不能像c#一样写成string)类型的属性,这个属性是由数据库中的timestamp直...

2016-01-26 16:08:25 2814

原创 shell 函数_1

说起函数调用,相信大家也不会陌生,然而对于初学Shell的我来说,Shell中函数调用方式却有点让我不太习惯,自己也走了不少的弯路,因为传递参数时出了一个很“自然”的错误,也让我吃了不少的苦头,所以总结一下Shell中函数的调用方法。一、Shell中函数的定义为了方便程序和管理和模块化并减少代码的重复,函数的确是一个好东西。而Shell中函数的定义有两种方法,如下:function...

2015-10-10 14:21:12 101

原创 reviewC指针

[size=large][b]由于要考试,有C的考核内容。所以今天把C拉出来又看了下,其实基本没什么难度,除了写面向对象许久所以没太在意的指针,其他内容都还好,温故而知新嘛。下面是一道题的内容和我的一种玩趣式解法。 请编写函数,对传送过来的三个数选出最大值和最小值,并通过形参传回调用函数(即用a,b,c的顺序表示大小)。[/b][/size][code="c"]void test...

2014-03-02 22:05:05 223

使用java NIO实现复制文件

前几天自己在做一个小实验来着,突然想到自己以前通过TCP(socket)的方式做过复制文件的事情,然后就想到貌似没试过UDP(DatagramSocket)的方式实现复制文件(其实这从头就是个错误的思路)。遂马上动手试验,理所当然的写到后面就发现这样的方式有缺陷(UDP本身特性决定了),但是在思索有不有其他的变通的方式实现的时候,无意中看到了NIO这个以前一直没注意的东西,当时还想通过NIO找一些...

2013-12-30 01:09:12 203

原创 Python2.X内置函数学习

[size=large][b]1.apply()函数[/b][/size] 学过Python的都知道Python支持可变参数,例如function_name(*parameters)或function_name(**parameters)。前者是把参数放入一个元组里,后者则是键值对的参数放入一个字典里。 Python内置一个可以讲可变参数的元组直接放入函数的参数列表的方...

2013-12-19 21:52:51 135

学习Python中遇到的问题

最近学习Python中。[size=large][b]先上代码:[/b][/size][code="python"]# -*- coding: UTF-8 -*-class Person: '''Represents a person''' population=0 def _init_(self,name): self.name=n...

2013-09-04 23:26:50 156

原创 敏感词Filter的实现

首先声明这片文章不是我的原创,我只是为了查遗备缺所以在这里写上。敏感词的Filter从本质上说是属于一种内容替换Filter。内容替换Filter的工作原理是,在讲Servlet内容输出到Response时,Response将内容缓存起来,在Filter中进行替换,然后再输出到客户端浏览器。由于ServletResponse默认不能严格的缓存输出内容,因此需要自定义一个具备缓存功能的respo...

2013-06-24 16:00:30 185

原创 字符编码Filter的实现

每天写一点,慢慢进步。虽说在Servlet里面也可以设置编码方式,但是Filter就像一个沙漏一样,你可以随时拆卸,并且可以更灵活的设置编码方式。[code="java"]package com.googlefans.filter;public class CharacterEncodingFilter implements Filter{ private String c...

2013-06-23 23:13:00 175

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除