zoukankan      html  css  js  c++  java
  • IntelliJ IDEA

    前置

    我使用的是 Ultimate IntelliJ IDEA 2021.2.1(学生特权)

    JVM、JRE、JDK 之间的关系

    JDK(java development kit)

    JDK 是 Java 开发工具包,是整个 Java 的核心,包括了 Java 运行环境 JRE、Java 工具和 Java 基础类库

    JRE(java runtime environment)

    JRE 是 Java 的运行环境,包括 JVM 标准实现及 Java 核心类库

    JVM(java virtual machine)

    JVM 是 JAVA 虚拟机,是整个 JAVA 实现跨平台的最核心的部分,能够运行以 Java 语言写作的软件程序

    三者的关系:

    JDK = JRE + 其他

    JRE = JVM + 其他

    参考文章

    java 各发行版本

    现在最新版本是 Java SE 17,而以往的版本如下:

    JDK 与 Java SE/EE/ME 的区别

    Java SE(Java Platform,Standard Edition)

    Java SE 以前称为 J2SE。它允许开发和部署在桌面、服务器、嵌入式环境和实时环境中使用的 Java 应用程序。Java SE 包含了支持 Java Web 服务开发的类,并为 Java Platform,Enterprise Edition(Java EE)提供基础。

    Java EE(Java Platform,Enterprise Edition)

    这个版本以前称为 J2EE。企业版本帮助开发和部署可移植、健壮、可伸缩且安全的服务器端 Java 应用程序。Java EE 是在 Java SE 的基础上构建的,它提供 Web 服务、组件模型、管理和通信 API,可以用来实现企业级的面向服务体系结构(service-oriented architecture,SOA)和 Web 2.0 应用程序。

    Java ME(Java Platform,Micro Edition)

    这个版本以前称为 J2ME。Java ME 为在移动设备和嵌入式设备(比如手机、PDA、电视机顶盒和打印机)上运行的应用程序提供一个健壮且灵活的环境。Java ME 包括灵活的用户界面、健壮的安全模型、许多内置的网络协议以及对可以动态下载的连网和离线应用程序的丰富支持。基于 Java ME 规范的应用程序只需编写一次,就可以用于许多设备,而且可以利用每个设备的本机功能。

    三者的区别:

    Java SE 是做电脑上运行的软件

    Java EE 是用来做网站的【我们常见的 JSP(JavaServer Pages)技术】

    Java ME 是做手机软件的

    关于 JDK

    JDK 是不区分 SE、EE、ME 的,所以你在 Oracle 的官网上只要下载 JAVA SE 对应的版本 JDK 即可

    一、关于 JAVA EE

    实际上我们开发 web 时,就应该选择 EE 的,而 JAVA EE 你只需要两个包 jsp-api.jar 和 servlet-api.jar,而这两个包是没有官方版本的。 也就是Java没有提供这两个包,只提供了一个规范。那么这两个包是谁提供的? 是 Web 容器,也就是 Tomcat、Jetty、JBos 之类的服务器提供的

    二、关于 JDK 8

    有时会有这样的一个说法,选择 JDK1.8 的版本还是 JDK8 的版本这样的,JDK1.8 的说法是很多年前遗留下来的说法,而现在我们统称的叫法是 JDK8。因此现在我们口中说的 Java SE 8.0、Java8、JDK8、JDK1.8 都是同一个东西

    现在很多公司还在用 JDK 8,甚至官方还在维护这个版本,为什么呢?根据网上查阅的资料,了解到有两点:一是向上升级有兼容性风险,二是没用重大功能的升级(升级依赖需求)

    三、JDK 文件的内容

    bin 文件夹
    Java 运行时环境 (JRE) 的实现。JRE 包括 Java 虚拟机 (JVM™)、类库和其他支持执行以 Java 编程语言编写的程序的文件。该目录还包括帮助您开发、执行、调试和记录用 Java 编程语言编写的程序的工具和实用程序

    conf 文件夹
    包含用户可配置选项的文件。可以编辑此目录中的文件以更改 JDK 的访问权限、配置安全算法以及设置可能用于限制 JDK 加密强度的 Java 加密扩展策略文件

    include 文件夹
    支持使用 Java 本机接口和 Java 虚拟机 (JVM) 调试器接口进行本机代码编程的 C 语言头文件

    jmods 文件夹
    jlink 用于创建自定义运行时的已编译模块

    legal 文件夹
    每个模块的许可证和版权文件。包括第三方通知作为 .md(markdown)文件

    lib 文件夹
    JDK 所需的附加类库和支持文件。这些文件不供外部使用

    四、JDK 开发文档

    查看 java 版本

    使用 cmd/powershell 直接输入 java,我的配置信息如下:

    java version "16.0.2" 2021-07-20
    Java(TM) SE Runtime Environment (build 16.0.2+7-67)
    Java HotSpot(TM) 64-Bit Server VM (build 16.0.2+7-67, mixed mode, sharing)
    

    IDEA 上的 jdk 版本查看

    卸载 jdk

    现在 jdk 版本更新太快,我们按照新版本需要卸载上个版本的 jdk(暂时不需要按照多个版本)可以参考这篇博客

    新建项目

    创建新项目,并在 src 中新建 com.xiaotuan 包,又在其中新建 HelloWorld 类,并写入输出 HelloWorld 的代码,布局如下:

    PS:以下内容从网上和官网东拼西凑写出来的,不具有参考性!!

    .idea 区域(建议隐藏)

    .idea 存放项目的配置信息,包括历史记录,版本控制信息等
    .xml 存放项目结构设置与其他项目文件,用于标记电子文件使其具有结构性的标记语言

    .gitgnore
    告诉 Git 哪些文件不需要添加到版本管理中

    misc.xml
    若选择共享 URL 选项以允许团队中的其他成员访问服务器,服务器 URL 及其类型将保存到 misc.xml 文件中,可通过版本控制在开发团队成员之间共享

    modules.xml
    如果要更改 IntelliJ IDEA 中现有项目的 IML 文件位置,则需要修改 modules.xml 文件

    runConfigurations.xml
    根据代码所示推断出 value 是安卓工具的撰写预览运行配置生成器,那这个文件就和安卓相关

    workspace.xml
    带有个人设置的文件,当项目置于版本控制之下时,此文件自动移动到被忽略文件的列表中,以避免与其他开发人员的设置发生冲突

    out 区域

    里面含有编译后的 .class 文件,点击文件也可以二进制反编译成源文件

    src 区域

    全称 sourcefolder,项目源代码的意思,里面也放着项目源代码的包和类等

    TEST_IDEA.iml

    .iml 是 intellij idea 的工程配置文件,里面是当前 project 的一些配置信息

    External Libraries 区域

    本地的外部库,平时 import 的就是它

    IntelliJ IDEA 官方文档

    美化 IDEA

    1. 汉化
    2. 添加背景
    3. 敲代码粒子特效(不过开了会特卡)
    4. 彩虹括号

    成果:(背景是我大女儿露西亚,这 TM 也太好看了吧!!)

    对项目打包

    1. 对项目创建 jar 文件【B站视频
    2. cmd 运行 java -cp TEST_IDEA.jar com.xiaotuan.HelloWorld,出现 HelloWorld!

    一些感悟:

    1. 现在的 JDK 真是下载简单,配置又简单(赶上好时代叻!),根本不用自己配置环境变量,就可以在终端运行 java 指令【原理是软件下载时,自动在系统变量中添加了一个 Path = C:Program FilesCommon FilesOracleJavajavapath,指向你下载安装的位置】
    2. 现在大三上,学的可谓是比较如鱼得水,要是换做大一或大二,可能就没这么顺利了,所以时间真的可以增加一个人的编程素养(况且这也是一个百花齐放的时代,学啥都顺)

    实时代码模板(Live Templates)

    常用模板:

    1. psvm main()方法声明
    2. sout 将一个字符打印到 System.out

    PS:可自定义模板(感觉比 VScode 还好用)

    文件和代码模板

    视频介绍了创造 .class 文件时署名的用法,但还有其他很多用法,也挺好用的

    后缀补全

    用法与实时代码模板类似,但主要作用于变量

    配置 Maven

    Maven 从官网下载,我选择的是:apache-maven-3.8.3-bin.tar.gz

    Maven 运行环境与版本信息

    关于运行环境,虽然 java 本身运行不需要,但是 maven 运行需要的一个配置如下:

    JAVA_HOME = D:java17

    再结合 maven 本身需要的配置:

    MAVEN_HOME = D:mavenapache-maven-3.8.3-binapache-maven-3.8.3

    同时加入 PATH 中:

    PATH = %JAVA_HOME%/bin;%MAVEN_HOME%/bin;

    使用 cmd/powershell 直接输入 mvn -version,我的配置信息如下:

    Apache Maven 3.8.3 (ff8e977a158738155dc465c6a97ffaf31982d739)
    Maven home: D:mavenapache-maven-3.8.3-binapache-maven-3.8.3
    Java version: 17, vendor: Oracle Corporation, runtime: D:java17
    Default locale: zh_CN, platform encoding: GBK
    OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"
    

    配置 Maven 本地仓库与镜像

    参考文章

    下面是我对 conf 文件夹下 settings.xml 文件的更改
    PS:文件中的 JDK 不用修改,默认即可

    <!--本地仓库-->
    <localRepository>D:maven
    epository</localRepository>
    
    
    <!--镜像-->
    <mirror>
      <id>alimaven</id>
      <mirrorOf>central</mirrorOf>
      <name>aliyun maven</name>
      <url>https://maven.aliyun.com/repository/central/</url>
    </mirror>
    

    最后用命令 mvn help:system 查看 maven 相关的系统信息(顺便初始化本地仓库)

    好用的快捷键

    1. 双击 SHIFT 键,出现搜索栏,可搜索一切
    2. CTRL + SHIFT + F10 运行代码
    3. ALT + / 代码补全
    4. ALT + insert 自动生成构造方法
    5. CTRL + SHIFT + ENTER 补全结尾
    6. CTRL + j 自动代码生成模板
    7. ALT + ENTER 导包或者修正已经导入的包
    8. CTRL + ALT + l 格式化代码
    9. CTRL + ALT + i 代码自动缩进
    10. CTRL + e 显示最近编辑的文件
    11. CTRL + p 方法参数提示
    12. CTRL + ALT + t 把选中的代码放入 if 等语句里面
    13. CTRL + y 删除行
    14. CTRL + d 复制行
    15. CTRL + w 自动选中
    16. ALT + ↑/↓ 移动光标到上/下方法
    17. CTRL + n 查找类
    18. CTRL + SHIFT + n 查找文件
    19. CTRL + r 文本替换
    20. CTRL + / 注释
    21. CTRL + SHIFT + / 多行注释
    喜欢划水摸鱼的废人
  • 相关阅读:
    C winpcap 网络抓包 并获取IP TCP 协议的相关信息
    python基础
    k8s部署测试实例
    node节点的部署
    k8s集群之master节点部署
    k8s集群之Docker安装镜像加速器配置与k8s容器网络
    k8s集群部署之环境介绍与etcd数据库集群部署
    docker存储管理
    docker 镜像仓库的安装与使用
    docker 镜像管理
  • 原文地址:https://www.cnblogs.com/CourserLi/p/15392684.html
Copyright © 2011-2022 走看看