专栏前言
作为一名前端开发,为了扩展自身技能,准备入门级的学习一下java后端相关知识。虽然岗位是前端,但我觉得不能算是卷。
因为我们日常开发中几乎每天都要和后端同学打交道,如果能够掌握后端基本知识的话,我相信在前端开发工作中也会有很大作用。 技多不压身,如果这个过程让你感到痛苦那大可不必;反之,学习新事物的过程中能让自己更加自信、有成就感时,我觉得是有意义的!
记得是2年前学习过一个入门级的java项目,但现在可以说是忘记的差不多了。最近打算从0开始学习,并输出文章,方便自己日后复习查阅,也希望帮助到其他同学。
创建第一个java项目(Spring-Web项目)
创建 SpringBoot
项目时,通常建议使用的 JDK(Java Development Kit)
版本是 JDK 8、JDK 11
或更高版本,具体取决于 SpringBoot
的版本。
Spring Boot
版本与推荐的 JDK
版本的对应关系:
Spring Boot 2.0.x:推荐使用 JDK 8。
Spring Boot 2.1.x:推荐使用 JDK 8 或 JDK 11。
Spring Boot 2.2.x:推荐使用 JDK 8 或 JDK 11。
Spring Boot 2.3.x:推荐使用 JDK 8、JDK 11 或 JDK 14。
Spring Boot 2.4.x:推荐使用 JDK 8、JDK 11 或 JDK 15。
Spring Boot 2.5.x:推荐使用 JDK 8、JDK 11 或 JDK 16。
Spring Boot 3.x.x:推荐使用 JDK17。
新建项目方式
这里需要注意服务器url: 建议换成国内阿里云的镜像源: https://start.aliyun.com
提高下载速度。
- SpringBoot版本选择
Spring Web
Maven项目
依赖环境:SpringBoot2.6.13 + jdk17
目录结构:
启动成功:
Gradle项目
依赖环境:SpringBoot2.6.13 + jdk17
目录结构:
提示未定义模块sdk
找到项目设置-模块-依赖:
配置模块sdk:
此时会列出电脑本地的sdk版本,选择对应版本后应用确定后,警告消失。
这里模块的sdk可以在 设置里进行设置:
- 启动项目
根目录有一个 build.grale
文件 右键可执行(但是下载报错失败了):
- 修改下载地址:
找到
gradle-wrapper.properties
文件通常在 <项目/gradle/wrapper>
将:distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-bin.zip
修改为:distributionUrl=https://mirrors.cloud.tencent.com/gradle/gradle-7.5.1-bin.zip
成功下载:
主文件启动成功,先开始点击主文件不能启动,下载好 gradle依赖后需要重启编辑器
也可以在项目根目录使用命令启动:./gradlew bootRun
Gradle 与 Maven 构建工具区别
使用ide创建项目时, Gradle 和 Maven 都是流行的构建工具,每个工具都有其独特的优势和适用场景。选择哪个工具取决于项目的需求。
区别:
- 构建脚本语言: Gradle 使用 Groovy DSL,Maven 使用 XML。Groovy DSL 更具表达性,编写更紧凑,而 XML 更易于阅读。
- 插件体系: Gradle 采用基于任务的插件体系,使得插件的集成和扩展更加容易。
Maven 使用插件来执行任务,但插件的使用和配置有一些限制。
- 性能: Gradle 声称在大型项目中比 Maven 更快。它使用增量构建和缓存策略来提高构建效率。
- 灵活性: Gradle 提供了更灵活的自定义构建逻辑的方式,适用于复杂的项目需求。Maven 更强调标准化的构建生命周期。
- 社区和生态系统: Maven 有更广泛的使用和社区支持,拥有丰富的插件和文档。Gradle 正在不断增长的社区中也有大量的插件和资源。
遇到问题
ide启动项目后报错8080端口被占用
-
原因 idea关闭项目后,系统进程不能同步关闭,再次执行的时候会提示端口占用
-
修改端口(临时解决)
在 resources/application.propertles文件中可以修改服务端口
- 杀死进程(推荐)
sudo lsof -i tco: 8080
查询占用的端口
sudo kill xxxpid
杀死指定pid的端口
- 关闭ide时选择结束服务进程
总结
至此,我们使用两种方式创建好了 spring Web
项目,也搞清楚了两者的区别。