自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(208)
  • 资源 (15)
  • 问答 (2)
  • 收藏
  • 关注

原创 Java中ArrayList remove会遇到的坑

前言平时最常用的莫过于ArrayList和HashMap了,面试的时候也是问答的常客。先不去管容量、负载因子什么的,就是简单的使用也会遇到坑。作者:@Ryan-Miao 本文为作者原创,转载请注明出处:http://www.cnblogs.com/woshimrf/p/java-arryalist-remove.htmlRemove 元素经常遇到的一个场景是:遍历list...

2017-11-28 22:16:49 558

原创 Git 工作流的正确打开方式

前言一直在使用git做版本控制,也一直工作很顺利,直到和别人发生冲突的时候。这才注意到git 工作流并不是那么简单。比如,之前遇到的清理历史。百度到的资料很多,重复性也很多,但实践性操作很少,我很难直接理解其所表达的含义。直接望文生义经常得到错误的结论,只能用时间去检验真理了,不然看到的结果都是似懂非懂,最后还是一团糟。作者:@Ryan-Miao 本文为作者原创,转载请注明出处:http://ww

2017-11-28 22:15:20 3817

原创 Dagger2 入门解析

前言在为dropwizard选择DI框架的时候考虑了很久。Guice比较成熟,Dagger2主要用于Android。虽然都是google维护的,但Dagger2远比guice更新的频率高。再一个是,Dagger2不同于guice的运行时注入,编译时生成代码的做法很好。提前发现问题,更高的效率。作者:@Ryan-Miao 本文为作者原创,转载请注明出处:http://www.cnblogs.com/

2017-11-28 22:13:15 409

原创 使用dropwizard(6)-国际化-easy-i18n

前言Dropwizard官方文档并没有提供国际化的模块,所以只能自己加。Spring的MessageResource用的很顺手,所以copy过来。作者:@Ryan-Miao 本文为作者原创,转载请注明出处:http://www.cnblogs.com/woshimrf/p/dropwizard-i18n.htmlEasy i18n在整合Dropwizard的时候,多语言貌似只能通过jdk自带的Re

2017-11-28 22:10:06 343

原创 使用dropwizard(5)--加入swagger

前言Swagger已经成API service的规范了,本处在dropwizard中简单集成Swagger.作者:@Ryan-Miao 本文为作者原创,转载请注明出处:http://www.cnblogs.com/woshimrf/p/dropwizard-with-swagger-example.htmlDemo sourcehttps://github.com/Ryan-Miao/l4drop

2017-11-28 22:09:12 805

原创 使用dropwizard(4)-加入测试-jacoco代码覆盖率

前言dropwizard提供了一个简单的测试框架。这里简单集成并加入jacoco测试。作者:@Ryan-Miao 本文为作者原创,转载请注明出处:http://www.cnblogs.com/woshimrf/p/dropwizard-test-jacoco.htmlDemo sourcehttps://github.com/Ryan-Miao/l4dropwizard本文是基于dropwizar

2017-11-28 22:08:01 609

原创 使用dropwizard(3)-加入DI-dagger2

前言习惯了Spring全家桶,对spring的容器爱不释手。使用dropwizard,看起来确实很轻,然而,真正使用的时候不得不面临一个问题。我们不可能一个resource就能把所有的业务逻辑囊括!那么,必然就要有负责处理逻辑的代码,有要提取的公共的代码,要做面向接口开发等等。按照简单的用法,Java Bean就自己new,只要通过Jersey提供的web能力发出去就好。这样写下来,到处都需要new

2017-11-28 22:06:47 352

原创 使用Dropwizard(2)-配置分类ConfiguredBundle

前言不可避免的要用dropwizard作为service框架。持续学习。上次在dropwizard中使用feign,使用hystrix, 算是基本入门了。接下来就是基于此的优化。作者:@Ryan-Miao 本文为作者原创,转载请注明出处:http://www.cnblogs.com/woshimrf/p/dropwizard-configuration-bundle.html把需要使用Config

2017-11-28 21:53:46 487

原创 在dropwizard中使用feign,使用hystrix

