初识IDEA
一、IDEA简介
IDEA 全称 IntelliJ IDEA,是 JAVA编程语言开发的集成环境。IntelliJ 在业界被公认为最好的 java开发⼯具 之⼀,尤其在智能代码助⼿、代码⾃动提示、重构、J2EE⽀持、Ant、JUnit、CVS整合、代码审 查⽅⾯。 JetBrains官⽹ : JetBrains: Essential tools for software developers and teams
IDEA分商业版ultimate和社区版community;商业版是收费的,功能⽐较完善;社区版是 免费的,功能稍弱。
二、常用快捷键
F7 | 进方法 |
F8 | 往下执行 |
F9 | 跳过 |
shift+shift | 强大的搜索功能(搜什么都可以找到) |
Ctrl+N | 按照类名搜索类 |
Alt+Insert | 可以生成构造器/getter/setter/... |
Alt+Enter | 导入包 |
Ctrl+Alt+T | 可以把代码包在一个块内,例如:try/catch |
Ctrl+X | 删除行(直接删) |
Ctrl+D | 复制行(复制在被复制行的下一行) |
Ctrl+Y | 删除行(会弹窗再次询问) |
Ctrl+/ | 单行注释 |
Ctrl+Shift+/ | 多行注释 |
Ctrl+H | 显示类结构图(类的继承层次) |
Ctrl+Alt+B | 跳转到方法实现处 |
Ctrl+O | 重写方法 |
psvm | 生成 main 主函数 |
sout | System.out.println() |
Ctrl+Alt+L | 一件格式化代码(需关闭qq相同热键) |
Ctrl+shift+R | 全局搜索替换 |
Ctrl+R | 替换文本 |
Ctrl+F | 查找文本 |
Shift+F6 | 重构--重命名 |
Alt+left/right | 切换代码视图 |
Alt+Up/Down | 在方法间快速移动定位 |
itar | 生成 array for 代码块 |
itli | 生成 List 的遍历 |
iter | 生成增强 for循环 |
Ctrl+J | 查看更多 |
三、多模块编程
IDEA 与 eclipse 区别 ?
IDEA 与 eclipse 不同,eclipse 中有 workspace 的概念,IDEA 中没有,IDEA 的根目录就是 project ,若思想是在 IDEA 中像 eclipse 中同时操作多个 project 只能通过新建多个 module 的方式。
IDEA 取消工作空间原因 ?
IDEA 不需要工作空间,因为每一个 Project 都具备一个工作空间 ,对于每一个 IDEA 的项目工程 (project) ,它的每一个子模块 (Module) 都可以使用独立的 JDK 和 Maven 配置。这对于传统项目迈向新项目的重构添加了极大的便利性,这种多元化的灵活性正是 Eclipse 所没有的,因为 Eclipse 在初次使用时已经绑定了工作空间。
IDEA 子工程为什么叫 Module ?
其实这就是模块化的概念,作为聚合工程或者普通工程的根目录,它称为 Project ,Project 下面的子工程称为模块,每一个模块之间可以相关联,也可以不关联。
四、Maven 相较 Eclipse 在导 Jar包 方面的优势
eclipse 需要在新建项目右击-new-Folder-创建 lib 文件夹,手动找需要的 Jar包下载复制到 lib 文件夹,然后 Build Path才算导入成功,每需要一个 jar包就需要导一次,比较麻烦
IDEA 的 Maven 它是 JAVA项目的一个便携的管理工具,不需要我们手动导 jar包,它有一个 pom.xml 文件,我们只需要在 pom.xml 文件中添加相对应的 jar包 的坐标位置,它会自动在专门存放 jar包的仓库中找到 jar包(在pom.xml坐标写好后,它先去本地仓库找,找不到去私服仓库找,还找不到就去中央仓库找)自动添加,直接可以运行。
仓库
仓库:用于存储资源,包含各种 jar包。有三类仓库:
本地仓库:自己电脑的磁盘上
私服仓库:公司自己提供的仓库
中央仓库:maven默认下载的仓库地址
五、实例
创建项目,测试 pom.xml 自动导 jar包效果——是否可以连接到mySql数据库
(一)新建一个 Maven 项目
(二)选择 maven ,单击右下角 next
(三)给项目起名,选择保存路径,填写组织名称,然后 finish
Name <======> 给项目起名,随便起名(我的项目名叫 Demo001 )
选择保存路径 <======> 自己选一个磁盘固定位置专门保存 Project 文件
填写组织名称 <======> 可以用默认的,也可以自己起名
(四)项目创建成功后,会出现 pom.xml 文件打开界面
(五)添加想要的 jar包的坐标
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><!-- 注释内容 --><!-- 以下是maven项目信息 --><!-- groupId 组织名称 --><groupId>com.apesource</groupId><!-- artifactId 项目名称 --><artifactId>Demo001</artifactId><!-- version 版本 --><version>1.0-SNAPSHOT</version><!-- 添加坐标 --><dependencies><!-- 我们想要测试连接到 mySQL 数据库,我们就需要添加 mysql 的坐标 --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.28</version></dependency></dependencies></project>
注意:写多个坐标时,就在<dependencies></dependencies>中
写多个<dependency></dependency>
<dependencies>
<dependency>
<groupId>组织名称</groupId>
<artifactId>项目名称</artifactId>
<version>版本</version>
</dependency>
<dependency>
<groupId>组织名称</groupId>
<artifactId>项目名称</artifactId>
<version>版本</version>
</dependency>
</dependencies>
如何检查是否成功?
mop.xml 窗口右边有个Maven,点击找到 Demo001 项目,点击项目左侧小三角,看到 dependencies 并且不报错即导入成功!
(六)在 src 下的 main 下的 java 包中建立一个包,包里新建个测试类
我就建立了一个 com.apesource 包,com.apesource 包下有一个 test 测试类
(七)测试类写连接 mysql 的代码,并运行
package com.apesource;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;public class test {public static void main(String[] args) {try {Class.forName("com.mysql.cj.jdbc.Driver");Connection root = DriverManager.getConnection("jdbc:mysql://localhost:3306/myschoolxxx?serverTimezone=GMT", "root", "123456");System.out.println(root);} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException throwables) {throwables.printStackTrace();}}
}
代码运行结果:连接成功
相关文章:

