为了账号安全,请及时绑定邮箱和手机立即绑定

SpringBoot3+JDK17搭建后端入门教程

标签:
Java SpringBoot
概述

本文介绍了如何使用Spring Boot 3和JDK 17搭建后端入门环境,包括JDK和Spring Boot的安装、开发环境配置及第一个Spring Boot项目的创建。文章还概述了Spring Boot的核心概念、常用功能开发、模板技术与Web开发、以及项目打包与部署的步骤。希望读者能通过本文快速掌握Spring Boot 3的基础开发技能。

环境搭建

在开始使用Spring Boot 3和JDK 17进行后端开发之前,首先需要搭建好相应的开发环境。这包括安装JDK 17和Spring Boot 3,并配置开发环境。

安装JDK 17
  1. 访问Oracle官方网站下载JDK 17的安装包,推荐使用LTS(长期支持)版本。
  2. 运行下载的安装包,按照向导完成安装。
  3. 设置环境变量:
    • JAVA_HOME:指向JDK安装目录,例如 C:\Program Files\Java\jdk-17
    • PATH:添加%JAVA_HOME%\bin到系统环境变量中。

可以通过命令java -version验证安装是否成功。

java -version
安装Spring Boot 3

Spring Boot 3的安装较为简单,主要是依赖于IDE的支持。这里以IntelliJ IDEA为例进行说明:

  1. 打开IntelliJ IDEA。
  2. 进入File -> Project Structure -> Modules -> Dependencies
  3. 点击+号选择Library,然后选择Maven,在其出现的搜索框中输入org.springframework.boot:spring-boot-starter-web:3.0.0,配置依赖。
  4. 确保IDE已经配置了Maven,并且版本可以支持Spring Boot 3。Maven版本建议使用3.6.3及以上版本。

可以通过命令mvn -version验证Maven安装和配置是否成功。

mvn -version
配置开发环境
  1. 确保安装的Spring Boot版本为3.0.0(或者其他支持的版本)。
  2. 配置IDE:在IDE中打开File -> Settings -> Build, Execution, Deployment -> Compiler,确保Maven运行时使用的JDK版本为17。
  3. 确保IDE中配置了正确的Maven仓库,通常默认的Maven仓库地址为http://repo.maven.apache.org/maven2。可以在File -> Settings -> Build, Execution, Deployment -> Build Tools -> Maven -> Repositories中查看配置。
创建第一个Spring Boot项目

Spring Initializr是一个在线工具,帮助我们快速创建Spring Boot项目。接下来,我们将使用Spring Initializr初始化项目、添加必要的依赖,并运行第一个Spring Boot应用。

使用Spring Initializr初始化项目

  1. 打开浏览器,导航到Spring Initializr的官方网站:https://start.spring.io/
  2. 在页面中选择:
    • Spring Boot版本:3.0.0。
    • Java版本:17。
    • 项目类型:Maven。
    • 项目语言:Java。
    • 包名:例如 com.example.demo
  3. 在Dependencies(依赖)中选择所需的依赖,例如Spring Web
  4. 点击“Generate”按钮,下载生成的项目压缩包。

添加必要的依赖

将下载的项目压缩包解压后,会看到一个名为pom.xml的文件,这是项目的依赖管理文件。将pom.xml中的依赖配置如下:

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
</dependencies>

运行第一个Spring Boot应用

在IDE中打开项目后,可以通过以下步骤运行第一个Spring Boot应用:

  1. 打开src/main/java/com/example/demo/DemoApplication.java文件。
  2. 在文件中写入以下代码:
package com.example.demo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class DemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}
  1. 在IDE中运行该项目。可以通过点击Run按钮,或者使用命令行在项目根目录下执行mvn spring-boot:run命令启动应用。
mvn spring-boot:run

此时,如果一切配置正确,应用将会运行在默认的8080端口上。可以通过访问http://localhost:8080/来验证应用是否成功启动。

Spring Boot核心概念介绍

在掌握了项目创建的基本步骤后,我们需要深入了解一些Spring Boot的核心概念,包括Spring Boot Starter、自动配置和配置文件。

Spring Boot Starter

Spring Boot Starter是Spring Boot中的一个组件,目的是简化开发流程,减少开发者需要管理的依赖数量。例如,spring-boot-starter-web是一个依赖集合,帮助我们快速创建Web应用。

自动配置

Spring Boot的一个核心特性是自动配置。它可以根据类路径中的依赖,自动配置应用中的组件。例如,当我们添加Spring Data JPA依赖时,Spring Boot会自动配置数据源、实体管理器等。

配置文件

Spring Boot使用一个名为application.propertiesapplication.yml的配置文件来管理应用的配置。例如,数据库配置、端口设置等。在src/main/resources目录下,可以找到该配置文件。