前言用惯了spring全家桶之后,试试dropwizard的Hello World也别有一帆风味。为了增强对外访问API的能力,需要引入open feign。这里简单在dropwizard中使用feign。作者:@Ryan-Miao 本文为作者原创,转载请注明出处:http://www.cnblogs.com/woshimrf/p/dropwizard-feign.html1. 什么Dropwiz

2017-11-28 21:51:29 458

原创 Java Web基础入门

前言语言都是相通的,只要搞清楚概念后就可以编写代码了。而概念是需要学习成本的。作者:@Ryan-Miao 本文为作者原创,转载请注明出处:http://www.cnblogs.com/woshimrf/p/java-web-springboot.htmlJava基础不用看《编程思想》,基础语法看 http://www.runoob.com/java/java-basic-syntax.html 就

2017-11-28 21:47:53 732

原创 java中byte, iso-8859-1, UTF-8,乱码的根源

Post@https://ryan-miao.github.io背景还是多语言, 在项目中遇到本地环境和服务端环境不一致乱码的情形。因此需要搞清楚乱码产生的过程,来分析原因。获取多语言代码如下:private Map<String, String> getLocalizationContent(Locale locale) { ResourceBundle bundle = Resource

2017-06-26 23:33:01 5712

原创 banner自动生成工具,ascii文字展示

前言post@ [email protected]里有个banner的功能,刚开始觉得很鸡肋。然而,现在觉得蛮有意思的。无聊的程序员。生成文字大部分工具只支持英文的库,中文的我还没发现。推荐使用在线库:http://www.network-science.de/ascii/比如这样: ${AnsiColor.BRIGHT_YELLOW}=================

2017-06-17 22:02:19 4187

原创 js跨域,springmvc CORS

子域名之间互相访问需要跨域环境搭建需求首先需要搭建两个环境。一个是提供API的server A,一个是需要跨域访问API的server B。Server A提供了一个api。完整的请求request是:https://local.test.com.dev.net:8443/contentmain/getDepositsRoomAndRatePlanInfo.json?htid=759&_=14908

2017-03-30 23:50:50 470

原创 SpringMVC参数校验(针对`@RequestBody`返回`400`)

SpringMVC参数校验(针对@RequestBody返回400)前言习惯别人帮忙做事的结果是自己不会做事了。一直以来,spring帮我解决了程序运行中的各种问题,我只要关心我的业务逻辑,设计好我的业务代码,返回正确的结果即可。直到遇到了400。spring返回400的时候通常没有任何错误提示,当然也通常是参数不匹配。这在参数少的情况下还可以一眼看穿,但当参数很大是,排除参数也很麻烦,更何况,既然

2017-03-29 20:22:48 3084

原创 Spring resource bundle多语言,单引号format异常

Spring resource bundle多语言,单引号format异常前言十一假期被通知出现大bug,然后发现是多语言翻译问题。法语中有很多单引号,单引号在format的时候出现无法匹配问题。这个问题是由spring resource bundle 并调用MessageFormat引起的,根本原因是MessageFormat会转义单引号。创建一个简单的多语言demo,重现异常1.配置

2016-09-20 17:54:15 860 1

原创 如何优化coding

如何优化coding前言最近一直在做修改bug工作,修改bug花费时间最多的不是如何解决问题而是怎样快速读懂代码。如果代码写的好的,不用debug就可以一眼看出来哪里出了问题。实际上,我都要debug好多遍才能差不多理解这个业务逻辑,进而分析原因以及修改修复的代价。这项工作花费了我绝大部分的时间,而且并没有什么意义,因为fix bug之后就再也不会处理这些代码了。因此,易读性应该放在代码的首

2016-09-20 17:54:09 201

原创 在centos7中添加一个新用户,并授权

前言笔记本装了一个centos,想要让别人也可以登录访问,用自己的账号确实不太好,于是准备新建一个用户给他。创建新用户创建一个用户名为:zhangbiao[root@localhost ~]# adduser zhangbiao为这个用户初始化密码,linux会判断密码复杂度,不过可以强行忽略:[root@localhost ~]# passwd zhangbiao更改用户 zha

2016-09-20 17:54:03 3238

原创 在PowerShell中使用curl(Invoke-WebRequest)

