java EE
joshua1830
这个作者很懒,什么都没留下…
展开
-
服务端常见超时问题
kafka listener 超时max.poll.interval.ms 默认5分钟 listener 拉取消息间隔,超过这个时间会引起rebalance,重试,要求我们必须在5分钟内完成,太长时间的不可以用listener 处理,要改用异步jobmysql 锁表超时锁表超时 innodb_lock_wait_timeout =60 秒 超过这个时间 事务会中断重试,要求我们对数据库的操作事务要在60秒内完成,特别是对批量处理的,for 循环的要保证能在60秒内完成报错信息 com.m.原创 2020-10-26 09:13:52 · 1377 阅读 · 0 评论 -
string 转yaml 不支持无法打印的unicode字符的问题
当我们用yaml来存储Map<String,String>时候,用dump方法转yaml,如果map中有不可打印的字符比如 \u0002 \b 等unicode,时候,发现转出来的内容成了!!binary "5oKj6ICF77yM55S377yMMjTlsoHjgILlm6DovabnpbjkvKTlhaXpmaLvvIzmn6XkvZPlj5HnjrDlt6bkvqfpoqfpq...原创 2019-12-03 21:04:06 · 1201 阅读 · 1 评论 -
Restful api 防止重复提交
当前很多网站是前后分离的,前端(android,iso,h5)通过restful API 调用 后端服务器,这就存在一个问题,对于创建操作,比如购买某个商品,如果由于某种原因,手抖,控件不bug,网络错误,可能导致一次操作实际上购买了多次同一个产品。所以,我们要考虑防止重复提交。这个重复提交我们只限定于创建操作,对于修改和删除操作,原则上是幂等的,不用担心,查询操作更不用担心重复操作。方案一,原创 2017-12-29 14:41:10 · 17517 阅读 · 2 评论 -
resteasy 数据校验之Hibernate validation 国际化问题
resteasy 数据校验之Hibernate validation在集成过程中遇到的问题国际化文本 ValidationMessages_zh_CN.properties 必须放在根目录ValidationMessages_zh_CN.properties编码类型必须是ISO-8859-1,不能是utf-8ValidationMessages_zh_CN.properties文件名称不能更改在非LANG=zh_CN.UTF-8环境中运行时国际化文本没有起作用原创 2017-10-09 16:31:41 · 1899 阅读 · 0 评论 -
spring boot aop 记录方法执行时间
前言为了性能调优,需要先统计出来每个方法的执行时间,直接在方法前后log输出太麻烦,可以用AOP来加入时间统计添加依赖dependency> groupId>org.springframework.bootgroupId> artifactId>spring-boot-starter-aopartifactId>dependency>在applic原创 2017-01-12 09:35:39 · 8488 阅读 · 0 评论 -
spring boot +mybatis+redis集成
整体思路之前已经有人做过mybatis+redis在spring环境的集成(http://blog.csdn.net/xiadi934/article/details/50786293)。 这里我们试试在spring boot中的集成,其中的一些注意点是不同的。特别是spring boot 的对mybatis的集成时候可以非常简单,但是在加入二级缓存时候,我们要考虑mybatis的配置。pom 中加原创 2017-01-07 15:59:24 · 9335 阅读 · 1 评论 -
分布式架构中的统一job调度监控管理的实现(一)
基于quartz的job 触发机制能解决的是时间的依赖。但是我们经常遇到的还有job之间的依赖,比如,job A 执行成功了才能执行job B。同时我们期望有对job的执行情况的log记录,如果job执行失败了,能够以告警的方式(邮件/短信)通知我们,进一步或者有个界面能够配置job,查询job执行情况。特别是现在很多系统都是分很多模块的特别是微服务架构的应用,如果多个模块都有单独的job触发机制原创 2016-08-23 11:51:00 · 2979 阅读 · 0 评论 -
JAXB 与web service 关系
JAXB(Java API for XML Binding), 是jax-rs jax-ws底层使用的对象与xml之间转换的工具。原创 2016-08-09 12:04:44 · 654 阅读 · 0 评论 -
Spring启动后获取所有拥有特定注解的Bean
最近项目中遇到一个业务场景,就是在Spring容器启动后获取所有的Bean中实现了一个特定接口的对象,第一个想到的是ApplicationContextAware,在setApplicationContext中去通过ctx获取所有的bean,后来发现好像逻辑不对,这个方法不是在所有bean初始化完成后实现的,后来试了一下看看有没有什么Listener之类的,发现了好东西ApplicationLis转载 2016-08-04 11:00:51 · 16150 阅读 · 1 评论 -
log4j category logger
Category 对log信息进行分类筛选,通俗的讲就是什么信息应该被输出,什么log信息应该被忽略 category 可以让log 按照classpath 分类category 是有继承分层的,命名为com.foo的category是被命名为com.foo.bar的category的parent,最上层的Category被称为根(root category),根category有原创 2014-07-11 16:36:04 · 1315 阅读 · 0 评论 -
非侵入式设计和侵入式设计
非侵入式系介绍DI用语,我得理解是两个组件(类,接口)之间,比较独立,不深入到另一个类内部,哪位大虾能点拨一二? 关于“侵入式”和“非侵入式”设计 有读者讲“侵入式”这一术语无法理解,这里给一个简单解释,是我个人的看法。 在设计一个类时,按理说,需要考虑的应该只是该类所企图表示的那个“概念”本身:为表示有关概念应记录哪些信息,该类的对象与外界交换信息的界面等等。但定义这个类转载 2014-09-12 08:41:14 · 3797 阅读 · 0 评论