常用功能开发

开发Spring Boot应用的过程中,我们经常需要使用一些常见的功能,例如创建RESTful API、数据库集成和日志管理。

创建RESTful API

RESTful API是现代Web应用中用来构建HTTP服务的一种架构风格。在Spring Boot中,创建RESTful API非常简单。下面是一个简单的示例代码:

package com.example.demo;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloController {

    @GetMapping("/hello")
    public String hello() {
        return "Hello, World!";
    }
}

上述代码中,@RestController注解表明该类是一个控制器类,用于处理HTTP请求。@GetMapping注解用于映射HTTP GET请求。

数据库集成

Spring Boot支持多种数据库,例如MySQL、PostgreSQL、MongoDB等。这里以MySQL为例,展示如何在Spring Boot应用中集成数据库。

  1. 添加数据库依赖到pom.xml文件:
<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
    </dependency>
</dependencies>
  1. application.properties文件中配置数据库连接信息:
spring.datasource.url=jdbc:mysql://localhost:3306/mydb
spring.datasource.username=root
spring.datasource.password=root
spring.jpa.hibernate.ddl-auto=update
  1. 创建实体类:
package com.example.demo;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;

@Entity
public class User {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    private String name;
    private String email;

    // Getter and Setter methods
}
  1. 创建Repository接口:
package com.example.demo;

import org.springframework.data.jpa.repository.JpaRepository;

public interface UserRepository extends JpaRepository<User, Long> {
}
  1. 创建服务类:
package com.example.demo;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service
public class UserService {

    @Autowired
    private UserRepository userRepository;

    public User saveUser(User user) {
        return userRepository.save(user);
    }
}
  1. 创建控制器类,调用服务类的方法处理HTTP请求:
package com.example.demo;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

@RestController
public class UserController {

    @Autowired
    private UserService userService;

    @PostMapping("/users")
    public User createUser(@RequestBody User user) {
        return userService.saveUser(user);
    }
}

日志管理

Spring Boot默认使用Logback作为日志框架。开发者可以通过application.propertiesapplication.yml文件进行日志配置。例如,可以设置日志级别为DEBUG:

logging.level.root=DEBUG

在代码中记录日志示例:

package com.example.demo;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service;

@Service
public class UserService {

    private static final Logger logger = LoggerFactory.getLogger(UserService.class);

    @Autowired
    private UserRepository userRepository;

    public User saveUser(User user) {
        logger.debug("Saving user: {}", user);
        return userRepository.save(user);
    }
}
模板技术与Web开发

使用Thymeleaf模板引擎

Thymeleaf是一个流行的模板引擎,用于动态生成HTML页面。在Spring Boot中,我们可以轻松集成Thymeleaf。

  1. pom.xml中添加Thymeleaf依赖:
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
  1. 创建一个HTML模板文件,例如src/main/resources/templates/index.html
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <title>My First Thymeleaf Page</title>
</head>
<body>
    <h1 th:text="'Hello, ' + ${name}">Hello, World!</h1>
</body>
</html>
  1. 在控制器类中返回该模板:
package com.example.demo;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;

@Controller
public class ThymeleafController {

    @GetMapping("/")
    public String index(Model model) {
        model.addAttribute("name", "World");
        return "index";
    }
}

前后端分离开发简述

前后端分离是一种开发模式,前端负责页面展示,后端负责数据处理。在Spring Boot中,前端可以使用各种前端框架(如React、Vue.js等),后端使用Spring Boot提供API服务。这种方式使得前后端可以并行开发,提高开发效率。

项目打包与部署

在开发完成后,需要将Spring Boot应用打包,并部署到服务器上。

打包Spring Boot应用

  1. 在IDE中,打开终端,进入项目的根目录。
  2. 执行以下命令:
mvn clean package
  1. 打包完成后,会在target目录下生成一个*.jar文件,这是应用的可执行文件。

部署到Tomcat服务器

部署到Tomcat服务器之前,需要确保服务器已经安装并配置好Tomcat。

  1. 将打包好的*.jar文件上传到服务器上。
  2. 在Tomcat的bin目录下,执行以下命令启动应用:
java -jar /path/to/your/application.jar --server.port=8080

注意,可以通过设置-Dserver.port参数来指定应用运行的端口。

总结

通过本教程,我们学习了如何使用Spring Boot 3和JDK 17搭建后端开发环境,包括环境搭建、创建项目、核心概念介绍、常用功能开发、模板技术与Web开发、项目打包与部署等内容。希望这些内容能帮助你快速上手Spring Boot开发。如果你想深入了解Spring Boot,可以参考其官方文档,或者参加慕课网上的相关课程。

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消