1、JAVA,jdk1.8和jdk22
下载:https://www.java.com/zh-CN/
记得配置环境变量。(右键我的电脑–属性–高级系统设置),linux 在profile系统文件里用export命令配置。
2、redis:
下载:https://github.com/microsoftarchive/redis/releases,或者另找地方下载。
Redis-x64-3.2.100.zip是解压安装包,进入解压目录,安装成系统服务:
配置文件
安装命令:redis-server --service-install redis.windows.conf --loglevel verbose
卸载服务:redis-server --service-uninstall
开启服务:redis-server --service-start
停止服务:redis-server --service-stop
3、maven
下载解压:https://maven.apache.org/download.cgi
配置文件:
<localRepository>E:\repository</localRepository>
<mirrors>
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
</mirror>
</mirrors>
加入环境变量:(右键我的电脑–属性–高级系统设置)
4、eclipse*
下载安装:https://www.eclipse.org/downloads/
安装插件:
建议安装:lombok、MyBatipse 、Eclipse Color themes、Gradle 等,c++ 需要安装 CDT
在eclipse里面配置maven:
5、mysql8,免安装版。
配置文件
[mysqld]
init_connect='set collation_connection=utf8mb4_general_ci'
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
skip-character-set-client-handshake
bind-address = 0.0.0.0
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=E:\mysql8
# 设置mysql数据库的数据的存放目录
datadir=F:\mysqldata
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。
max_connect_errors=10
# 服务端使用的默认字符集为utf8mb4
character_set_server=utf8mb4
collation_server=utf8mb4_general_ci
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default_character_set=utf8mb4
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default_character_set=utf8mb4
6、IntelliJ IDEA
下载安装:https://www.jetbrains.com/zh-cn/idea/download/
设置项目的文件编码:
设置maven配置:
安装插件:lombok、MyBatipse等
以下快捷键必备,用得最多,优先级为1
按功能分类
按住Ctrl键,鼠标点击某个类、方法、变量等,将进入该类、方法、变量的详情。
点击一个接口将进入该接口的实现类。可以说Ctrl键+鼠标左键点击一个东西,将查看该东西的详情。
关键字查找和替换功能:
Ctrl键 + f,在当前窗口打开的文件内按关键字查找。
Ctrl键 + r,在当前窗口打开的文件内按关键字查找且可以进行替换。
Ctrl键 + Shift + f,在项目范围内进行关键字搜索,高级查找,跟Ctrl键 + f类似,只是扩大了搜索范围。
Ctrl键 + Shift + r,在项目范围内进行关键字搜索,高级查找和替换功能,可以定义搜索的文件类型,是否大小写敏感,正则表达式搜索等。
Ctrl键 + n 根据输入的 名/类名 查找类文件。
Ctrl + Shift + A 查找动作
浏览内容的轨迹:
Ctrl键 + Alt + 右箭头键或左箭头键,是浏览历史的前进和后退。
Ctrl + 前箭头键,等效于鼠标滚轮向前效果,不加Ctrl,光标移动。
Ctrl + 后箭头键,等效于鼠标滚轮向后效果,不加Ctrl,光标移动。
注释和反注释:
单行注释和撤销注释 ctrl + /
多行注释 ctrl + shift + /
内容的复制粘贴、删除和保存:
基本上在操作系统范围内通用,不仅仅是IDEA。
先选中内容,然后复制 ctrl + c
撤销 ctrl + z
反撤销 ctrl + shift + z
剪切 ctrl + x
粘贴 ctrl + v
保存 ctrl + s
全选 ctrl + a
Delete 或者 Ctrl + Delete 删除光标后面的单词或是中文句 (必备)
BackSpace 或者 Ctrl + BackSpace 删除光标前面的单词或是中文句 (必备)
ESC 从工具窗口进入代码文件窗口
查看继承关系 Crtl + H 和 Crtl + Alt + U
优先级为2
格式调整
选中数行,整体往后移动 tab (必备)
选中数行,整体往前移动 shift + tab (必备)
Ctrl + Alt + L 格式化代码,可以对当前文件和整个包目录使用 (必备)
Ctrl + Alt + O 优化导入的类,可以对当前文件和整个包目录使用 (必备)
按组合键进行分类:
一、Ctrl 快捷键
Ctrl + F 在当前文件进行文本查找 (必备)
Ctrl + R 在当前文件进行文本替换 (必备)
Ctrl + Z 撤销 (必备)
Ctrl + Y 删除光标所在行 或 删除选中的行 (必备)
Ctrl + X 剪切光标所在行 或 剪切选择内容
Ctrl + C 复制光标所在行 或 复制选择内容
Ctrl + D 复制光标所在行 或 复制选择内容,并把复制内容插入光标位置下面 (必备)
Ctrl + W 递进式选择代码块。可选中光标所在的单词或段落,连续按会在原有选中的基础上再扩展选中范围(必备)
Ctrl + E 显示最近打开的文件记录列表 (必备)
Ctrl + N 根据输入的 名/类名 查找类文件 (必备)
Ctrl + J 插入自定义动态代码模板 (必备)
Ctrl + P 方法参数提示显示 (必备)
Ctrl + U 前往当前光标所在的方法的父类的方法 / 接口定义 (必备)
Ctrl + B 进入光标所在的方法/变量的接口或是定义处,等效于 Ctrl + 左键单击 (必备)
Ctrl + H 显示当前类的层次结构 (必备)
Ctrl + / 释光标所在行代码,会根据当前不同文件类型使用不同的注释符号 (必备)
Ctrl + 左键单击 在打开的文件标题上,弹出该文件路径 (必备)
Ctrl + 光标定位按 Ctrl 不要松开,会显示光标所在的类信息摘要 (必备)
二、Alt 快捷键
Alt + Insert 代码自动生成 (必备)
Alt + 左方向键 切换当前已打开的窗口中的子视图(必备)
Alt + 右方向键 按切换当前已打开的窗口中的子视图 (必备)
Alt + 前方向键 当前光标跳转到当前文件的前一个方法名位置 (必备)
Alt + 后方向键 当前光标跳转到当前文件的后一个方法名位置 (必备)
三、Shift 快捷键
Shift + Enter 开始新一行。光标所在行下空出一行,光标定位到新行位置 (必备)
Shift + 左键单击 在打开的文件名上按此快捷键,可以关闭当前打开文件 (必备)
Shift + 滚轮前后滚动 当前文件的横向滚动轴滚动 (必备)
四、Ctrl + Alt 快捷键
Ctrl + Alt + L 格式化代码,可以对当前文件和整个包目录使用 (必备)
Ctrl + Alt + O 优化导入的类,可以对当前文件和整个包目录使用 (必备)
Ctrl + Alt + I 光标所在行 或 选中部分进行自动代码缩进,有点类似格式化
Ctrl + Alt + T 对选中的代码弹出环绕选项弹出层 (必备)
Ctrl + Alt + J 弹出模板选择窗口,将选定的代码加入动态模板中
Ctrl + Alt + H 调用层次
Ctrl + Alt + Enter 光标所在行上空出一行,光标定位到新行 (必备)
Ctrl + Alt + Home 弹出跟当前文件有关联的文件弹出层
Ctrl + Alt + Space 类名自动完成
Ctrl + Alt + 左方向键 退回到上一个操作的地方 (必备)
Ctrl + Alt + 右方向键 前进到上一个操作的地方 (必备)
Ctrl + Alt + 前方向键 在查找模式下,跳到上个查找的文件
Ctrl + Alt + 后方向键 在查找模式下,跳到下个查找的文件
五、Ctrl + Shift 快捷键
Ctrl + Shift + F 根据输入内容查找整个项目 或 指定目录内文件 (必备)
Ctrl + Shift + R 根据输入内容替换对应内容,范围为整个项目 或 指定目录内文件 (必备)
Ctrl + Shift + J 自动将下一行合并到当前行末尾 (必备)
Ctrl + Shift + Z 取消撤销 (必备)
Ctrl + Shift + N 通过文件名定位 / 打开文件 / 目录,打开目录需要在输入的内容后面多加一个正斜杠 (必备)
Ctrl + Shift + H 显示方法层次结构
Ctrl + Shift + B 跳转到类型声明处 (必备)
Ctrl + Shift + A 查找 (必备)
Ctrl + Shift + 左键单击 把光标放在某个类变量上,按此快捷键可以直接定位到该类中 (必备)
六、Alt + Shift 快捷键
Alt + Shift + 前方向键 移动光标所在行向上移动 (必备)
Alt + Shift + 后方向键 移动光标所在行向下移动 (必备)
七、Ctrl + Shift + Alt 快捷键
Ctrl + Shift + Alt + V 无格式黏贴 (必备)
Ctrl + Shift + Alt + S 打开当前项目设置 (必备)
*** 7、linux 终端连接工具****
推荐 SecureCRT、Xshell、Finalshell
SecureCRT配置:
8、数据库客户端连接工具
推荐Navicat 17、PL/SQL
另有导出导入功能,适用于两台机不能连接的情况。
9、NGINX
前后端分类必备,下载:https://nginx.org/ru/download.html
另外,windows下,支持rtsp等流媒体协议的版本可以在这里下载:http://nginx-win.ecsds.eu/
主要功能:正向代理、反向代理、负载均衡。可以实现前后端分离、跨域(需要服务器支持)、动静态资源分离
配置文件解释和示例:
#user nobody;
worker_processes 1;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
#access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
#gzip on;
server {
listen 9090;
server_name localhost;
location / {
root E:/ly/wvp/src/main/resources/static;
index index.html index.htm;
add_header Cross-Origin-Opener-Policy same-origin;
add_header Cross-Origin-Embedder-Policy require-corp;
}
location /api/ {
proxy_pass http://127.0.0.1:18978/api/;
add_header Cross-Origin-Opener-Policy same-origin;
add_header Cross-Origin-Embedder-Policy require-corp;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header HTTP_X_FORWORD_FOR $remote_addr;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_http_version 1.1;
}
#error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
location /file {
#proxy_pass http://192.168.1.93:8000/file/;
alias F:/uav2/file/;
index index.html index.htm;
}
}
server {
listen 7070;
server_name localhost222;
location / {
root F:/wvpp/src/main/resources/static;
index index.html index.htm;
add_header Cross-Origin-Opener-Policy same-origin;
add_header Cross-Origin-Embedder-Policy require-corp;
}
location /api/ {
proxy_pass http://127.0.0.1:18818/api/;
add_header Cross-Origin-Opener-Policy same-origin;
add_header Cross-Origin-Embedder-Policy require-corp;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header HTTP_X_FORWORD_FOR $remote_addr;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_http_version 1.1;
}
}
}
10、版本管理工具
git、svn客户端
记得把执行命令的路径加到环境变量path里面
git常用命令:
git init
git add .
git commit -m "init"
git remote add origin https://github.com/????????.git
git push -u origin master
其他工具:
RedisDesktopManager 连接查看redis内容
postman、apifox 都是常用的API测试工具
Visual Studio Code
VMware Workstation Pro17,本地需要模拟linux环境的,最好使用VMware安装linux,网络使用桥接方式
有了linux 环境,方便在上面安装各种常用软件,如kafka、docker、k8s、mqttserver等等。这里篇幅有限。
将包导入到本地的maven仓库示例:
mvn install:install-file -Dfile=artemis-http-client-1.1.12.RELEASE.jar -DgroupId=com.hikvision.ga -DartifactId=artemis-http-client -Dversion=1.1.12.RELEASE -Dpackaging=jar -Dmaven.repo.local=E:\repository
mvn install:install-file -Dfile=artemis-http-client-1.1.12.RELEASE-javadoc.jar -DgroupId=com.hikvision.ga -DartifactId=artemis-http-client -Dversion=1.1.12.RELEASE -Dpackaging=javadoc -Dmaven.repo.local=E:\repository
mvn install:install-file -Dfile=artemis-http-client-1.1.12.RELEASE-sources.jar -DgroupId=com.hikvision.ga -DartifactId=artemis-http-client -Dversion=1.1.12.RELEASE -Dpackaging=sources -Dmaven.repo.local=E:\repository
SpriingBoot中将本地jar包引入项目,并且maven打包时包含进去,(经常遇到这种情况,引用第三方包,但在maven仓库没有)示例:
<dependency>
<groupId>cn.sgclub.utils</groupId>
<artifactId>common-utils</artifactId>
<version>1.0.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/src/main/resources/lib/common-utils-1.0.0.jar</systemPath>
</dependency>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<mainClass>你的springboot启动类</mainClass>
<includeSystemScope>true</includeSystemScope>
</configuration>
</plugin>
</plugins>
</build>