详解STS(SpringToolSuite)常用设置大全
STS常用设置详解
下载STS:从Spring官网下载:https://spring.io/tools
STS(Spring Tool Suite)和Eclipse的功能和使用方式大致相同,只是STS更适用于SpringBoot,掌握常用设置(快捷键、类和方法注释等),能大大提高开发效率。
一.快捷键类设置
首先讲一下快捷键,设置入口“Window —> Preferences —> General —> Keys”,也可以直接输入Keys查找
1.1、STS常用快捷键
- 【ALT+/】:代码提示、补全。
- 【Ctrl+O】:显示类中方法和属性的大纲,能快速定位类的方法和属性,在查找Bug时非常有用。
- 【Ctrl+/】 :快速添加注释,能为光标所在行或所选定行快速添加注释或取消注释。
- 【Ctrl+D】 : 删除当前行。
- 【Ctrl+M】:窗口最大化和还原。
1.2、常用编辑快捷键
- 【Ctrl+C】:复制。
- 【Ctrl+X】:剪切。
- 【Ctrl+V】:粘贴。
- 【Ctrl+S】:保存文件。
- 【Ctrl+Z】:撤销。
- 【Ctrl+Y】:重复。
- 【Ctrl+F】:查找。
- 【Ctrl+Alt+↓】: 复制当前行到下一行(复制增加) 。
- 【Ctrl+Alt+↑】 复制当前行到上一行(复制增加) 。
1.3、查找和定位快捷键
- 【Ctrl+K】、【Ctrl++Shift+K】 :快速向下和向上查找选定的内容,从此不再需要用鼠标单击查找对话框了。
- 【Ctrl+Shift+T】 :查找工作空间(Workspace)构建路径中的可找到Java类文件,而且可以使用“*”、“?”等通配符。
- 【Ctrl+Shift+R】 :和【Ctrl+Shift+T】对应,查找工作空间(Workspace)中的所有文件(包括Java文件),也可以使用通配符。
- 【Ctrl+Shift+G】 :查找类、方法和属性的引用。这是一个非常实用的快捷键,例如要修改引用某个方法的代码,可以通过【Ctrl+Shift+G】快捷键迅速定位所有引用此方法的位置。
- 【Ctrl+Shift+O】 :快速生成import(自动导包),当从网上拷贝一段程序后,不知道如何import进所调用的类,试试【Ctrl+Shift+O】快捷键,一定会有惊喜。
- 【Ctrl+Shift+F】: 格式化代码,书写格式规范的代码是每一个程序员的必修之课,当看见某段代码极不顺眼时,选定后按【Ctrl+Shift+F】快捷键可以格式化这段代码,如果不选定代码则默认格式化当前文件(Java文件)。
- 【ALT+Shift+W】: 查找当前文件所在项目中的路径,可以快速定位浏览器视图的位置,如果想查找某个文件所在的包时,此快捷键非常有用(特别在比较大的项目中)。
- 【Ctrl+L】: 定位到当前编辑器的某一行,对非Java文件也有效。
- 【Alt+←】、【Alt+→】 : 后退历史记录和前进历史记录,在跟踪代码时非常有用,用户可能查找了几个有关联的地方,但可能记不清楚了,可以通过这两个快捷键定位查找的顺序。
- 【F3】 :快速定位光标位置的某个类、方法和属性。
- 【F4】 :显示类的继承关系,并打开类继承视图。
1.4、调试快捷键
- 【Ctrl+Shift+B】:在当前行设置断点或取消设置的断点。
- 【F11】:调试最后一次执行的程序。
- 【Ctrl+F11】:运行最后一次执行的程序。
- 【F5】:跟踪到方法中,当程序执行到某方法时,可以按【F5】键跟踪到方法中。
- 【F6】:单步执行程序。
- 【F7】:执行完方法,返回到调用此方法的后一条语句。
- 【F8】:继续执行,到下一个断点或程序结束。
如果想了解更多快捷键可以在STS工具中查看快捷键:
点击上方导航栏的Help–>Show Active Keybindings… 即可查看
二、字体/编码设置
2.1、设置字体样式和大小
设置软件字体样式、字号大小, 设置入口“Window —> Preferences —> General —> Appearance —> Colors and Fonts —> Text Font” 进入 edit编辑即可,如下图:
2.2、设置编码提示
设置智能提示,在提示触发条件中设置字符内容
2.3、设置代码行宽
设置字体换行数
设置好每行最大宽度,然后应用即可
2.4、设置程序字符编码
设置字符编码
2.5、设置文件、类、函数注释模板
需要一个一个的加的
下面详细列出每一个子项的模板格式:
Comments–>Files(Java文件注释)
1. /**
2. * Project Name:${project_name}
3. * File Name:${file_name}
4. * Package Name:${package_name}
5. * Date:${date}${time}
6. * Copyright (c) ${year}, taoge@tmd.me All Rights Reserved.
7. *
8. */
Comments–>Types(Java类注释)
1. /**
2. * ClassName: ${type_name} <br/>
3. * Function: ${todo} ADD FUNCTION. <br/>
4. * Reason: ${todo} ADD REASON(可选). <br/>
5. * date: ${date} ${time} <br/>
6. *
7. * @author ${user}
8. * @version ${enclosing_type}${tags}
9. * @since JDK 1.8
10. */
Comments–>Fields(类字段注释)
1. /**
2. * ${field}:${todo}(用一句话描述这个变量表示什么).
3. * @since JDK 1.8
4. */
Comments–>Constructors(构造函数注释)
1. /**
2. * Creates a new instance of ${enclosing_type}.
3. *
4. * ${tags}
5. */
Comments–>Methods(Java方法注释)
1. /**
2. * ${enclosing_method}:(这里用一句话描述这个方法的作用). <br/>
3. * ${todo}(这里描述这个方法适用条件 – 可选).<br/>
4. * ${todo}(这里描述这个方法的执行流程 – 可选).<br/>
5. * ${todo}(这里描述这个方法的使用方法 – 可选).<br/>
6. * ${todo}(这里描述这个方法的注意事项 – 可选).<br/>
7. *
8. * @author ${user}
9. * ${tags}
10. * @since JDK 1.8
11. */
Comments–>Overridingmethods(重写方法注释)
1. /**
2. * ${todo} 简单描述该方法的实现功能(可选).
3. * ${see_to_overridden}
4. */
Comments–>Delegatemethods(代理方法注释)
1. /**
2. * ${tags}
3. * ${see_to_target}
4. */
Comments–>Getters(Java Getter方法注释)
1. /**
2. * ${bare_field_name}.
3. *
4. * @return the ${bare_field_name}
5. * @since JDK 1.8
6. */
Comments–>Setters(Java Setters方法注释)
1. /**
2. * ${param}.
3. *
4. * @param ${param} the ${bare_field_name} to set
5. * @since JDK 1.8
6. */
Code–>New Javafiles(新建java文件代码模板)
1. /**
2. * Project Name:${project_name}
3. * File Name:${file_name}
4. * Package Name:${package_name}
5. * Date:${date}${time}
6. * Copyright (c) ${year}, taoge@tmd.me All Rights Reserved.
7. *
8. */
9. ${filecomment}
10.
11.${package_declaration}
12./**
13. * ClassName:${type_name} <br/>
14. * Function: ${todo} ADD FUNCTION. <br/>
15. * Reason: ${todo} ADD REASON. <br/>
16. * Date: ${date} ${time} <br/>
17. * @author ${user}
18. * @version
19. * @since JDK 1.8
20. * @see
21. */
22.${typecomment}
23.${type_declaration}
Code–>Methodbody(方法体模板)
1. // ${todo} Auto-generated method stub
2. ${body_statement}
Code–>Constructorbody(构造函数模板)
1. ${body_statement}
2. // ${todo} Auto-generated constructor stub
Code–>Getterbody(字段Getter方法模板)
1. return ${field};
Code–>Setterbody(字段Setter方法模板)
1. ${field} = ${param};
Code–>Catchblock body(异常catch代码块模板)
- // ${todo} Auto-generated catch block
- ${exception_var}.printStackTrace();
三.创建SpringBoot项目的三种方法
3.1、使用STS创建SpringBoot项目
ctrl+n创建Spring Starter Project项目
选择对应springboot版本, 然后点击finish完成
3.2、使用STS创建Maven项目,再将已有的SpringBoot复制进去
3.2.1.记得勾选简单骨架
3.2.2.补充即可
3.2.3.将已有的SpringBoot项目子目录复制过去。例如:
然后把pom.xml的内容也复制过去就ok了。
3.3、网页创建
登录https://start.spring.io/
其实和STS内创建的目录结构相似
当创建完成好在STS内导入即可,不过这种方式创建的目录结构不是完整的,导入时选择maven方式帮忙补充结构