初识IDEA
一、IDEA简介 IDEA 全称 IntelliJ IDEA,是 JAVA编程语言开发的集成环境。IntelliJ 在业界被公认为最好的 java开发⼯具 之⼀,尤其在智能代码助⼿、代码⾃动提示、重构、J2EE⽀持、Ant、JUnit、CVS整合、代码审 查⽅⾯。 JetBrains官⽹ : JetBrains: Esse…...

zigbee笔记:十、ZStack(2.3.0-1.4.0)的OSAL使用分析
zigbee笔记:九中,我们已经学会了利用模板,定制自己的个性开发工程,本文为协议栈(ZStack-CC2530-2.3.0-1.4.0)代码使用分析笔记,来进一步掌握协议栈的使用。 一、协议栈使用知识点 1、协调器、路…...

SpringBoot响应式编程(1)Reactor核心
一、概述 1.1介绍 Reactor 是一个用于JVM的完全非阻塞的响应式编程框架,Webflux 底层使用的也是该框架,其通过流的方式实现了异步相应,具备高效的需求管理(即对 “背压(backpressure)”的控制)…...

Java后端处理前端字符串与 JSON 数据:安全拼接与转义技巧
在现代 Web 开发中,前后端数据交互是家常便饭。我们经常需要处理前端传递的字符串和 JSON 数据,并在后端进行加工处理后发送到其他服务。本文将以 Spring Boot 为例,探讨如何安全地拼接字符串和 JSON 数据,并介绍如何避免 JSON 特…...

一文搞懂bfs,dfs和高级图算法
你以为BFS(广度优先搜索)和DFS(深度优先搜索)这两种基础算法,简单到小学数学就能搞定?但真的是这样吗?很多人都这么认为,但真的对吗?今天,我们不只是走马观花…...

【Rust光年纪】Rust异步编程利器:异步DNS、高性能Web服务器一网打尽
构建高效网络应用必备:解读Rust异步编程神器 前言 Rust 是一种快速流行的系统编程语言,它以其内存安全和并发性能而闻名。在 Rust 生态系统中,有许多优秀的库和框架可以帮助开发者构建高性能、可靠的应用程序。本文将介绍几个在 Rust 中备受…...

