- 博客(194)
- 资源 (15)
- 问答 (2)
- 收藏
- 关注
原创 Spring resource bundle多语言,单引号format异常
Spring resource bundle多语言,单引号format异常前言十一假期被通知出现大bug,然后发现是多语言翻译问题。法语中有很多单引号,单引号在format的时候出现无法匹配问题。这个问题是由spring resource bundle 并调用MessageFormat引起的,根本原因是MessageFormat会转义单引号。创建一个简单的多语言demo,重现异常1.配置
2016-09-20 17:54:15 887 1
原创 如何优化coding
如何优化coding前言最近一直在做修改bug工作,修改bug花费时间最多的不是如何解决问题而是怎样快速读懂代码。如果代码写的好的,不用debug就可以一眼看出来哪里出了问题。实际上,我都要debug好多遍才能差不多理解这个业务逻辑,进而分析原因以及修改修复的代价。这项工作花费了我绝大部分的时间,而且并没有什么意义,因为fix bug之后就再也不会处理这些代码了。因此,易读性应该放在代码的首
2016-09-20 17:54:09 206
原创 在centos7中添加一个新用户,并授权
前言笔记本装了一个centos,想要让别人也可以登录访问,用自己的账号确实不太好,于是准备新建一个用户给他。创建新用户创建一个用户名为:zhangbiao[root@localhost ~]# adduser zhangbiao为这个用户初始化密码,linux会判断密码复杂度,不过可以强行忽略:[root@localhost ~]# passwd zhangbiao更改用户 zha
2016-09-20 17:54:03 3281
原创 在PowerShell中使用curl(Invoke-WebRequest)
前言习惯了windows的界面模式就很难转去命令行,甚至以命令行发家的git也涌现出各种界面tool。然而命令行真的会比界面快的多,如果你是一个码农。situation:接到需求分析bug,需要访问http。那台机器属于product,不允许装postman。我只能手动命令行来发请求。发现了内置的PowerShell中有curl命令。欢喜试了半天,总是命令不对,google发现这个curl是冒
2016-09-20 17:53:57 5124
原创 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 369
原创 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 172
原创 linux centos中添加删除修改环境变量,设置java环境变量
前言安装完软件必要添加环境变量。指令很少,然而长时间不写就会不自信:我写的对吗?于是百度开始,于是发现又是各有千秋。好吧,好记星不如烂笔头。当然,最重要的是,百度出来的都他妈的是如何添加环境变量,只字不提删除和修改。显然,都是像我一样的外门汉做笔记的,用啥写啥。增加环境变量百度出来的都是修改/etc/profile文件,添加export var=value。我也没认真去看linux的指令的
2016-09-20 17:53:41 477
原创 在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 353
原创 centos7查看系统版本,查看机器位数x86-64
前言由于不经常使用linux,每当使用的时候就是安装软件,安装软件的时候就要选择安装包平台,是32位的还是64位的。这时候突然发现不知道怎么查,于是百度。虽然轻而易举百度出来,但仍旧没有自己的笔记看起来舒服。所以,还是记录下来。辨识标准首先要清楚什么样标识是32位的,什么样的是64位的。PC server X86 系列I386--I686 都是32位x86_64 是 64位查看位
2016-09-20 17:53:31 378
原创 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 266
原创 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 259
原创 使用swagger作为restful api的doc文档生成
初衷记得以前写接口,写完后会整理一份API接口文档,而文档的格式如果没有具体要求的话,最终展示的文档则完全决定于开发者的心情。也许多点,也许少点。甚至,接口总是需要适应新需求的,修改了,增加了,这份文档维护起来就很困难了。于是发现了swagger,自动生成文档的工具。swagger介绍首先,官网这样写的:Swagger – The World's Most Popular Framewo
2016-09-20 17:53:14 2620
原创 在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 4213
原创 国内maven镜像,快的飞起
在oschina关来关去的烦恼下,终于受不了去寻找其他公共库了。阿里云maven镜像 alimaven aliyun maven http://maven.aliyun.com/nexus/content/groups/public/ central 其他,求提供
2016-09-20 17:53:02 494
原创 醒悟,珍惜时间,学会利用资源
我一直在为自己如何学习发愁,因为发现自己什么都想学,什么都不愿意学。发现这个不会,想要去学,但是时间和资源都是稀缺的,不一定愿意花费时间去做那些看不到成果的东西。最近的工作就是简单的写写接口和test,刚开始以为多困难。overview,大概一想,真是不能再简单的了。工作的内容重复且一致,不同的是需求不同,然后定制的做对应的接口开发啊,完全没有想象中那么难。对应的,后端数据库不用管了,只需要学会
2016-09-20 17:52:58 255
原创 重定向Http status code 303 和 302
http 302http 303Http 302302是一个普通的重定向代码。直观的看来是,请求者(浏览器或者模拟http请求)发起一个请求,然后服务端重定向到另一个地址。而事实上,服务端仅仅是增加一条属性到header,location=重定向地址。而一般的,浏览器会自动的再去请求这个location,重新获取资源。也就是说,这个会使得浏览器发起两次请求。ExampleClient
2016-09-20 17:52:52 15153
原创 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 622
原创 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 698
原创 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 395
原创 使用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 839
原创 (转载)构建public APIs与CORS
from: https://segmentfault.com/a/1190000000709909理由:在操作层面详细的讲解了跨域的操作。尤其是对于option请求的详解。收藏。 在构建Public APIs的过程中,首先要解决的第一个问题就是跨域请求的问题。网络应用安全模型中很重要的一个概念是“同源准则”(same-origin policy)。该准则要求一个网站(由协议+主
2016-09-20 17:52:26 390
原创 SpringMVC 参数注入
写一个web service, 总是400. 说是request有问题,server不识别。然而检查了很多次都没问题。最终问题指向spring对参数的解析和注入。一个controller中可以自定义参数,只要参数和request的参数匹配就会自动注入。针对自定义POJO,显然是spring帮忙给new了一个新的,然后把参数扔进去。测试发现,不是setter方法的问题。最后,发现自己在P
2016-09-20 17:52:20 289
原创 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 159
原创 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 765
原创 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 159
原创 gradle中使用嵌入式(embedded) tomcat, debug 启动
在gradle项目中使用embedded tomcat。最开始部署项目需要手动将web项目打成war包,然后手动上传到tomcat的webapp下,然后启动tomcat来部署项目。这种手动工作通常还要指定端口,指定项目位置等,这些操作是重复的操作。开发的时候,ide自然想到集成这些功能,于是都是server模块,设置好参数就可以run server,测试了。个人操作的时候确实挺方便的,然而
2016-09-20 17:51:54 543
原创 spring in action 4th --- quick start
读spring in action. 环境搭建quick-start依赖注入面向切面1.环境搭建jdk1.8gradle 2.12Intelij idea 2016.2.11.1创建一个gradle项目在idea中,new -> project -> gradle 创建一个空项目。创建成功后修改build.gradle :gro
2016-09-20 17:51:48 165
原创 Date, TimeZone, MongoDB, java中date的时区问题
打印new Date(),Fri Aug 12 13:37:51 CST 2016. 显示Asia/Shanghai的时区,但是date toString 的时区简写却是CST。更坑爹的是,Google CST结果出来是Central Standard Time. 表示North American Central Standard Time. 还以为jdk的date类有问题,debug date
2016-09-20 17:51:42 1017
原创 spring boot 添加拦截器
构建一个spring boot项目。添加拦截器需要添加一个configuration@Configuration@ComponentScan(basePackageClasses = Application.class, useDefaultFilters = true)public class ServletContextConfig extends WebMvcConfig
2016-09-20 17:51:36 278
原创 HTTP status code
被一个问题耽搁了好久,最后才恍然。这是关于HTTP status的。使用feign进行http请求,结果总是抛出异常: read 405.由于不了解feign具体原理,还总觉得是内部错误。虽然错误信息没有明确指出http返回异常,但看到405就应该敏感才对。这里就记录遇到的各种status。 1.405 Method Not Allowed请求方式不允许。即服务端只允许比如get,
2016-09-20 17:51:32 918
原创 maven pom中 设置远程仓库url
repositories> --> spring-snapshots--> http://maven.oschina.net/content/groups/public/--> --> true--> --> -->
2016-09-20 17:51:26 2862
原创 git取消跟踪文件
取消跟踪文件:$git rm --cached FILENAME取消跟踪目录:$git rm --cached FILENAME -r
2016-09-20 17:51:22 212
原创 spring-boot - demo
当我发现把最初的一个demo整的面目全非的时候,突然想要找一个简单的demo做测试,发现与其在原来的上面该,还不如新建一个demo。官方入门:http://projects.spring.io/spring-boot/ 最熟悉maven,这次先做一个maven的demo。创建maven project。pom:xml version="1.0" encoding
2016-09-20 17:51:18 136
原创 Mybatis - 动态sql
learn from:http://www.mybatis.org/mybatis-3/dynamic-sql.htmlmybatis支持动态拼接sql语句。主要有:ifchoose (when, otherwise)trim (where, set)foreach1.if首先看基本实例:select id="findActiveBlogWithName
2016-09-20 17:51:08 143
原创 git版本回退, github版本回退
上周提交了更改,过了周末回来说要撤销上个story。于是,需要找到上周提交的版本,rollback回来。git版本管理命令,自从习惯使用管理工具之后就很少接触了,当突然寻找其他指令的时候就成浆糊了,ctrl+k只能顺利的提交而无关管理。因此,工具简化操作却弱化了技能。就像前几天听到的BBC 6分钟英语的一段对话。Rob说他当年在酒吧实习,对钱的加减算法很熟悉很强,因为那时候计算机还没有推广
2016-09-20 17:51:01 421
原创 Mybatis高级查询之关联查询
learn from:http://www.mybatis.org/mybatis-3/zh/sqlmap-xml.html#Result_Maps关联查询准备关联结果查询(一对一)resultMap复用集合(一对多)3 关联查询做查询之前,先修改几个配置。mapper.xml是在mybatis-config.xml中指定,那么我们每增加一个mapper都要增加
2016-09-20 17:50:55 225
原创 Mybatis-update - 数据库死锁 - 获取数据库连接池等待
最近学习测试mybatis,单个增删改查都没问题,最后使用mvn test的时候发现了几个问题:update失败,原因是数据库死锁select等待,原因是connection连接池被用光了,需要等待get:要勇于探索,坚持就是胜利。刚看到错误的时候直接懵逼,因为错误完全看不出来,属于框架内部报错,在犹豫是不是直接睡觉得了,毕竟也快12点了。最后还是给我一点点找到问题所在
2016-09-20 17:50:51 1460
原创 使用Apache Server 的ab进行web请求压力测试
参考:http://www.cnblogs.com/spring3mvc/archive/2010/11/23/2414741.html自己写代码经常是顺着逻辑写下去,写完后run一下,ok就玩完事了。直到遇到一个又一个的问题的时候才回头过来重新修改。这就是没有测试的悲剧。因此,在今后的代码中一定要尝试着去写测试,去做测试。发现Apache Server下有个工具ab可以进行并发请求,正好
2016-09-20 17:50:45 207
原创 Spring-AOP实践 - 统计访问时间
公司的项目有的页面超级慢,20s以上,不知道用户会不会疯掉,于是老大说这个页面要性能优化。于是,首先就要搞清楚究竟是哪一步耗时太多。我采用spring aop来统计各个阶段的用时,其中计时器工具为StopWatch。文章结构:遇到的问题创建项目AOP-HelloWorld时间统计bugfinal压力测试源码其中,遇到的问题:1.少包aspec
2016-09-20 17:50:38 628
jdk1.8.0_261.7z
2020-08-21
scrt-8.5.4-1942.ubuntu18-64.x86_64.deb
2019-09-24
jdk-8u211-linux-x64.tar.gz
2019-05-07
搜狗输入法 for Ubuntu
2017-10-17
怎样对从ehcache缓存中取出的对象修改而不改变缓存中的对象
2015-11-25
IntelliJ IDEA 不能识别java.util。或者说找不到,求助
2015-08-20
TA创建的收藏夹 TA关注的收藏夹
TA关注的人