前言习惯了windows的界面模式就很难转去命令行,甚至以命令行发家的git也涌现出各种界面tool。然而命令行真的会比界面快的多,如果你是一个码农。situation:接到需求分析bug,需要访问http。那台机器属于product,不允许装postman。我只能手动命令行来发请求。发现了内置的PowerShell中有curl命令。欢喜试了半天,总是命令不对,google发现这个curl是冒

2016-09-20 17:53:57 4990

原创 spring boot 部署为jar

前言一直在ide中敲代码,使用命令行mvn spring-boot:run或者gradlew bootRun来运行spring boot项目。想来放到prod上面也应该很简单。然而今天试了下,各种问题。最大错误是1.4的bug:Error creating bean with name 'entityManagerFactory' defined in class path resource

2016-09-20 17:53:51 355

原创 CentOS7使用firewalld打开关闭防火墙与端口(转载)

1、firewalld的基本使用启动: systemctl start firewalld查看状态: systemctl status firewalld停止: systemctl disable firewalld禁用: systemctl stop firewalld2.systemctl是CentOS7的服务管理工具中主要的工具,它融合之前service和chkconfig的功能

2016-09-20 17:53:45 165

原创 linux centos中添加删除修改环境变量,设置java环境变量

前言安装完软件必要添加环境变量。指令很少,然而长时间不写就会不自信:我写的对吗?于是百度开始,于是发现又是各有千秋。好吧,好记星不如烂笔头。当然,最重要的是,百度出来的都他妈的是如何添加环境变量,只字不提删除和修改。显然,都是像我一样的外门汉做笔记的,用啥写啥。增加环境变量百度出来的都是修改/etc/profile文件,添加export var=value。我也没认真去看linux的指令的

2016-09-20 17:53:41 467

原创 在CentOS 7/6.5/6.4 中安装Java JDK 8(转载)

转载在CentOS 7/6.5/6.4 中安装Java JDK 8首先,在你的服务器上运行一下更新。yum update然后,在您的系统上搜索,任何版本的已安装的JDK组件。rpm -qa | grep -E '^open[jre|jdk]|j[re|dk]'输出结果如下:gobject-introspection-1.36.0-4.el7.x86_64pygobject3-bas

2016-09-20 17:53:35 344

原创 centos7查看系统版本,查看机器位数x86-64

前言由于不经常使用linux,每当使用的时候就是安装软件,安装软件的时候就要选择安装包平台,是32位的还是64位的。这时候突然发现不知道怎么查,于是百度。虽然轻而易举百度出来,但仍旧没有自己的笔记看起来舒服。所以,还是记录下来。辨识标准首先要清楚什么样标识是32位的,什么样的是64位的。PC server X86 系列I386--I686 都是32位x86_64 是 64位查看位

2016-09-20 17:53:31 370

原创 CentOS7下安装mysql5.6修改字符集为utf8并开放端口允许远程访问

前言mysql最初的免费战略已经深入人心,感觉自己一直都在用mysql。今天在centos7下装mysql。发现原来centos下默认没有mysql,因为开始收费了,取而代之的是另一个mysql的分支mariadb,这个是mysql创始人重新主导的分支。But, whatever, I want mysql. 所以,老老实实的卸载mariadb,安装mysql。卸载mariadb#列出所有被

2016-09-20 17:53:24 257

原创 CentOS7下mysql5.6修改默认编码

参考原文教程:Centos7下修改mysql5.6编码方式 解决网站中文显示问号解决办法:修改MySQL数据库字符编码为UTF-8,UTF-8包含全世界所有国家需要用到的字符,是国际编码。具体操作:1、进入MySQL控制台mysql -u root -p输入密码查看当前mysql运行状态mysql>status其中server和db原不是utf-8;默认编码是latin1

2016-09-20 17:53:20 250

原创 使用swagger作为restful api的doc文档生成

初衷记得以前写接口,写完后会整理一份API接口文档,而文档的格式如果没有具体要求的话,最终展示的文档则完全决定于开发者的心情。也许多点,也许少点。甚至,接口总是需要适应新需求的,修改了,增加了,这份文档维护起来就很困难了。于是发现了swagger,自动生成文档的工具。swagger介绍首先,官网这样写的:Swagger – The World's Most Popular Framewo

