主题
Java 与 Spring Boot 入门
一、Java 语法速览(零基础也能跟上)
类与对象
java
public class Product {
private Long id;
private String name;
private BigDecimal price;
private Integer stock;
// getter / setter(后续用 Lombok @Data 自动生成)
}高频语法对照
| 场景 | Java | JavaScript/TypeScript |
|---|---|---|
| 变量 | int count = 0; | let count = 0 |
| 常量 | final int MAX = 10; | const MAX = 10 |
| 列表 | List<String> list = new ArrayList<>(); | const list = [] |
| 遍历 | for (Product p : list) { } | list.forEach(p => {}) |
| 判空 | Objects.isNull(obj) | obj === null |
| 注解 | @Override | 装饰器(类似) |
Lombok:减少样板代码
实体类加 @Data,getter/setter/toString 自动生成:
java
import lombok.Data;
@Data
public class Product {
private Long id;
private String name;
private BigDecimal price;
}IntelliJ 需装 Lombok 插件,pom 里引入依赖后即可使用。
二、什么是 Spring Boot
Spring 是 Java 企业开发的事实标准。Spring Boot 则把"一堆复杂配置"封装成自动配置——引入依赖、写几行配置,应用就能跑。
核心能力:
- 内嵌 Tomcat,
java -jar直接启动 Web 服务 - 约定优于配置,默认值开箱即用
- 丰富的 Starter 生态(web、mybatis、security...)
三、创建工程(两种方式)
方式一:Spring Initializr(官方推荐)
打开 start.spring.io:
- Project: Maven
- Language: Java
- Spring Boot: 3.x(稳定版)
- Group:
com.mall - Artifact:
server - Java: 17
- 依赖勾选:
Spring Web、MySQL Driver、Lombok、Validation
生成后解压到 server/ 目录。
方式二:IDEA 内置创建
IntelliJ IDEA → New Project → Spring Initializr,选项同上。
四、pom.xml:核心依赖
xml
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.3.2</version>
</parent>
<dependencies>
<!-- Web:内嵌 Tomcat + Spring MVC -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- 参数校验 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
<!-- MyBatis-Plus(Boot 3 用 3.5.x 版) -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-spring-boot3-starter</artifactId>
<version>3.5.7</version>
</dependency>
<!-- MySQL 驱动 -->
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
<scope>runtime</scope>
</dependency>
<!-- Lombok -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
</dependencies>五、配置文件
yaml
# server/src/main/resources/application.yml
server:
port: 8080
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/mall?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai
username: root
password: 你的密码
mybatis-plus:
configuration:
map-underscore-to-camel-case: true # 数据库下划线 → Java 驼峰
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # 控制台打印 SQL
global-config:
db-config:
logic-delete-field: deleted # 逻辑删除字段
logic-delete-value: 1
logic-not-delete-value: 0六、启动类与依赖注入
java
package com.mall;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication // 启动类 + 自动配置
@MapperScan("com.mall.mapper") // 扫描 Mapper 接口
public class MallApplication {
public static void main(String[] args) {
SpringApplication.run(MallApplication.class, args);
}
}依赖注入(DI / IoC):Spring 自动创建对象并注入到需要的地方。这是企业后端的基础能力。
java
@Service
public class ProductService {
private final ProductMapper productMapper;
// 构造器注入(推荐写法)
public ProductService(ProductMapper productMapper) {
this.productMapper = productMapper;
}
}七、验收
bash
cd server
mvn spring-boot:run
# 或打成 jar 运行
mvn package -DskipTests
java -jar target/server-0.0.1-SNAPSHOT.jar看到 Tomcat started on port 8080 即成功。浏览器访问 http://localhost:8080(暂时返回 404 是正常的,还没写接口)。
常见坑
- JDK 版本:Spring Boot 3 需要 Java 17+,
java -version确认。 - 数据库连接:先建好
mall库(CREATE DATABASE mall;),否则启动报连接错误。 - 依赖下载慢:Maven 配国内镜像(阿里云),百度"Maven 阿里云镜像配置"。