• Java IDE的历史变迁及idea的使用


    Java开发工具的历史变迁

    JCreator

    Jcreator是荷兰的Xinox Software公司开发的一个用于Java程序设计的集成开发环境(IDE),该公司成立于2001年;

    官方网站:http://www.jcreator.com/

     

    JBuilder

    JBuilder是Borland公司开发的针对Java的集成开发工具,该工具是收费的;

    Borland公司成立于1983年,总部位于美国加州;

    JBuilder 当时在Java集成开发工具中风靡一时,但不久后也逐步被新的工具所打败;

    2009年5月6日,英国软件商Micro Focus宣布以7500万美元现金收购Borland软件公司;

     

    eclipse

    Eclipse最初是由IBM公司开发的替代商业软件Visual Age for Java的新一代Java集成开发环境;

    2001年11月IBM将Eclipse贡献给开源社区,后来一直由非营利软件供应商联盟Eclipse基金会(Eclipse Foundation)管理,直到现在;

     

    myeclipse

    由美国Genuitec公司开发一款的基于Eclipse的Java开发集成环境,该公司成立于1997年;

    MyEclipse Enterprise Workbench于2003年的推出,该工具是收费的;

    官方网站:http://www.genuitec.com/

    MyEclipse,是在eclipse基础上加上自己的插件开发而成的功能强大的企业级Java集成开发环境,主要用于Java、Java EE以及移动应用的开发;

    MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源框架和技术支持相当不错;

     

    netbeans

    NetBeans是Sun公司(2009年被甲骨文收购)在2000年创立的开放源代码的供开发人员开发Java程序的集成开发环境;

    NetBeans是一个始于1997年的一个大学学生计划,该计划后来发展成立了一家公司,进而推出一个商用版本的NetBeans;

    1999年Sun公司收购了此公司,并于2000年6月将NetBeans作为开源项目对外发布;

     

    Intellij IDEA

    IntelliJ IDEA简称IDEA,它是 JetBrains 公司下的Java集成开发环境,在业界被公认为是最好的Java开发工具之一;

    JetBrains是捷克的一家软件公司,该公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主,旗下开发了多款软件开发工具;

    官方网站:https://www.jetbrains.com/

    Intellij IDEA工具已经有很长的历史了,2001年1月发布IntelliJ IDEA 1.0版本,只是一直没有被大量使用;

    IntelliJ IDEA以前是收费软件,不过在2009年以后开始推出了免费的社区开源版本;

    目前IntelliJ IDEA有免费的社区版(功能相对较少),和收费的旗舰版(功能比较全面);

     

    JetBrains下的产品

    IntelliJ IDEA

    主要是针对 Java 的集成开发工具;

    AppCode

    主要针对 Objective-C / Swift 的集成开发工具;

    CLion

    主要针对 C / C++ 的集成开发工具;

    GoLand

    主要是针对 Go 语言的集成开发工具;

    PhpStorm

    主要是针对 PHP 的集成开发工具;

    PyCharm

    主要是针对 Python 的集成开发工具;

    RubyMine

    主要是针对 Ruby 的集成开发工具;

    WebStorm

    主要是针对 JavaScript、HTML5、CSS3 等前端技术的集成开发工具;

    Rider

    主要是针对 .net 的集成开发工具;

    DataGrip

    主要是数据库可视化的连接和操作工具;

     

    Idea的特点

    IntelliJ IDEA 主要用于支持 Java 语言的开发工具,支持目前几乎所有的主流技术和框架,擅长于企业应用、移动应用和 Web 应用的开发;

    IntelliJ IDEA 非常地人性化、智能化,可自我定制,开发效率极高;

     

    Idea版本

    IntelliJ IDEA 分为“旗舰版”和“社区版”;

    旗舰版(Ultimate Edition)为收费版本,功能强大,有30天免费试用期;

    社区版(Community Edition)为免费版本,功能较旗舰版少了很多,可一直免费使用;

    一般地,IntelliJ IDEA 大版本为一年迭代一次,大版本下的小版本迭代时间不固定,快则一个月,慢则两至三月迭代一次;

    目前最新版本为:IntelliJ IDEA 2018.2.4

     

    Idea使用前置说明

    1、由于Idea在亚洲没有设服务器,所以在使用idea过程中,比如访问插件库、更新版本等操作时可能出现一些问题,这是由于网络问题导致的;

    2、Idea 对硬件的基础要求虽然不是很高,但在实际的开发中,特别是开发大型 Java Web 项目时,2G 内存基本上不够用,4G内存可以使用,就是会比较卡顿,最好是 8G 内存或是以上;

    3、Idea与eclipse在使用上有一些区别,我们需要转化思维,不能按照eclipse的方式去学习Idea;

    4、由于我们一直以来习惯了eclipse,所以我们在学习idea的时候,可能有一段时间不适应,甚至产生放弃的念头,这也是正常的,坚持几天就好了;

     

    Idea的下载安装

    官方网站下载:https://www.jetbrains.com/

    Idea的下载包有两种格式:一个是exe的安装版,一个是zip的解压缩版;

    exe格式的安装版需要安装,而zip格式的解压缩版不需要安装,直接解压即可使用;

    推荐使用zip的解压缩版,直接解压即可使用,方便;

     

    Idea目录结构

    Idea解压后的目录结构如下:

     

    bin 是 IDEA 的可执行程序目录;

    help 是 IDEA 的帮助文件目录;

    jre32 是IDEA自带的32位JRE环境;

    jre64 是IDEA自带的64位JRE环境,故IDEA可在未安装 JDK 的计算机上进行Java语言的开发;

    lib 是IDEA依赖的库文件目录,里面有很多的 Jar 文件;

    license 是 IDEA 的许可证文件目录;

    plugins 是IDEA的插件目录;

    redist 是IDEA中索引机制所依赖的redist库目录;

    两个 .txt 说明文件和一个注册表文件;

     

    Idea启动运行

    如果电脑是32位,则双击idea.exe启动运行idea,如果是64位则双击idea64.exe启动运行;

    1、让你选择是否导入已经存在的旧配置信息;

    2、让你选择Idea的主题颜色;

    3、设置支持的框架,可以自定义,没有选择的将不支持,但可以后面在插件一栏中再加上;

    4、进入Idea创建Project界面;

    命令 Create New Project 创建一个新项目;

    命令 Import Project 导入一个已有项目;

    命令 Open 打开一个已有项目;

    命令 Check out from Version Control 可以通过服务器上的项目地址 Checkout Github 上面项目或是其他 Git 托管服务器上的项目;

    注:Idea启动后默认会在C:Users电脑用户名.IntelliJIdea2017.3用户目录下创建配置和缓存索引信息目录;

     

    创建Project

    通常第一次使用idea,我们会选择创建一个project;

    第一次启动使用idea,这里创建的project实际上等价于创建一个工作空间,所以我们通常选择创建一个空的project;

     

    Project与Mudoule

    IntelliJ IDEA 是没有类似 Eclipse 的工作空间的概念(workspaces ),Idea最大单元就是 Project;

    如果你想同时打开多个项目,IntelliJ IDEA 提供的解决方案是打开多个项目实例,也就是打开多个Idea,也就是启动多个idea,这样的话,当然不是很方便;

    所以,我们要在一个idea中看多个项目,则通过创建一个空的project作为工作空间,然后在该空的project下创建多个module作为我们的项目工程;

     

    Idea的界面介绍

    菜单栏

     

    工具条

    导航条

    左侧导航区域

    中间编辑操作区域

    右侧导航区域

    底部导航区域

     

     

    -----------------------------------idae 的应用-------------------------------------------

    创建Java项目

    建议在一个空的Project下创建我们的Java项目,也就是说我们在一个空的Project下创建一个Java module;

    方式:在菜单栏File-->New-->Module-->Java

     

    项目配置说明

    .iml为模块module的配置文件;

    .idea为工程Project的配置文件;

    IntelliJ IDEA 是一个没有 Ctrl + S (保存)的 IDE,所以每次修改完代码你只管运行或调试即可,无需担心保存或者丢失代码问题;

    虽然IntelliJ IDEA不需要按Ctrl + S 保存代码,但对于代码的错误检查也是实时的,无需担心代码编译问题;

    如果需要整体编译项目,则需要手动build一下;

    在菜单栏File-->project结构下设置sdk,紧接着还可以设置语言级别,java8还是java9等,当然sdk选择要和语言级别选择保持版本一致;

     

    Idea字体编码设置

    通过菜单中的 File -->Settings 进行设置(IntelliJ IDEA基本所有设置都在该菜单下);

    字体设置

    主题的字体一般不建议修改,主题就是指整个Idea工具;

    代码开发的编辑器的字体建议修改,在Editor下的Font选项修改,建议18号字;

    编码设置

    文件编码及工程编码设置,在Editor下的File Encodings选项进行修改,建议全部改为UTF-8;

     

    Java项目打jar包

    在菜单栏File-->Project Structure

    1、配置Module的依赖,在右侧Dependencies下添加该Java项目依赖的第三方jar(如果没有不用添加);

    2、配置Artifacts,在中间区域选择添加+符号-->从模块和依赖,选择模块和主类,选择拷贝到输出目录;

    3、在菜单栏Build-->Build Artifacts... 选择刚才创建的Artifact,点OK将在输出目录下生成jar文件;

     

    创建web项目

    创建一个Module

    选择Java Enterprise,选择Java EE8(或者Java EE 7/6),选择创建web.xml (此处有小bug,可能web.xml不能出现)

     

    配置tomcat

    在菜单栏 run-->Edit Configurations下设置,可以设置tomcat,端口,jvm等,可以配多个tomcat;

    启动tomcat,点击绿色三角形箭头即可;

    停止tomcat点击红色方形的按钮,停止按钮点击后有可能没有停止,通常会出现一个骷髅头表示没有停止,可以再点击一次;

    有时候即使点了两次,Tomcat 容器也不一定能完全停掉,这时候很容易出现端口被占用,这时候你需要打开系统的资源管理器,手动 kill 系统上所有的 Java 进程;

     

    Idea上的web部署

    通常在开发的时候,我们的web项目部署到tomcat下调试运行,进行代码的开发,

    idea开发web项目,并在idea工具中部署到tomcat下的步骤如下:

    部署tomcat前,先配置好actifacts,

    在菜单栏File -->project Structure-->Actifacts下选择添加+下的Web Application:Exploded -->From Module

    在tomcat的Deployment下添加配置的Actifacts,并设置Application context

     

    Idea打war包

    打开Project Structure

    配置Module的依赖,在右侧Dependencies下添加依赖的jar;

    配置Artifacts,在菜单栏File -->project Structure-->Actifacts下选择添加+下的Web Application:Archive -->for xxx

    在菜单栏Build-->Build Artifacts... 选择刚才创建的Artifact,点OK将在输出目录下生成war文件

     

    Idea的索引与缓存

    IntelliJ IDEA 首次加载项目的时候,都会创建索引,而创建索引的时间跟项目的文件多少成正比;在 IntelliJ IDEA 创建索引过程即使你编辑了代码也是编译不了、运行不起来的,所以建议等IntelliJ IDEA 创建索引完成后再操作;

    IntelliJ IDEA 的缓存和索引主要是用来加快文件查询,从而加快各种查找、代码提示等操作的速度;

    但是在某些特殊条件下,IntelliJ IDEA 的缓存和索引文件也是会损坏的,比如断电、强制关机等,当重新打开 IntelliJ IDEA,很可能 IntelliJ IDEA 会报各种莫名其妙错误;

    遇到此类问题,通过File-->Invalidate Cache and Restart清除缓存即可解决,一般建议点击 Invalidate and Restart,这样会比较干净;

    索引文件所在目录地址:C:Users当前登录的系统用户名.IntelliJIdea14system

    如果不用上述方法也可以删除整个 system来清除索引和缓存,当 IntelliJ IDEA 再次启动项目的时候会重新创建新的 system 目录以及对应项目缓存和索引;

     

    Idea删除项目

    idea删除项目或模块是无法物理删除的,只是逻辑上的删除,

    要真正删除则需要进入所在目录,在磁盘上手动删除;

     

    Idea代码模板设置

    IntelliJ IDEA 默认新建类自带的类注释格式一般不够友好或是规范,所以我们一般需要自己根据公司编码规范进行设置;

    菜单栏File-->Settings-->Editor-->File and Code Templates 下进行设置;

    选择不同的文件类型进行设置;

     

    实时代码模板

    在菜单栏File--Settings -->Editor 下的Live Templates下,比如输入sout即为System.out.println()打印;

    还可以自定义实时代码模板;

     

    maven设置

    在File-->Build,Execution,Deployment -->Build Tools下可以设置maven;

    可以指定 Maven安装主目录,maven的settings.xml位置和本地仓库位置;

     

    创建maven项目

    创建项目,可以选择不使用Maven提供的插件方式创建maven项目骨架,也可以选择使用比如xx-webapp,xxx-war的方式创建项目骨架;

    maven项目编译和打包,在工作空间的右侧,展示maven projects区域,在lifecycle下展开双击对应的生命周期命令即能进行对应的操作;

    maven的展开区域中还有一些功能按钮,比如可以查看jar包依赖关系等;

     

    Idea插件的使用

    IntelliJ IDEA 本身很多功能也都是通过插件的方式来实现的,IntelliJ IDEA 本身就开发了大量的插件集成到Idea工具中,也就是说Idea安装好之后就自带了很多优秀的插件;

    官网插件库:https://plugins.jetbrains.com/

    在菜单栏File -->Settings -->Plugins打开插件窗口;

    IntelliJ IDEA 对插件进行了很好的分类:

    All plugins 显示所有插件;

    Enabled 显示当前所有已经启用的插件;

    Disabled 显示当期那所有已经禁用的插件;

    Bundled 显示所有 IntelliJ IDEA 自带的插件;

    Custom 显示所有我们自行安装的插件,如果你自己装了很多次插件的话,这个选项会用得比较多;

    启用的插件是被勾选的,如果要禁用一个插件,去掉勾选即可;

    下面还有插件仓库,是idea官方提供的,可以下载安装,当然也可以从本地磁盘安装插件,浏览本地的插件文件进行安装,而不是从服务器上下载并安装;

    由于插件仓库在国外,可能会出现显示不了插件列表,或是显示了插件列表,无法下载完成安装,这时候可以多试几次或者换个时间下载安装;

     

    Idea安装MyBatis插件

    MyBatis plugin插件,但这个插件是收费插件,不能直接使用;

    Free Mybatis plugin,可以免费使用,可以用依稀这个插件;

     

    IntelliJ IDEA配置Mybatis自动代码生成

    配置一个插件:

    <build>
    
    <plugins>
    
    <plugin>
    
    <groupId>org.mybatis.generator</groupId>
    
    <artifactId>mybatis-generator-maven-plugin</artifactId>
    
    <version>1.3.6</version>
    
    <configuration>
    
    <!--配置文件的位置-->
    
    <configurationFile>src/main/resources/GeneratorMapper.xml</configurationFile>
    
    <verbose>true</verbose>
    
    <overwrite>true</overwrite>
    
    </configuration>
    
    </plugin>
    
    </plugins>
    
    </build>

    配置代码生成文件:

    <?xml version="1.0" encoding="UTF-8"?>
    
    <!DOCTYPE generatorConfiguration
    
    PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
    
    "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
    
     
    
    <generatorConfiguration>
    
    <!-- 指定连接数据库的JDBC驱动包所在位置,指定到你本机的完整路径 -->
    
    <classPathEntry location="C:/Users/jimly/.m2/repository/mysql/mysql-connector-java/5.1.44/mysql-connector-java-5.1.44.jar"/>
    
    <!-- 配置table表信息内容体,targetRuntime指定采用MyBatis3的版本 -->
    
    <context id="tables" targetRuntime="MyBatis3">
    
    <!-- 抑制生成注释,由于生成的注释都是英文的,可以不让它生成 -->
    
    <commentGenerator>
    
    <property name="suppressAllComments" value="true" />
    
    </commentGenerator>
    
    <!-- 配置数据库连接信息 -->
    
    <jdbcConnection driverClass="com.mysql.jdbc.Driver"
    
    connectionURL="jdbc:mysql://192.168.230.128:3306/p2padmin"
    
    userId="root"
    
    password="123456">
    
    </jdbcConnection>
    
    <!-- 生成model类,targetPackage指定model类的包名, targetProject指定生成的model放在eclipse的哪个工程下面-->
    
    <javaModelGenerator targetPackage="com.bjpowernode.p2p.admin.model" targetProject="src/main/java">
    
    <property name="enableSubPackages" value="false" />
    
    <property name="trimStrings" value="false" />
    
    </javaModelGenerator>
    
    <!-- 生成MyBatis的Mapper.xml文件,targetPackage指定mapper.xml文件的包名, targetProject指定生成的mapper.xml放在eclipse的哪个工程下面 -->
    
    <sqlMapGenerator targetPackage="com.bjpowernode.p2p.admin.mapper" targetProject="src/main/java">
    
    <property name="enableSubPackages" value="false" />
    
    </sqlMapGenerator>
    
    <!-- 生成MyBatis的Mapper接口类文件,targetPackage指定Mapper接口类的包名, targetProject指定生成的Mapper接口放在eclipse的哪个工程下面 -->
    
    <javaClientGenerator type="XMLMAPPER" targetPackage="com.bjpowernode.p2p.admin.mapper" targetProject="src/main/java">
    
    <property name="enableSubPackages" value="false" />
    
    </javaClientGenerator>
    
    <!-- 数据库表名及对应的Java模型类名 -->
    
    <table tableName="u_permission_info"
    
    domainObjectName="PermissionInfo"
    
    enableCountByExample="false"
    
    enableUpdateByExample="false"
    
    enableDeleteByExample="false"
    
    enableSelectByExample="false"
    
    selectByExampleQueryId="false"/>
    
    </context>
    
    </generatorConfiguration>

    配置Maven运行

    mybatis-generator:generate -e

     

    Idea中的代码调试

    F7:在 Debug 模式下,进入下一步,如果当前行断点是一个方法,则进入当前方法体内,如果该方法体还有方法,则不会进入该内嵌的方法中

    F8:在 Debug 模式下,进入下一步,如果当前行断点是一个方法,则不进入当前方法体内

    F9:在 Debug 模式下,恢复程序运行,但是如果该断点下面代码还有断点则停在下一个断点上

    Alt + F8:在 Debug 的状态下,选中对象,弹出可输入计算表达式调试框,查看该输入内容的调试结果

    查看所选对象的方法常用有三种方式:

    选中对象后,使用快捷键 Alt + F8

    选中对象后,拖动对象到 Watches

    选中对象后,鼠标悬停在对象上 2 秒左右

     

    Idea的搜索

    类的搜索

    在菜单栏的Navigate下的Class...

    文件的搜索

    在菜单栏的Navigate下的File...

    全部搜索

    在菜单栏的Edit-->Find--Find in path

    在工具条最右侧的搜索图标按钮,点击打开;

    连续按两次Shift键;

    上面所有的搜索框被调出来后,按esc键取消;

     

    Postfix Completion

    后缀自动完成:

    fori

    100.fori

    sout

    new User().sout 即可打印出user对象

    nn

    判断多少不等于null, user.nn

    return

    user.return

     

    查看类的方法和字段大纲

    打开当前类,点击左侧的结构大纲即可查看;

     

    查看类的方法调用层级

    右键该方法,Find Usages 或者按快捷键:Alt + F7

     

    Idea查看接口的实现类

    点击接口左侧的绿色圆点, 出现的列表就是该接口被实现的类;

    查看接口中方法的实现,也是点击接口方法前面的绿色圆点; (快捷键:Ctrl+Alt+B)

     

    Idea自动导入包

    在使用idea开发java项目的时候,经常需要导入jdk或者是第三方类库的类,我们知道,在Idea中导入第三方的类,通过 Alt + Enter快捷键,但是这样自己手工导入的话,非常麻烦,效率很低,Idea提供了更高效的方式;

    在菜单栏File-->Settings-->Editor-->General-->Auto Import 下设置:

    选项1,IntelliJ IDEA 将在我们书写代码的时候自动帮我们导入需要用到的包,但是对于那些同名的包,还是需要手动 Alt + Enter 进行导入;

    选项2,IntelliJ IDEA 将在我们书写代码的时候自动帮我们优化导入的包,比如自动去掉一些没有用到的包;

     

    Idea常用快捷键

    Ctrl + Y 删除光标所在行 或 删除选中的行;

    Ctrl + X 剪切光标所在行 或 剪切选择内容;

    Ctrl + F 在当前文件中进行文本查找

    Ctrl + R 在当前文件中关进行关键词替换;

    Ctrl + C 复制

    Ctrl + V 粘贴

    Ctrl + Z 撤销

    Ctrl + G 在当前文件跳转到指定的行

    Ctrl + / 注释光标所在行代码,会根据当前不同文件类型使用不同的注释符号;

    Ctrl +Shift + / 多行代码注释;

    Alt + Insert 代码自动生成,如生成对象的 set / get 方法,构造方法,toString() 等;

    Ctrl + Alt + L 格式化代码,可以对当前文件和整个包目录使用;

    Ctrl + Shift + / 代码块注释;

    Alt + Enter 导入引用的jar中的类;

    ctrl +shift + alt +j 选中当前文件中的所有相同的词或字符,可直接对其进行一次性全部修改;

    Shift + F6 重构代码,重命名等;

    Shift + Tab 代码往前缩进;

    Ctrl + Alt + O 优化导入的类,清理无用的导入;

    Ctrl + Shift + U 对选中的代码进行大/小写交替转换;

  • 相关阅读:
    typescript学习记录-联合类型(14)
    typescript学习记录-元组(13)
    typescript学习记录-Map(对象)(12)
    typescript学习记录-Array(数组)(11)
    typescript学习记录-String(10)
    typescript学习记录-Number(9)
    typescript学习记录-函数(8)重点重点
    typescript学习记录-循环(7)
    SQL注入基础知识及绕过方式
    暴力破解攻击方式及思路
  • 原文地址:https://www.cnblogs.com/f-bob/p/9772275.html
Copyright © 2020-2023  润新知