2016-09-20 17:53:14 2600

原创 在idea中maven项目jdk编译version总是跳到1.5

bug描述项目ide: idea项目构建工具:mavenbug现象:每次修改pom之后,idea自动扫描一遍,然后发现默认的compile级别跳到5.0. 每次手动去setting里修改compile很费事。解决方案猜测是maven中没有指定jdk,所以才会扫描为默认的jdk版本。于是,添加maven-compile-plugin:

2016-09-20 17:53:08 4202

原创 国内maven镜像,快的飞起

在oschina关来关去的烦恼下,终于受不了去寻找其他公共库了。阿里云maven镜像 alimaven aliyun maven http://maven.aliyun.com/nexus/content/groups/public/ central 其他,求提供

2016-09-20 17:53:02 488

原创 醒悟,珍惜时间,学会利用资源

我一直在为自己如何学习发愁,因为发现自己什么都想学,什么都不愿意学。发现这个不会,想要去学,但是时间和资源都是稀缺的,不一定愿意花费时间去做那些看不到成果的东西。最近的工作就是简单的写写接口和test,刚开始以为多困难。overview,大概一想,真是不能再简单的了。工作的内容重复且一致,不同的是需求不同,然后定制的做对应的接口开发啊,完全没有想象中那么难。对应的,后端数据库不用管了,只需要学会

2016-09-20 17:52:58 244

原创 重定向Http status code 303 和 302

http 302http 303Http 302302是一个普通的重定向代码。直观的看来是,请求者(浏览器或者模拟http请求)发起一个请求,然后服务端重定向到另一个地址。而事实上,服务端仅仅是增加一条属性到header,location=重定向地址。而一般的,浏览器会自动的再去请求这个location,重新获取资源。也就是说,这个会使得浏览器发起两次请求。ExampleClient

2016-09-20 17:52:52 15037

原创 jackson简单使用,对象转json,json转对象,json转list

添加jackson依赖:// https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-corecompile group: 'com.fasterxml.jackson.core', name: 'jackson-core', version: '2.8.2'// https://mvnreposi

2016-09-20 17:52:46 614

原创 jackson error 含义log

