idea 提高开发效率、快速编程技巧

本文介绍了IDEA的一些高效开发配置和插件使用,包括代码块快捷键设置、枚举生成、线程操作、创建线程、文件头模板、内存优化、解决Maven依赖冲突、接口入口查找、代码格式化、对象转换、Javadoc生成、内存限制、代码规范检查、Lombok使用、JSON对象映射、toString方法生成、Maven依赖搜索、代码翻译、远程调试配置、代码标记跳转等,旨在提升开发效率。
摘要由CSDN通过智能技术生成

1.建立代码块mylock快捷键

步骤 File ->Settings->Editor->Live Templates -> Java -> + -> Live Template

代码块:

$STAER$.lock();
try {

}catch (Exception e){
    e.printStackTrace();
}finally {
    $STAER$.unlock();
}

 

2.快速枚举代码块myenum

步骤 File ->Settings->Editor->Live Templates -> Java -> + -> Live Template

{
    ONE(1,""),
    TWO(2,""),
    THREE(3,"");
        
    
    @Getter
    private Integer retCode;
    @Getter
    private String retMessage;

    MyEnum(Integer retCode, String retMessage) {
        this.retCode = retCode;
        this.retMessage = retMessage;
    }
    
    public static $STAER$ forEach_CounttryEnum(int retCode){
        MyEnum[] values = $STAER$.values();
        for (MyEnum element : values){
            if (retCode == element.getRetCode()){
                return element;
            }
        }
        return null;
    }
}

 效果:

3.快速线程等待Sleep()

步骤 File ->Settings->Editor->Live Templates -> Java -> + -> Live Template

try {TimeUnit.SECONDS.sleep($STAER$); } catch (InterruptedException e) { e.printStackTrace(); }

 效果:

 4.快速创建线程Thread

步骤 File ->Settings->Editor->Live Templates -> Java -> + -> Live Templat

new Thread(()->{
    $STAER$   
},"I'm a Thread name").start();

5.创建JAVA添加对应作者和时间

步骤 File ->Settings->Editor—> File and Code Templates—>includes—>FileHeader

/**
 * @author  TuanTuan
 * @date  ${DATE} ${TIME}
 * @version 1.0
 */

 

 6.(推荐)设置IDEA初始化内存和最大内存解决卡顿问题

 

-Xmx4096m
-Xms2048m
-XX:ReservedCodeCacheSize=256m
-XX:+UseG1GC

7.java解决maven jar冲突

描述:项目中我们可能依赖多个jar包,其中包与包之间可能会发生包依赖冲突问题(A、B包中依赖了C,但是A、B中依赖的C包的版本不同,导致你的代码出现错误)

1.解决方法使用IDEA的插件(Maven Helper)使用exclusions标签将传递依赖排除出去来排查哪些包之间的依赖关系和冲突关系,把不需要包的版本进行剔除。

 

 2.到父POM文件中设置全局的使用dependencyManagement标签锁定依赖的版本 ,子pom全部依赖与它,不需要解决jar冲突问题

ps:其中设计到scope标签

Maven考虑了6中可能的scope供选择:

    - compile: 默认的scope。编译、测试、打包全都需要。compile参与依赖传递,就是说,你的项目A依赖于B(依赖scope是compile),项目C依赖于你的项目A,那么C也就依赖于B。

    - provided: 表示JDK或者容器会在Runtime时提供这些(jar),如上面说到的servlet api。provided的东西在编译和测试时会用到,不参与传递依赖。

    - runtime: 表示编译时不需要,但测试和运行时需要,最终打包时会包含进去。

    - test: 只用于测试阶段(测试的编译和测试的运行),典型的就是junit的jar。

    - system: 和provided类似,但要求jar是你的系统里已有的,不会在repository里找,如rt.jar,tools.jar这些。

    - import: 简单的说,你的项目的pom可以继承另一个项目的pom,从而继承了父项目的依赖关系,但是因为之后single inheritance的限制,所以创造了import,使得你可以“导入”或者说“继承”任何一到多个项

3.pom中生明优先原则

通过上图可以看到,spring-aop和spring-webmvc都传递过来了spring-beans,但是因为spring-aop在前面,所以最终使用的spring-beans是由spring-aop传递过来的,而spring-webmvc传递过来的spring-beans则被忽略了

8.idea 通过url地址找到对应的Controller 代码入口、

描述:如项目经理要我们处理一个别人的一个接口的实现等,我们需要去查询接口的入口及实现。

1.可以通过Ctrl+shift+R进行全局搜索接口名称来查询对应的controller入口的位置。

2.可以通过idea的插件RestfulTool 来查询对应的controller层位置。

也可以用这个插件来代替postmant发送请求

 9.idea 代码样式格式化

1.通过Ctrl+Alt+L进行自带的快捷键格式化

2.通过ieda插件Save actions 来进行代码补齐和格式的格式化

10.(推荐)idea中对象dto、vo、pojo相互转换set值。

1.通过idea的插件(vo2dto)来相互转换。先copy要转换的对象,再点击到转换的对象Generate中的vo2dto进行来转换

 2.通过Mapstruct映射包,我们定义一下接口,对象的set值

 11.(推荐)idea中添加方法和类名和变量,注释javadoc格式

        1.使用idea中插件(Easy Javadoc)翻译类、方法名、变量名,生成对应的javadoc注释(快捷键 Ctrl+\)或者自定义格式

自定义格式

12.解决开启多个服务时候导致我们内存消耗太快,配置我们jvm参数来控制每个服务的内存限制

限制每个服务间,的最大内存从而提高回收的次数,从而达到开启多个服务(可以设置spring boot默认的jvm参数或者单独到服务的jvm中配置)

VM options参数: -Xmx200m -Xms200m -XX:+UseG1GC -XX:MaxGCPauseMillis=20

配置Springboot项目初始配置

 单独配置项目的jvm

 13.(推荐)java代码规范检测、提示、修改

使用idea中插件(Alibaba Java Coding Guidelines)扫描我们代码中的不规范问题,并提示修改。

 14.(推荐)idea中使用插件(Lombok)、减少代码编写等

 15.对接第三方api接口中,通过返回的json快速的创建我们的对象

使用idea中插件(GsonFormatPlus),可以快速对json映射出对应的对象,可以对类型进行所需要的修改和注释(快捷键alt+s)

{
    "error": 0,
    "status": "success",
    "date": "2021-12-31"
}

 

 16.编写对象的时候一定要重写toString方法,方便后面的调试工作

idea 中使用快捷键Alt+insert 弹出Generate窗口,点击toString按钮选择(String concat(+) and super.toString)模板,来重写toString方法。

 17.(推荐)搜索maven依赖,不用通过网站上搜索,直接到idea中搜索

18.(推荐)idea中源码和代码都是英文的,不是很方便,所以我们安装插件Translation来翻译

 

 19.服务器远程调试模式,前提是需要服务器端开启远程调试模式(配置jvm参数)

设置vm参数: -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=1044 后启动服务我们本地就可以通过ip加 1044这个端口进行调试了。

20.idea 代码标记快速跳转

代码标记快捷键(Ctrl + Shift + 数字)

代码跳转快捷键(Ctrl + 数字)

 - ps 跳转的位置就是我们标记对应数字的位置

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值