04学生管理系统(栈)
文章目录 预处理菜单结构体主函数函数声明栈操作功能实现 预处理 #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> #include<windows.h> #include<conio.h>#define OVERFLOW -2 #define FALSE 0 #define TRUE 1 #define OK 1 …...

我们如何在centos上部署批量管理工具ansible
1)我们先准备环境、设备 #我们准备一台服务机 (192.168.61.140) #然后准备几天客户机(192.168.61.141 192.168.61.142)这里我们准备两台2)然后我们在客服务机里面添加域名 vi /etc/hosts #添加如下内容 192.…...

如何评估前端代码审查培训计划的有效性?
评估前端代码审查培训计划的有效性可以通过以下方法: 培训前后测试: 在培训前后对学员进行测试,比较结果以评估知识增长。 学员反馈: 通过问卷调查、访谈或开放式反馈收集学员对培训内容、方式和效果的看法。 参与度:…...

使用nvm切换Node.js版本
一、安装nvm nvm(Node Version Manager)是一个用于管理Node.js版本的工具,它允许你在同一台机器上安装和切换多个Node.js版本。 1.安装nvm https://github.com/coreybutler/nvm-windows 访问以上链接到github去下载 点击releases 下载下图…...

x264 编码器 PSNR算法源码分析
PSNR PSNR(Peak Signal-to-Noise Ratio,峰值信噪比)是一种常用的图像质量评价指标,用于衡量图像或视频的清晰度和质量。PSNR是基于信号的最大可能功率与影响信号的噪声功率之间的比率。在图像处理领域,PSNR通常用来评估图像压缩或图像增强算法的效果。 PSNR的计算公式是…...

开源web版3D展示工具Online3DViewer
Online3DViewer是一个免费且开源的Web解决方案,它允许用户在浏览器中直接预览和探索3D模型。 以下是关于Online3DViewer的详细介绍: 一、基本概述 定义:Online3DViewer是一个在线3D模型查看器,支持多种3D文件格式,用…...

白骑士的Matlab教学实战项目篇 4.2 信号与图像处理项目
系列目录 上一篇:白骑士的Matlab教学实战项目篇 4.1 数据分析与可视化 信号处理和图像处理是 MATLAB 的重要应用领域,广泛应用于医学、工程、科学研究等领域。以下内容将介绍信号滤波与频域分析、图像增强与分割的基本概念和方法,并通过一个…...

复现、并改进open-mmlab的mmpose详细细节
复现open-mmlab的mmpose详细细节 1.配置环境2.数据处理3.训练4.改进mmpose4.1 快速调试技巧4.2 快速定位4.3 改进backbone4.3.1 使用说明4.3.2 改进案例4.3.2.1 复现mmpose原配置文件4.3.2.2 复现开源项目4.3.2.3 修改配置文件4.3.2.4 修改新模型 4.4 添加auxiliary_head4.4.1 …...

编写兼容Python2.x与3.x代码
编写兼容Python2.x与3.x代码 当我们正处于Python2.x到Python3.x的过渡期时,你可能想过是否可以在不修改任何代码的前提下能同时运行在Python2和3中。这看起来还真是一个合理的诉求,但如何开始呢?哪些Python2代码在3.x解释器执行时容易出状况…...

比特币8.12学习问题
疑问:什么是过滤,什么是offset 没有投钱的情况下,怎么用api 公式:单币分配金额 总资金 / 2/ offset/选币数量,其中2 表示多空 买入滑点(Slippage)是指在执行交易订单时,实际成交…...

解析 Vue 中的app.version、 app.provide 与 app.runWithContext :原理、应用与实例剖析
目录 app.provide app.runWithContext app.version 非 VIP 用户能够通过积分下载博文资源 app.provide 在 Vue 3.0 中,app.provide充当着在应用层级提供全局共享数据或者服务的关键角色。 app.provide(key, value) 这一方法接收两个关键参数,其中 …...

Ubuntu server 命令行跑selenium
背景 自动化测试都是在本机win上使用selenium 跑自动化脚本,但是服务器都是命令行的没有web界面 依赖包部署 apt-get install zlib1g-dev zlib1g## 安装谷歌浏览器 ## 跳到底部,选择其他平台 https://www.google.com/chrome/## ubuntu # dpkg -i google-chrome-stable_…...

刚刚,模糊测试平台SFuzz受到行业认可
近日,中国网络安全产业联盟(CCIA)正式发布了“2024年网络安全优秀创新成果大赛-安全严选专题赛”评选结果,开源网安模糊测试平台SFuzz凭借重大创新能力,得到组委会认可,获本次大赛创新产品优胜奖。 2024年网…...
数据结构与算法——DFS(深度优先搜索)
算法介绍: 深度优先搜索(Depth-First Search,简称DFS)是一种用于遍历或搜索树或图的算法。这种算法会尽可能深地搜索图的分支,直到找到目标节点或达到叶节点(没有子节点的节点),然后…...

基于lambda简化设计模式
写在文章开头 本文将演示基于函数式编程的理念,优化设计模式中繁琐的模板化编码开发,以保证用尽可能少的代码做尽可能多的事,希望对你有帮助。 Hi,我是 sharkChili ,是个不断在硬核技术上作死的 java coder ÿ…...

揭秘! 经纬恒润“车路云一体化”方案研发服务背后的科技驱动力
随着高级别智能驾驶技术的飞速发展,自动驾驶与路侧基础设施协同合作已成为行业内的又一热点。我国率先提出以“车路云一体化”为核心的战略布局,国家政策密集出台,地方试点积极推进,行业标准日趋完善,智能网联汽车“车…...

Redis操作--RedisTemplate(二)StringRedisTemplate
一、介绍 1、简介 由于存储在 Redis 中的 key 和 value 通常是很常见的 String 类型,Redis模块提供了 RedisConnection 和 RedisTemplate 的扩展,分是 StringRedisConnection 和 StringRedisTemplate,作为字符串操作的解决方案。 通过源码…...

【自动驾驶】ROS中自定义格式的服务通信,含命令行动态传参(c++)
目录 通信流程创建服务器端及客户端新建服务通讯文件修改service的xml及cmakelistCMakeLists.txt编辑 msg 相关配置编译消息相关头文件在cmakelist中包含头文件的路径在service包下编写service.cpp在client包下编写client.cpp测试运行查询服务的相关指令列出目前的所有服务&…...

优思学院|PDCA和DMAIC之间如何选择?
在现代组织中,提升方法、质量和效率是企业追求卓越、保持竞争力的核心目标。在这条道路上,DMAIC(定义、测量、分析、改进、控制)和PDCA(计划、执行、检查、行动)被广泛应用于持续改进和问题解决。这两者虽然…...

5 款最佳 Micro SD 卡恢复软件,助您恢复文件
您是否对数据恢复存在某些疑问,并想知道如何恢复 Micro SD 卡上的文件?如果是,那么在本文中您将找到答案。网上有许多专门用于从 Micro SD 卡或格式化的 Micro 卡恢复已删除文件而设计的软件。因此,在本文中,我们将向您…...

【使用教程】CiA402中的“原点回归模式”和“轮廓位置模式”搭配使用操作实例
使用“原点回归模式”配合“轮廓位置模式”是步进或伺服电机使用过程中最常用的方法,其对于提高自动化生产线的准确性和效率具有重要意义,本文将对正常使用控制电机中发送的命令及顺序进行简要说明。 说明:“原点回归”以“堵转回原点”的方式…...

服务器网络不通排查方案
服务器网络不通排查方案 最近遇到了服务器上服务已经启动,但是在浏览器上无法访问的问题,记录一下排查流程 文章目录 服务器网络不通排查方案netstart排查网络连接信息netstat 命令netstat -aptn 命令 iptables总结 netstart排查网络连接信息 netstat …...

Spring Boot + Vue 跨域配置(CORS)问题解决历程
在使用 Spring Boot 和 Vue 开发前后端分离的项目时,跨域资源共享(CORS)问题是一个常见的挑战。接下来,我将分享我是如何一步步解决这个问题的,包括中间的一些试错过程,希望能够帮助到正在经历类似问题的你…...

Think | 大模型迈向AGI的探索和对齐
注:节选自我于24年初所写的「融合RL与LLM思想探寻世界模型以迈向AGI」散文式风格文章,感兴趣的小伙伴儿可以访问我的主页置顶或专栏收录,并制作了电子书供大家参考,有需要的小伙伴可以关注私信我,因为属于技术散文风格…...