1. 反序列化失败,类型不匹配Caused by: com.fasterxml.jackson.databind.JsonMappingException: Can not deserialize instance of java.lang.String out of START_OBJECT token at [Source: org.apache.http.conn.Eof

2016-09-20 17:52:42 685

原创 spring boot启用tomcat ssl

首先要生成一个keystore证书。参考:Tomcat创建HTTPS访问,java访问https,ssl证书生成:cer&jks文件生成摘录,spring-boot这里复现一下完整过程:安装好java后,cmd就可以使用keytool了。生成ssl证书:C:\Users\miaorf>keytool -genkey -alias tomcatjks -keyalg RSA -k

2016-09-20 17:52:36 370

原创 使用idea debug多线程

最近采用hystrix远程访问webservice, 遇到一个重定向303的exception,想要debug一下,发现打了断点后总是被跳过。想到hystrix异步线程的问题,于是想要debug就得支持多线程。发现原来debug分级别的:all, thread默认是all,然后只会debug到本线程的断点,修改成thread就可以swap Thread 来debug了。 对于ide

2016-09-20 17:52:32 799

原创 (转载)构建public APIs与CORS

from: https://segmentfault.com/a/1190000000709909理由:在操作层面详细的讲解了跨域的操作。尤其是对于option请求的详解。收藏。 在构建Public APIs的过程中,首先要解决的第一个问题就是跨域请求的问题。网络应用安全模型中很重要的一个概念是“同源准则”(same-origin policy)。该准则要求一个网站(由协议+主

2016-09-20 17:52:26 368

原创 SpringMVC 参数注入

写一个web service, 总是400. 说是request有问题,server不识别。然而检查了很多次都没问题。最终问题指向spring对参数的解析和注入。一个controller中可以自定义参数,只要参数和request的参数匹配就会自动注入。针对自定义POJO,显然是spring帮忙给new了一个新的,然后把参数扔进去。测试发现,不是setter方法的问题。最后,发现自己在P

2016-09-20 17:52:20 274

原创 java删除文件夹

想删除本地一个项目目录,结果windows说路径太长,不能删除。于是试了试java删除。一切ok。以后一定要抓紧时间学python。/** * Created by rmiao on 4/21/2016. */public class TestDel { public static void main(String[] args) throws IOExcepti

2016-09-20 17:52:14 153

原创 idea 自动提示生成 serialVersionUID

from: http://tonycody.blog.51cto.com/8421818/1401422Intellij IDEA 默认没启用这个功能。Setting->Inspections->Serialization issues->Serializable class without ’serialVersionUID’选中以上后,在你的class中:光标定位在类名前,按

2016-09-20 17:52:08 757

原创 JSP自定义tag

前端需要调用后端的配置,想起velocity-tools。然而jsp的话,目前只能想到tag和EL表达式了。 Tag相当好写,jsp2.0提供了简化写法:编写一个java类:public class HelloWorldTag extends SimpleTagSupport { public void doTag() throws JspException, I

2016-09-20 17:52:00 152

原创 gradle中使用嵌入式(embedded) tomcat, debug 启动

在gradle项目中使用embedded tomcat。最开始部署项目需要手动将web项目打成war包,然后手动上传到tomcat的webapp下,然后启动tomcat来部署项目。这种手动工作通常还要指定端口,指定项目位置等,这些操作是重复的操作。开发的时候,ide自然想到集成这些功能,于是都是server模块,设置好参数就可以run server,测试了。个人操作的时候确实挺方便的,然而

2016-09-20 17:51:54 527

jdk1.8.0_261.7z

jdk 1.8.0 261最新版本jdk windows 64 位, 解压配置java home即可使用。 上传原因: 官网下载慢, 下载还要安装。

2020-08-21

scrt-8.5.4-1942.ubuntu18-64.x86_64.deb

securecrt linux版本 加速下载,不用注册啦。 网络还慢, 这是官网注册后下载的。 破解: wget http://download.boll.me/securecrt_linux_crack.pl chmod +x securecrt_linux_crack.pl % sudo perl securecrt_linux_crack.pl /usr/bin/SecureCRT crack successful License: Name: xiaobo_l Company: www.boll.me Serial Number: 03-91-324785 License Key: AC33SN 4JHKFS 48KYUT MY8F24 AAKC1C HJYFXT 8P6S99 MRAUQ2 Issue Date: 02-12-2019

2019-09-24

jdk1.8.0_221.tgz

java1.8的最新的Oracle的jdk。i386的平台。Linux解压可用

2019-08-20

apache-hive-1.1.0-bin.tar.gz

发现国内没有1.1.0的归档镜像了,在官方文档下载了好久。

2019-08-20

jdk-8u211-linux-x64.tar.gz

Oracle Java Jdk 1.8 the latest version. The official website is to slow, just share it with you

2019-05-07

搜狗输入法 for Ubuntu

搜狗输入法 for linux, 搜狗输入法 for ubuntu. http://blog.csdn.net/leijiezhang/article/details/53707181

2017-10-17

Slik-Subversion-1.9.4-x64

Slik svn client. 发现从官网下载超级慢,所以共享出来。

2016-09-22

mysql-5.6.5-win32.msi

msyql5.6安装包,windowsmsyql5.6安装包

2016-02-20

Git-2.6.3-64-bit.exe

git安装包,window版本

2016-02-20

Redis-x64-3.0.501.zip

redis3客户端,window客户端,从github上下下来的,github太慢了

2016-02-20

Redis-x64-3.0.501.msi

github下载太慢,这个是windows 64的redis 3的安装包

2016-02-20

Redis-x64-3.0.501 msi/客户端zip

redis3.0的windows安装包和客户端,github下载好慢,特来上传。

2016-02-20

快乐的Linux命令行 pdf

对于Linux的操作 顶顶顶顶

2015-03-05

菜鸟变黑客+终极教程【黑客必备】.doc

菜鸟变黑客+终极教程【黑客必备】.doc

2015-03-05

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

TA关注的人

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