你必须知道“环境变量”的作用,并将必须的命令的路径配置到环境变量的PATH中。
示例–配置Java环境变量:http://doc.canglaoshi.org/doc/windows_jdk_eclipse.html
注意:无论是CMD命令提示符窗口,还是IntelliJ IDEA中的Terminal窗口,都是在启动时就加载了环境变量的,如果你在其后修改过环境变量的配置,必须重新打开CMD命令提示符窗口,或重启IntelliJ IDEA,才可以应用新的配置。
你必须知道Maven是有远程仓库服务器的,当你在Maven工程中的pom.xml中添加了依赖项后,会从远程仓库服务器中下载所需的依赖项的文件。
你应该将远程仓库服务器配置为国内的某个服务器,一般配置为华为云或阿里云的,这样可以大大提升下载依赖项的效率,并降低下载文件时丢失数据的风险。
示例:http://doc.canglaoshi.org/doc/idea_install_202010/20201019-IDEA-1-INSTALL.html
关于华为云或阿里云的Maven仓库服务器,你可以随意选择其中的某一个,如果某个服务器在某段时间表现得不够稳定时,你应该切换为另一个。
从远程仓库服务器下载到的相关文件会出现在你的本地仓库,如果你使用的是Windows操作系统,它默认会在 C:\Users\你登录系统时的用户的用户名\.m2\repository 这个位置,如果你使用的是Mac操作系统,它默认会在 /Users/你登录系统时的用户的用户名/.m2/repository 这个位置,你必须明显的知道你的本地仓库位置,后续你可能需要在此进行某些操作,例如本地仓库文件中的文件损坏时你需要找到这些文件并删除。
当你的Maven工程(包括Spring Boot工程,因为它本身也是一个Maven工程)提示依赖项错误时,首先,你应该检查依赖项的代码是否正确,如果你的依赖项是第三方的,可以从 https://www.mvnrepository.com 上找到正确的依赖项代码,如果你的依赖项是自己定义的另一个模块,则应该检查被依赖的模块中的相关声明(例如Artifact Id、Group Id、Version)与添加依赖时是否一致。
如果你的的依赖项的代码是正确的,你应该依次尝试以下全部操作:
关于以上操作第2步,其实可以只删除疑似有问题的部分文件,而不是删除整个本地仓库,但是,后续使用的依赖项的关联可能非常复杂,你不一定能快速的准确找到疑似有问题的文件,所以从操作上来看,删除整个本地仓库更简单一些。
如果以上操作不能解决你的问题,你还可以尝试:
当你的程序出现异常时,在控制台会提示异常的跟踪报告,通常,以 Caused By 开头的那一行会提示异常的类型及关键信息,这一行信息对于排查错误非常有帮助,请仔细查看。
如果异常信息存在嵌套,则会有多行 Caused By,其中,最下方的 Caused By 提示的信息是最精准的,是最具参考价值的!但是,如果涉及某些外部文件的错误,例如XML文件的错误,则可能需要通过偏上方的 Caused By 中的信息来确定XML文件的位置。
当你启用某个服务,提示端口被占用时,你可以尝试修改项目中的配置,使用其它端口,当不便于使用其它端口时,则应该终止占用端口的进程,再启动你的服务。
在Windows操作系统中,你需要在CMD命令提示符窗口中执行以下命令找出占用端口的进程ID:
netstat -ano |findstr 端口号
当执行以上命令后,会提示占用端口的进程的ID,即PID,再执行以下命令终止此PID对应的进程:
taskkill /f /t /im 进程ID
在Mac OS操作系统中,你需要在终端中执行以下命令找出占用端口的进程ID:
lsof -i :端口号
当执行以上命令后,会提示占用端口的进程的ID,即PID,再执行以下命令终止此PID对应的进程:
kill -9 进程ID
在IntelliJ IDEA中,安装插件的操作方式是固定的,以安装LOMBOK插件为例,可参考: http://doc.canglaoshi.org/doc/idea_lombok/IDEA-5-PLUGINS-LOMBOK.html
由于IntelliJ IDEA的插件仓库服务器并不是国内的服务器,所以可能会出现找不到插件、无法安装、安装速度极慢的问题,你可以稍后再次尝试,或切换你的网络连接,例如使用移动 / 联通 / 电信的手机提供上网热点,或在这3种运营商之间切换。
如果你将外部文件(你的工程以外的文件,例如老师的工程中的文件)复制到你的工程中,可能存在IntelliJ IDEA不识别的问题,具体表现为:
当出现此问题时,你可以通过以下操作步骤来解决:
target 文件夹Reload from disk 选项Build > Build Project关于DML SQL语句,你必须熟练掌握:
values 关键字右侧可以有多条记录的值in 语法in 语法count() 函数
count(*) ,而不是 count(字段名)distinct 关键字order by 指定排序规则
limit 进行分页处理join / inner join / left join / right join 的使用在CMD命令提示符窗口中登录MySQL后,通过 source 命令即可导入SQL脚本,例如:
source d:\db.sql
在执行导入之前,应该先查看SQL脚本的内容,你可能需要事先创建数据库,并应用数据库后再执行导入。
官方文档(英文版):http://doc.canglaoshi.org/rfc/rfc1945.txt
官方文档(中文版):http://doc.canglaoshi.org/rfc-cn/RFC1945.txt
常见HTTP响应码通俗描述(以下涉及的问题解决方案,在未学到到对应的框架技术之前可暂时跳过):
@RequestParam默认具有“不允许为null”的约定spring-boot-starter-web依赖项的Spring Boot工程是使用Spring MVC接收请求参数的,添加了spring-boot-starter-validation依赖项的Spring Boot工程则是使用Hibernate Validation实现的请求参数验证src/main/resources/static,并且,需要注意,如果你显式的配置了静态资源文件夹,将会覆盖此默认项@Controller或@RestController注解,如果你使用的是Spring Boot工程,默认组件扫描的包是创建工程时指定的Group Id和Artifact Id组件的包名@RequestMapping注解(如果存在的话)和处理请求的方法上的@RequestMapping或以此为元注解的其它注解(例如@GetMapping等)组合得到的,你应该检查这2处的注解@PostMapping时,则限制了客户端的请求方式必须是POSTjackson-databind依赖项@EnableWebMvc注解e.printStackTrace()等方式将异常信息输出两者相比,char占用的存储空间略小,存读写效率略高,所以,在可行的情况下,应该优先使用char。
通常,如果某字段的字符串长度变化不大时,则可以将字段类型设计为char,并不只是字符串长度完全相同时才可以使用,当然,如果字符串长度确实可能不同,在读取到字符值时,应该去除多余的空格。
在现行的MySQL版本中,如果使用utf8编码,表示的是utf8mb3,将最多使用3个字节来表示1个字符,而utf8mb4将最多使用4个字节表示1个字符。
使用utf8mb4将有更多的可能性,例如可以表示一些生僻字,emojo表情等,同时,由于是“最多”使用4字节,如果某个字符只需要3字节即可表示,也只会使用3字节,并不会造成存储空间的浪费,所以,通常建议将各数据表的编码显式的指定为utf8mb4。
你应该熟练的掌握以下操作:
关于你的开发环境,你应该保证以下几点: