技术标签: java Java基础 intellij-idea ide
Eclipse IBM公司开发
IDEA是JetBrains公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主。该公司旗下还有许多其他产品,如:
IDEA 全称 IntelliJ IDEA,是java编程语言的集成开发环境。IntelliJ在业界被公认为最好的java开发工具,尤其在智能代码助手、代码自动提示、重构、JavaEE支持、各类版本工具(git、svn等)、JUnit、CVS整合、代码分析、 创新的GUI设计等方面的功能可以说是超常的。
InteliJ IDEA曾在2015年的官网上这样介绍自己:
Excel at enterprise, mobile and web development with Java, Scala and Groovy,with all the latest modern technologies and frameworks available out of the box.
简译: IntelliJ IDEA主要用于支持Java、 Scala、 Groovy 等语言的开发工具,同时具备支持目前主流的技术和框架,擅长于企业应用、移动应用和Web应用的开发。
安装插件后支持 | SQL类 | 基本JVM |
---|---|---|
PHP | PostgreSQL | Java |
Python | MySQL | Groovy |
Ruby | Oracle | |
Scala | SQL Server | |
Kotlin |
支持的框架 | 额外支持的语言代码提示 | 支持的容器 |
---|---|---|
Spring MVC | H5 | Tomcat |
GWT | CSS3 | TomEE |
WebServices | SASS | WebLogin |
JSF | LESS | Jetty |
Hibernate | Node.js |
IDEA 分为两个版本:旗舰版(Ultimate)和社区版(Community)。
该处提供了不同操作系统下的不同版本的安装文件
两个不同版本的详细对比,可以参照官网:versions compare
建议配置:内存8G或以上,CPU最好 i5 以上,最好安装块固态硬盘(SSD),将IDEA安装在固态硬盘上,这样流畅度会加快很多
操作系统:Microsoft Windows 10/8/7/Vista/2003/XP (32 or 64 bit)
从安装上来看,IntelliJ IDEA 对硬件的要求似乎不是很高。可是在实际开发中其实并不是这样的,因为 IntelliJ IDEA 执行时会有
大量的缓存、索引文件
,所以如果你正在使用 Eclipse / MyEclipse,想通过 IntelliJ IDEA 来解决计算机的卡、慢等问题,这基本上是不可能的,本质上你应该对自己的硬件设备进行升级
首次启动,会弹出如下的对话框。选择不导入已有的设置
tips:软件激活请自行百度
这里根据个人喜好,进行选择,也可以选择跳过(skip all and set defaults)。后面在settings 里也可以再设置主题等。这里选择:Next:Default plugins
设置 IDEA 中的各种插件,可以选择自定义设置、删除,或者安装本身不存在的插件(比如:支持 Scala 的插件)。这里不设置,后面也可以通过界面菜单栏的 settings 进行设置
此处选择 New Project,需要明确一下概念:
IntelliJ IDEA 没有类似 Eclipse 的工作空间的概念(Workspaces),最大单元就是Project。这里可以把 Project 理解为 Eclipse 中的 Workspace
选择指定目录下的 JDK 作为 Project SDK,选择 jdk 的安装路径所在位置:
点击 OK 以后,选择 Next:
此处无需勾选。选择 Next,进入下一个页面:
给创建的工程起一个名字,点击 Finish即可
工程下的 src 类似于 Eclipse 下的 src 目录,用于存放代码
工程下的.idea 和 project01.iml 文件都是 IDEA 工程特有的。类似于 Eclipse 工程下的.settings、.classpath、.project 等
接着在 src 目录下创建一个 package:
在包下 new-class:
不管是创建 class,还是 interface,还是 annotation,都是选择 new – java class,然后在下拉框中选择创建的结构的类型。
接着在类 HelloWorld 里声明主方法,输出 helloworld,完成测试
tip:在IDEA中,编写完代码,不用点击保存。IDEA会自动帮助你保存代码
1、在 Eclipse 中有 Workspace(工作空间)和 Project(工程)
的概念,在 IDEA中只有 Project(工程)和 Module(模块)
的概念。这里的对应关系为:
IDEA官网说明:
An Eclipse workspace is similar to a project in IntelliJ IDEA
An Eclipse project maps to a module in IntelliJ IDEA
翻译:
Eclipse中 workspace 相当于 IDEA 中的Project
Eclipse中 Project 相当于 IDEA 中的Module
这也是初学者刚接触IDEA时理不清它们之间关系的原因
2、从 Eclipse 转过来的人总是下意识地要在同一个窗口管理 n 个项目,这在IntelliJ IDEA 是无法做到的。IntelliJ IDEA 提供的解决方案是打开多个项目实例,即打开多个项目窗口。即:一个 Project 打开一个 Window 窗口
3、在 IntelliJ IDEA 中 Project 是最顶级的级别
,次级别是 Module
。一个 Project可以有多个 Module。目前主流的大型项目都是分布式部署的,结构都是类似这种多 Module 结构
这类项目一般是这样划分的,比如:core Module、web Module、plugin Module 等等,模块之间彼此可以相互依赖。通过这些 Module 的命名也可以看出,他们之间都是处于同一个项目业务下的模块,彼此之间是有不可分割的业务关系
的
4、相比较于多 Module 项目,小项目就无需搞得这么复杂。只有一个 Module 的结构 IntelliJ IDEA 也是支持的,并且 IntelliJ IDEA 创建项目的时候,默认就是单Module 的结构的。如何创建 Module?
接着选择 Next:
之后,我们可以在 Module 的 src 里写代码,此时 Project 工程下的 src 就没什么用了。可以删掉
此时的删除,会从硬盘上将此 module 删除掉
进入项目结构:
查看对应配置:
IntelliJ IDEA 有很多人性化的设置供我们选择,也因为这些人性化的设置让那些 IntelliJ IDEA 死忠粉更加死心塌地使用它和分享它
进入设置界面:
目录结构如下:
这里默认提供了三套主题:IntelliJ,Darcula,Windows。可根据自己的喜好进行选择
插件名称:Material Theme UI
点击按钮以后,在联网环境下搜索如下的插件-安装-重启 IDEA 即可:
如果对安装的主题插件不满意,还可以找到此插件,进行卸载 – 重启 IDEA 即可
启动IDEA时,默认自动打开上次开发的项目?还是自己手动选择?
如果去掉Reopen last project on startup前面的对勾,每次启动IDEA就会出现如下界面:
默认会自动检查更新,建议检查IDE更新的√去掉,检查插件更新的√勾选上
勾选此设置后,按住 Ctrl + 鼠标滚轮 快捷键来控制代码字体大小显示
在打开很多文件的时候,IntelliJ IDEA 默认是把所有打开的文件名 Tab 单行显示的。多行效率比单行高,因为单行会隐藏超过界面部分 Tab,不方便寻找文件
如果当前主题不希望使用默认字体、字体大小、字体行间距,还可单独设置:
tip:Transparent native-to-ascii conversion 主要用于转换 ascii,一般都要勾选,不然 Properties 文件中的注释显示的都不会是中文
构建就是以我们编写的 java 代码、框架配置文件、国际化等其他资源文件、JSP 页面和图片等资源作为“原材料”,去“生产”出一个可以运行的项目的过程
Intellij Idea 默认状态为不自动编译状态,Eclipse 默认为自动编译,很多朋友都是从 Eclipse 转到 Intellij 的,这常常导致我们在需要操作 class 文件时忘记对修改后的 java 类文件进行重新编译,从而对旧文件进行了操作
平时我们按shift切换中英文输入方式,经常被按到,总是弹出搜索框,太麻烦了。可以取消它,另一种打开它的方式快捷键(Ctrl+N)
方式1:适用于IDEA 2022.1.2及之后版本
在2022.1及之前版本中,采用如下方式消双击shift出现搜索框:搜索double即可,勾选Disable double modifier key shortcuts,禁用这个选项
双击shift 或 ctrl + shift + a,打开如下搜索窗口:
选择registry…,找到"ide.suppress.double.click.handler",把复选框打上勾就可以取消双击shift出现搜索
框了
它的原理就是配置一些常用代码字母缩写,在输入简写时可以出现你预定义的固定模式的代码,使得开发效率大大提高,同时也可以增加个性化。最显而易见的就是在 Java 中输入 sout 会出现System.out.println();
IDEA 提供了很多现成的 Templates。但也可以根据自己的需要创建新的Template
先定义一个模板的组:
选中自定义的模板组,点击”+”来定义模板
按照如上方式定义个测试方法,然后在 java 类文件中测试即可,可根据需求多创建几个Template!
插件1:Material Theme UI(主题插件)
插件2:GsonFormatPlus(根据 json 生成对象)快捷键:alt + s
插件3:Alibaba Java Coding Guidelines(阿里巴巴Java编码规范检查插件)
插件4:Translation(翻译)
插件5:Rainbow Brackets(彩虹括号)
插件6:CodeGlance Pro(代码缩略图)
插件7:Key Promoter X(快捷键提示)
插件8:Presentation Assistant(显示快捷键操作的按键)
插件9:jclasslib bytecode viewer(可视化字节码查看器)使用方式:idea中打开“view” 菜单,选择“Show Bytecode With jclasslib” 选项
插件10:JavaDoc(文档注释)使用方式:idea中按 alt+insert ,执行操作
文章浏览阅读3k次,点赞3次,收藏13次。root@server ~]# vim /etc/named.rfc1912.zones #添加如下内容,也可直接更改模板。[root@server ~]# vim /etc/named.conf #打开主配置文件,将如下两处地方修改为。注意:ip地址必须反向书写,这里文件名需要和反向解析数据文件名相同。新建或者拷贝一份进行修改。nslookup命令。_dns反向解析
文章浏览阅读2.5w次,点赞16次,收藏103次。这个函数TIM_SetCompare1,这个函数有四个,分别是TIM_SetCompare1,TIM_SetCompare2,TIM_SetCompare3,TIM_SetCompare4。位于CH1那一行的GPIO口使用TIM_SetCompare1这个函数,位于CH2那一行的GPIO口使用TIM_SetCompare2这个函数。使用stm32f103的除了tim6和tim7没有PWM..._tim_setcompare1
文章浏览阅读950次,点赞33次,收藏19次。多线程_进程和线程,并发与并行,线程优先级,守护线程,实现线程的四种方式,线程周期;线程同步,线程中的锁,Lock类,死锁,生产者和消费者案例
文章浏览阅读2.9k次。ifort 编译器的安装ifort 编译器可以在 intel 官网上下载。打开https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/fortran-compiler.html#gs.7iqrsm点击网页中下方处的 Download, 选择 Intel Fortran Compiler Classic and Intel Fortran Compiler(Beta) 下方对应的版本。我选择的是 l_在linux系统的用户目录下安装ifort和mkl库并配置
文章浏览阅读689次,点赞7次,收藏8次。些项目时需要一个生成图片的方法,我在网上找到比较方便且适合我去设置一些样式的生成方式之一就是使用Freemarker,在对应位置上先写好一个html格式的ftl文件,在对应位置用${参数名}填写上。还记得当时为了解决图片大小设置不上,搜索了好久资料,不记得是在哪看到的需要在里面使用width与height直接设置,而我当时用style去设置,怎么都不对。找不到,自己测试链接,准备将所有含有中文的图片链接复制一份,在服务器上存储一份不带中文的文件。突然发现就算无中文,有的链接也是打不开的。_ftl格式pdf的样式调整
文章浏览阅读1.5k次,点赞6次,收藏12次。拉取librealsense。_opt/ros/noetic/lib/nodelet/nodelet: symbol lookup error: /home/admin07/reals
文章浏览阅读3.4k次,点赞3次,收藏29次。一.单选题二.填空题三.判断题一.单选题静态链接是在( )进行的。A、编译某段程序时B、装入某段程序时C、紧凑时D、装入程序之前Pentium处理器(32位)最大可寻址的虚拟存储器地址空间为( )。A、由内存的容量而定B、4GC、2GD、1G分页系统中,主存分配的单位是( )。A、字节B、物理块C、作业D、段在段页式存储管理中,当执行一段程序时,至少访问()次内存。A、1B、2C、3D、4在分段管理中,( )。A、以段为单位分配,每._系统抖动现象的发生由什么引起的
文章浏览阅读2.4k次。在实际的工作生产中,零件的加工制造一般都需要二维工程图来辅助设计。UG NX 的工程图主要是为了满足二维出图需要。在绘制工程图时,需要先确定所绘制图形要表达的内容,然后根据需要并按照视图的选择原则,绘制工程图的主视图、其他视图以及某些特殊视图,最后标注图形的尺寸、技术说明等信息,即可完成工程图的绘制。1.视图选择原则工程图合理的表达方案要综合运用各种表达方法,清晰完整地表达出零件的结构形状,并便于看图。确定工程图表达方案的一般步骤如下:口分析零件结构形状由于零件的结构形状以及加工位置或工作位置的不._ug-nx工程图
文章浏览阅读920次,点赞29次,收藏18次。原文《智能制造数字化工厂智慧供应链大数据解决方案》PPT格式主要从智能制造数字化工厂智慧供应链大数据解决方案框架图、销量预测+S&OP大数据解决方案、计划统筹大数据解决方案、订单履约大数据解决方案、库存周转大数据解决方案、采购及供应商管理大数据模块、智慧工厂大数据解决方案、设备管理大数据解决方案、质量管理大数据解决方案、仓储物流与网络优化大数据解决方案、供应链决策分析大数据解决方案进行建设。适用于售前项目汇报、项目规划、领导汇报。
文章浏览阅读2w次,点赞38次,收藏102次。在服务器端,socket()返回的套接字用于监听(listen)和接受(accept)客户端的连接请求。这个套接字不能用于与客户端之间发送和接收数据。 accept()接受一个客户端的连接请求,并返回一个新的套接字。所谓“新的”就是说这个套接字与socket()返回的用于监听和接受客户端的连接请求的套接字不是同一个套接字。与本次接受的客户端的通信是通过在这个新的套接字上发送和接收数_当在函数 'main' 中调用 'open_socket_accept'时.line: 8. connection request fa
文章浏览阅读4.3k次。对象销毁对象销毁的标准语法Close和Stop何时销毁对象销毁对象时清除字段对象销毁的标准语法Framework在销毁对象的逻辑方面遵循一套规则,这些规则并不限用于.NET Framework或C#语言;这些规则的目的是定义一套便于使用的协议。这些协议如下:一旦销毁,对象不可恢复。对象不能被再次激活,调用对象的方法或者属性抛出ObjectDisposedException异常重复地调用对象的Disposal方法会导致错误如果一个可销毁对象x 包含或包装或处理另外一个可销毁对象y,那么x的Disp_c# 销毁对象及其所有引用
文章浏览阅读1.1w次。这是记录,在中项、高项过程中的错题笔记;https://www.zenwu.site/post/2b6d.html1. 信息系统的规划工具在制订计划时,可以利用PERT图和甘特图;访谈时,可以应用各种调查表和调查提纲;在确定各部门、各层管理人员的需求,梳理流程时,可以采用会谈和正式会议的方法。为把企业组织结构与企业过程联系起来,说明每个过程与组织的联系,指出过程决策人,可以采用建立过程/组织(Process/Organization,P/O)矩阵的方法。例如,一个简单的P/O矩阵示例,其中._大型设备可靠性测试可否拆解为几个部分进行测试