idea使用指南

RestfulToolkit 插件 (在任何类下, ctrl+\ 来搜到 拼接后的url, 特别方便)

RestfulToolkit是一套辅助开发Restful服务的工具集,对于这个插件,我最常用的功能就是快速查找指定的url对应的方法。快捷键是Command + \

 idea使用指南_第1张图片

关于强转
(CrcWorkExperienceAfter)obj;
(List)businessDatas

 log.info(Json.toJsonString(list));于sout() 的区别,  log.info(可以打印当前所在 的是哪个类 打印的log)

idea使用指南_第2张图片

idea使用指南_第3张图片

idea使用指南_第4张图片

idea使用指南_第5张图片

idea使用指南_第6张图片

 

设置类头注释--方法一  在File and Code Template点击file header进行设置

/**
 * 
 * @author wangxl
 * @date ${YEAR}-${MONTH}-${DAY}
 */

设置类头注释--方法二  在File and Code Template --Files-选择Class设置

#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end
#parse("File Header.java")
/**
 * @Author: wangxinle5
 * @Description: 
 * @Date: ${YEAR}/${MONTH}/${DAY}/${HOUR}:${MINUTE}
 */
public class ${NAME} {
}



controller方法注释,在 live template设置
/**
 * @Author: wangxinle5
 * @Description: 
 * @Date: $date$ $time$
 * @Param: $params$
 * @return: $returns$
 */

