还在找注册码?破解IDEA你才能为所欲为!

IDEA 全称 IntelliJ IDEA,是java编程语言开发的集成环境。IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE支持、各类版本工具(git、svn等)、JUnit、CVS整合、代码分析、 创新的GUI设计等方面的功能可以说是超常的。IDEA是JetBrains公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著
还在找注册码?破解IDEA你才能为所欲为!

TKMapper通用Mapper生成主键策略的几种方式

通用 Mapper 是一个可以实现任意 MyBatis 通用方法的框架,项目提供了常规的增删改查操作以及Example 相关的单表操作。通用 Mapper 是为了解决 MyBatis 使用中 90% 的基本操作,使用它可以很方便的进行开发,可以节省开发人员大量的时间。 一、Mybatis基于Maven插件快速生成Java模型以及XML <build> <plugins> &
TKMapper通用Mapper生成主键策略的几种方式

Brew使用阿里巴巴镜像源

国内访问国外的路线一直以来都不是很顺畅,坑哭了不少日夜奋斗在一线的码士。在这里特别感谢阿里巴巴开源镜像站为我们提供优质的服务。 @维基 Homebrew是一款自由及开放源代码的软件包管理系统,用以简化macOS系统上的软件安装过程,最初由马克斯·霍威尔(Max Howell)写成。因其可扩展性得到了一致好评,而在Ruby on Rails社区广为人知。 Homebrew使用GitHub,通过用户的
Brew使用阿里巴巴镜像源

危机公关的三条应对策略

第一条是防守 面对明显的问题,诚恳道歉,给出实质性的解决方案,守中待攻,谋求反转。 第二条是装死 有的问题很敏感,多说无益,不如不说,沉默是金,将头埋到沙子里做鸵鸟在这个信息爆炸、人人健忘的时代,也是一个良策。很快,将会有另一个冤大头出来,抢了你的风头。 第三条是进攻 如果你神清气正,面临的问题是外界的误解,你自然可以勇敢地进攻,树立一个光辉的形象。 最好的危机公关,一定要具体情况具体分析,根据舆
危机公关的三条应对策略

Java中Thread类中State枚举类定义与说明

NEW状态表示刚刚创建的线程,这种线程还没开始执行。等到线程的start()方法调用时。才表示线程开始执行。当现场执行时,处于RUNNABLE状态,表示线程所需的一切资源都已经准备好了。如果线程在执行过程中遇到了synchronized同步块,就会进入BLOCKED阻塞状态,这时线程就会暂停执行,直到获得请求的锁。WAITING和TIMED_WAITING都表示等待状态,它们的区别是WAITING
Java中Thread类中State枚举类定义与说明

一句话介绍synchronized

JVM会自动通过monitor来加锁和解锁,保证了同时只有一个线程可以执行指定代码,从而保证了线程的安全,同时具有可重入和不可中断的性质。
一句话介绍synchronized

包装类对象之间值的比较全部采用equals方法比较

对于 Integer var = ? 在-128 至 127 范围内的赋值,Integer 对象是在 IntegerCache.cache 产生,会复用已有对象,这个区间内的 Integer 值可以直接使用==进行 判断,但是这个区间之外的所有数据,都会在堆上产生,并不会复用已有对象,这是一个大坑, 推荐使用 equals 方法进行判断。
包装类对象之间值的比较全部采用equals方法比较

Java多线程的三个核心思想

一把锁只能同时被一个线程所持有,没有拿到锁的线程只能等待。 每个实例都对应有自己的一把锁,不同实例互不影响。注意:当锁对象是*.class以及synchronized修饰的static方法时所有对象都共用同一把锁。 无论方法是正常执行完毕还是抛出异常,都会释放锁。
Java多线程的三个核心思想

Centos7释放Journal产生的日志文件

坦率的讲徐叔有好几台服务器国内几台阿里云,美国也有几台。奈何磁盘都只有可怜兮兮的40G好在都是SSD磁盘。精打细算网站上的图片都不敢放高清的,视频压根就不敢放。最近巡查发现磁盘突然暴涨了好几个G的磁盘占用经过排查主要都是由Jorunal生成的日志所导致。 从Centos7开始使用的systemd使用了journal日志,这个日志的管理方式和以往使用syslog的方式不同,可以通过管理工具维护。 使
Centos7释放Journal产生的日志文件

基于延迟队列打造精准的订单超时关闭

订单的超时取消很多系统采用定时任务,实际上达不到要求。我用的是延迟队列,但缺点是只实现了基于jvm的,分布式采用的是修改之前去查询订单状态,以及分布式锁获取的方式来控制,这样获得锁的,先去查订单是否已经取消掉,如果没有,就改成去掉。但这种方式虽然效果不错,我对这个半吊子的思路还是不满意的,后面有时间再优化一些,做成分布式的。 整个功能实际就是利用延迟队列的特性。延迟队列有个时间属性,一旦到达这个时