设置IDEA快捷键和Eclipse一样

打开idea,点击file->settings->keymap,选择eclipse

  • 按如下表格中的英文描述进行搜索,并改为相应快捷键
EclipseIDEA英文描述中文描述
ctrl+shift+rctrl+shift+rNavigate->File找工作空间的文件
ctrl+shift+tctrl+shift+tNavigate->Class找类定义
ctrl+shift+gctrl+shift+gEdit->Find->Find Usages查找方法在哪里调用.变量在哪里被使用
ctrl+tctrl+tOther->Hierarchy Class看类继承结构
ctrl+octrl+oNavigate->File Structure搜索一个类里面的方法
shift+alt+zshift+alt+zCode->Surround With生成常见的代码块
shift+alt+lshift+alt+lRefactor->Extract->Variable抽取变量
shift+alt+mshift+alt+mRefactor->Extract->Method抽取方法
alt+leftalt+leftNavigate->Back回退上一个操作位置
alt+rightalt+rightNavigate->Forward前进上一个操作位置
ctrl+homectrl+homeMove Caret to Text Start回到类最前面
ctrl+endctrl+endMove Caret to Text End回到类最后面
ctrl+2 Lshift+alt+lRefactor->Extract->Variable抽取变量
ctrl+ealt+rView->Recent Files最近打开的文件
ctrl+wctrl+wClose关闭当前窗口
alt+/alt+/Code->Completion->Basic提示变量生成
ctrl+1ctrl+1Other->Show Intention Actions提示可能的操作
ctrl+hctrl+hFind in Path全局搜索
alt+上/下箭头alt+上/下箭头Code->Move Line Up/Down移动一行代码
ctrl+alt+上/下箭头ctrl+alt+上/下箭头Editor Actions->Duplicate Lines复制一行
ctrl+shift+jctrl+shift+jOther->Fix doc comment方法注释
暂无alt+enterOther->Show Intention Actions提示常见操作
Ctrl+FCtrl+F/Ctrl+RFind/Replace查找替换
Shift+EnterShift+EnterStart New Line开启新的一行
Ctrl+Alt+SCtrl+Alt+SGenerate生成getter,setter,tostring等

详解Spring中的Event事件处理机制和原理

我们都知道 Spring 的核心是 ApplicationContext,它负责管理 bean 的完整生命周期。当spring加载 bean 时,ApplicationContext 会发布某些类型的事件。例如,当上下文启动时,会发布ContextStartedEvent,当上下文停止时,会发布ContextStoppedEvent。

继续阅读“详解Spring中的Event事件处理机制和原理”

Spring里BeanFactory和ApplicationContext区别详解

Spring框架中BeanFactory和ApplicationContext之间有什么区别,很多Java程序员都不太清楚。特别是刚工作一两年的Java程序员,对它们都是一知半解。

getBean()方法

BeanFactory和ApplicationContext都可以通过调用getBean(“beanName”)获取bean的实例。同样是从Spring IOC容器中获取bean,但是它们提供的工作和功能有所不同。 BeanFactory和ApplicationContext之间的区别是,前者仅在调用getBean()方法时实例化bean,而ApplicationContext在容器启动时实例化Singleton bean,而不等待getBean被调用。

继续阅读“Spring里BeanFactory和ApplicationContext区别详解”

linux系统里/opt目录和/usr/local目录的区别

在学习linux的时候,看到/opt目录和/usr/local目录都是安装软件的目录,那这两个目录有什么区别呢?

一、opt目录

/opt目录用来安装附加软件包,是用户级的程序目录,可以理解为D:/Software。安装到/opt目录下的程序,它所有的数据、库文件等等都是放在同个目录下面。opt有可选的意思,这里可以用于放置第三方大型软件(或游戏),当你不需要时,直接rm -rf掉即可。在硬盘容量不够时,也可将/opt单独挂载到其他磁盘上使用。

继续阅读“linux系统里/opt目录和/usr/local目录的区别”

jenkins配置git

在之前的文章linux里使用rpm方式安装jenkins,已经介绍了如何安装jenkins,如果觉得不喜欢rpm的安装方式,也可以直接在官网下载jenkins的war包,然后运行以下命令即可。

jenkins的war包自带Jetty服务器。

这篇介绍jenkins配合gitlab使用。

继续阅读“jenkins配置git”

Java里位操作总结

我们都知道计算机里的数据都是以二进制形式存储的,所谓的位运算可以理解为直接对内存中的二进制数据进行操作,所以速度会比较快。

这边先写个二进制输出方法

继续阅读“Java里位操作总结”

linux安装git

安装之前需要先安装好git需要的依赖包

#yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker

下载并编译git

# 下载
# wget https://www.kernel.org/pub/software/scm/git/git-1.8.3.1.tar.gz
# tar xzf git-1.8.3.1.tar.gz
# 编译和验证
# cd git-1.8.3.1
# make prefix=/usr/local/git all
# make prefix=/usr/local/git install
# echo “export PATH=$PATH:/usr/local/git/bin” >>/etc/bashrc
# source /etc/bashrc
# git –version

linux里使用rpm方式安装jdk

一、环境

1.linux版本

[root@localhost ~]# cat /proc/version
Linux version 3.10.0-123.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.2 20140120 (Red Hat 4.8.2-16) (GCC) ) #1 SMP Mon Jun 30 12:09:22 UTC 2014

2.jdk版本

jdk-8u212-linux-x64.rpm,下载地址: http://www.oracle.com/technetwork/java/javase/downloads/index.html

继续阅读“linux里使用rpm方式安装jdk”

在IDEA里解决maven的pom引用jar包冲突

前言

有的时候,我们要给系统添加一个新功能,可能需要引入新的pom依赖,一切都搞定好后,运行程序却发现报NoClassDeFoundError错误,或者其它莫名奇妙的问题。
这个时候很有可能就是新引入的pom依赖里某个jar包和之前系统已有的冲突了。

那么,该从何下手呢?

继续阅读“在IDEA里解决maven的pom引用jar包冲突”