设置service接口注释,使用默认的快捷键 /**回车即可, 输入说明信息即可

idea使用指南_第7张图片

 idea使用指南_第8张图片

 idea使用指南_第9张图片

String t = "a||b||c||d";

String[] temp = t.split("\\|\\|");

System.out.println(temp.length);

idea使用指南_第10张图片

 

1.eclipse使用指南,将项目1 和 项目2  放到 不同的文件夹下, 
从代码仓库下载到 project1 project2文件夹下, 打开eclipse,导入settings.epf文件

2.关于匿名内部类:在升级替换class文件时候, 
要连同同名的class的匿名内部类的class也要生成,即 同名且含有&符号的 .class文件 都要复制替换
IntelliJ IDEA 热部署,修改java文件JS文件 不用重启tomcat,设置tomcat如下:
on ‘update‘ action:当用户主动执行更新的时候更新    快捷键:Ctrl + F9 手动加载新代码的.class文件

on frame deactication:在编辑窗口失去焦点的时候更新

你可以根据自己的需求进行设置,我这里两个都有设置。  这里设置以后,修改sql必须重启 而class修改不用重启,  如果电脑比较卡, 就不要在这里设置了市区焦点更新class文件, 你可以手动去点击 idea菜单栏的 锤子 按钮来 重新编译代码
idea之web项目添加tomcat并启动:

1.Facets--->点击加好,选择web,添加web(kl)
2.Web Application Explored from module选择客流kl项目

3.此步是不需要的  modules--->点击Dependencies添加tomcat的依赖(servlet-api和jsp-api)   

如果想修改mapper.xml里的sql也不用重启就生效的话,下载JRebel插件可以实现  你上一次是jrebel的debug模式启动的,那么下一次左下角就是jrebel debug,而不是默认的tomcat debug了

idea使用指南_第11张图片

 

idea使用指南_第12张图片

//采用简单类名格式记录日志
package example;
 
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
 
public class HelloWorld {
  public static Log log = LogFactory.getLog(HelloWorld.class);
  public static void main(String[] argv) {
             String test="sdibt";
            log.info("this is info:"+test);
            log.error("this is error:"+test);
            log.debug("this is debug:"+test);
  }
}

日志信息中已经给出了类名,根据类名及打印信息可以直接查找到所在的代码
格式: 时间  info  包名.类型  打印日志所在行数,  打印日志信息
2018-05-10 10:46:29,566 INFO [example.HelloWorld]:10 - this is info:sdibt
2018-05-10 10:46:29,566 ERROR [example.HelloWorld]:11 - this is error:sdibt
2018-05-10 10:46:29,566 DEBUG [example.HelloWorld]:12 - this is debug:sdibt

Process finished with exit code 0

logger.error("", e);
ERROR CounterDelayAlarmJob getCounterDelayTime error!
com.datangmobile.op.uf.dao.DAOException: fail to execute : from CustomOptionProp a where a.propName='PMData_DelayTime'; nested exception is java.lang.NullPointerException
 at com.datangmobile.op.uf.dao.BaseDAOImpl.queryJQL(BaseDAOImpl.java:373) [uf-midware.jar!/:na]

 

明确一点: 后台抛出异常,那么后续的代码都不会被执行

Java Exception 捕获和展示 使用 e.getMessage()

e.getMessage(); 只会获得具体的异常名称. 比如说NullPoint 空指针,就告诉你说是空指针... e.printStackTrace();会打出详细异常,异常名称,出错位置,便于调试用.. e.printStackTrace();会打出详细异常,异常名称,出错位置,便于调试用..

 

catch (Exception e) {
    e.printStackTrace();
    String message = e.getMessage();
    return Msg.fail().add(message.substring(0, message.indexOf("\r\n")));

设置后可以在console控制台进行搜索

idea使用指南_第13张图片

idea使用指南_第14张图片

新建一个对象封装入参 PassengerFlowData(因为不同的controller方法 有可能输入相同的参数,就可以复用该入参对象了)

转义字符的使用

var buttonContent = ""+lang_save+"

 

-- 给site_all_info添加主键列

select * from a left join b on (a,b的连接条件)left join c on(a,b形成的临时中间表和c的连接条件)

需要明确的地方一点: 用对象接查不到返回null,用list接查不到返回size为0的list

if (!"[]".equals(result)) //如果返回对象,非空判断是否为空list,不是空的list再parseArray

遍历list刷新其中实体类的值,返回原来的list就可以 (当然最好还是在get方法里,将两个成员变量通过计算赋值效率更高)

idea使用指南_第15张图片

缩进提示的竖线不见了,怎么找回

idea使用指南_第16张图片

 

将target文件夹不纳入版本控制,可以用git 或svn 的Tortoise

递归的recursively

idea使用指南_第17张图片

取消mybatissql警告

idea使用指南_第18张图片

 

IntelliJ IDEA隐藏不想看到的文件或文件夹

打开IntelliJ IDEA,File -> Settings -> Editor -> File Types

idea使用指南_第19张图片

 

打成war包的输出路径,写成这样,点击加号 选择 Web Application: Archive  输出到target目录下 (即为war包存放位置)

idea使用指南_第20张图片

 


Artifacts 项目的打包部署设置(选择如下框,点击确定) 注意打包前先更新下代码

idea使用指南_第21张图片

idea使用指南_第22张图片

idea使用指南_第23张图片

 

最好不要将target目录隐藏,方便从idea的这个目录下粘贴

idea使用指南_第24张图片

 

ctrl+h直接在下面进行修改,不用点进页面(当然最快的还是全局替换 replace in path 快捷键ctrl+shift+h)

idea使用指南_第25张图片


设置里搜索weak 将general 的 warning和weak warning右侧的 error strip mark前面的勾去掉,可以去掉右侧的黄色警告条影

idea.exe.vmoptions和idea64.exe.vmoptions调大
-Xms512m
-Xmx750m

1.idea的 Ctrl+Shift+F12(即eclipse的ctrl+m)  其实就是 Hide All Tool Windows  (隐藏所有工具窗口) 这个操作的快捷键 

2.如何让光标不随意定位:Settings->Editor中去掉Allow placement of caret after end of line。
   
3:如何显示行号:Settings->Editor->general->Appearance标签项,勾选Show line numbers

4.Intellij idea  修改后没有保存前文件----提示*号   Settings -> Editor -> General -> Editor Tabs: Check "Mark modified tabs with asterisk"

5.Settings -> Editor -> General -> Auto Import:打钩Optimize imports on fly会自动将不用的声明包(或倒错的包)删掉,相当于快捷键Ctrl+Shift+O

Add unambiguous imports on the fly:这个就是自动导入功能了,当你输入类名后,声明就被自动导入了。此功能不知是否好使

6.Settings -> Editor->Genneral->Gutter Icons->show gutter icons
以上就是设置显示代码前的绿色叶子:左边行数旁边有一个"I"绿色图标,点击进入实现类(在接口里点击会进入), 也可以ctrl+t进入实现类

7.去除IDEA报黄色/灰色的重复代码的下划波浪线
在 setting 里面 搜索 inspections _ General _ Duplicated Code 取消勾选.提交之后就可以了

右击jar包,add as liberary(最好将jar放到WEB-INFO的lib目录下) 
maven项目如果不使用maven的打包编译  其WEB-INF下的lib一定要要有项目部署的jar,所以,为了方便,jar都放到lib下,
至于是右键add as liberary,还是点击Project Structure-> Modules-> Dependencies ->绿色 加号 这下添加的jar 会在Depedencies中显示 都是可以的

8.IntelliJ IDEA 设置代码提示或自动补全的快捷键
在左侧的导航框中点击 KeyMap –> Main menu –> Code –> Completion. 
接着需要做两件事: 
    1. 移除原来的Cycle Expand Word 的 Alt+斜杠 快捷键绑定。 
    2. 在 Basic 上点击右键,去除原来的 Ctrl+空格 绑定,然后添加 Alt + 斜杠 快捷键。

9 设置IDEA启动的时候不打开(上次最后关闭的)工程文件:Settings->Appearance&Behavior->System Settings去掉Reopen last project on startup..
在用eclipse发布web项目时,lib下的jar包也会发布的,
在用idea发布时.lib(即使不放到lib里也可打到jar包里,maven打包的厉害之处,不过还是建议放到lib里)也会发布,D:\workspace\out\artifacts\hello_war_exploded\WEB-INF\lib

10.Settings -> Editor -> General -> Code Completin 点击Case sensitive completion后面的选择框,选中None,,使智能提示忽略大小写

11.取消单行注释的斜杠在首列:
Settings->Editor->Code Style->Java->Code Generation->Comment Code->Line comment at first column

12editor-File Encodings 设置3处都为utf-8

idea可以自动优化导入包,但是有多个同名的类调用不同的包,必须自己手动Alt+Enter设置

idea使用指南_第26张图片

 

13设置自动导包 auto import打钩如下两个选项  
Optimize imports on fly:这个其实和快捷键Ctrl+Shift+O,就是把不用的声明移除掉。如类头粘一个import com.alibaba.fastjson.JSON; 下面没用到就会自动移除

Add unambiguous imports on the fly:这个就是自动导入功能了,当你输入类名后,声明就被自动导入了(但是当有几个同名的包,idea就处理不了,也就不会给你自动导包,需要你alt+enter手动导包)。

你打开一个别人写的文件,可能会因为你设置了自动导包, 类会又白色变为蓝色(即删除了无用的包, 此类便进行了修改)

14.IDEA 编辑器右边竖线怎么取消呢?edit--appearance--show right margin前面的勾去掉


新建的java文件夹是source folder(蓝色),而resources文件夹是resources folder(右下角是四个黄色段杠)


将keymap设置为eclipse的快捷键,就可以用之前eclipse的快捷键开发了F6单步等

Chrome控制台Network,如何批量搜索 Response 的内容?
1、保存为har(Save as HAR with content)www.winneryun.com.har,不用全选,随便选个保存后都是当前列
表中的所有文件。
2、保存好的har是一个json格式,随便找个喜欢的编辑器,搜索就行了。{
        "startedDateTime": "2018-04-03T02:42:02.077Z",
          "content": {
            "size": 62606,
            "mimeType": "application/json",
            "compression": -117,
            "text": "{\"AllIndexModels\":[,\"description\":\"统计周期内进入商业场所的顾客数量\",
                  \"indexName\":\"客流量\",\"date\":\"1130435

 

itar 生成普通for循环遍历数组

idea使用指南_第27张图片


iter 生成增强for循环

itli 生成List的遍历(如下)

for (int i = 0; i < list.size(); i++) {
   Object o =  list.get(i);
   
}

itar 生成array的遍历

  1. for (int i = 0; i < array.length; i++) {  
  2.              = array[i];  
  3.               
  4.         }  

alt+f10  show execution point 显示执行断点所在行

在js中直接敲  fun 回车 自动生成如下,你只需填写 方法名(就会替换默认的方法名f)

 

function f() {
    
}

在js中直接敲 $(fun)  连续回车2次  就可以生成 jsp加载时执行的方法

$(function () {
    
})

虽然在project structure的jdk和language level 对所有项目都设置为8,但对common-core项目的 language level并没有设置为8,还是之前的5,导致diamond运算不支持报错

idea使用指南_第28张图片

idea使用指南_第29张图片

idea使用指南_第30张图片

 

你可能感兴趣的:(工具使用)