Spring Boot详解创建和运行基础流程

Spring Boot是一个轻量级的Java开发框架,可以快速构建可独立运行的Spring应用程序,使得Spring应用程序的开发变得更加容易、更加快捷。下面是Spring Boot创建和运行基础流程的详细攻略。

创建Spring Boot项目

创建Spring Boot项目的最简单的方法是通过Spring官网提供的 Spring Initializr,该工具可以轻松生成Spring Boot项目的基础结构。在Spring Initializr页面,选择所需的项目选项,填写项目配置信息,然后点击“Generate”按钮即可下载生成的工程代码。

运行Spring Boot项目

通过Spring Initializr生成的Spring Boot项目,可以通过如下两种方式运行:

命令行方式运行

通过命令行的方式可以很方便地启动Spring Boot应用程序。进入项目的根目录,使用Maven或Gradle执行以下命令即可启动应用程序:

mvn spring-boot:run

gradle bootRun

在应用程序启动后,可以使用浏览器访问http://localhost:8080来查看应用程序的欢迎页面。

打包方式运行

在命令行使用Maven或Gradle,使用以下命令打包Spring Boot应用程序:

mvn package

gradle build

打包完成后,使用以下命令在命令行窗口中启动Spring Boot应用程序:

java -jar target/xxx.jar

其中xxx.jar是通过打包生成的工程文件名称。

Spring Boot示例

下面提供两个Spring Boot项目示例以供参考。

示例1:通过Spring Initializr创建简单的Web应用程序

在Spring Initializr页面选择以下配置信息:

  • Project:Maven Project
  • Language:Java
  • Spring Boot:2.5.4
  • Packaging:Jar
  • Java:11
  • Dependencies:
  • Spring Web
  • Thymeleaf

然后点击“Generate”按钮下载生成的项目代码。

打开生成的项目代码,在IDEA或Eclipse等Java IDE中打开src/main/java/com/example/demo/DemoApplication.java文件,添加如下代码:

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

@RestController
public class HelloController {
    @GetMapping("/")
    public String hello() {
        return "Hello world!";
    }
}

保存文件后,在命令行中执行mvn spring-boot:run,控制台上会输出”Started DemoApplication…”的日志信息。在浏览器中访问http://localhost:8080,可以看到输出了“Hello world!”的文本信息。

示例2:在Spring Boot中使用Mybatis-Plus

在Spring Initializr页面选择以下配置信息:

  • Project:Maven Project
  • Language:Java
  • Spring Boot:2.5.4
  • Packaging:Jar
  • Java:11
  • Dependencies:
  • Spring Web
  • Spring Boot DevTools
  • Mybatis Framework
  • Mybatis-Plus

然后点击“Generate”按钮下载生成的项目代码。

打开生成的项目代码,在src/main/resources路径下创建application.yml文件,并配置如下内容:

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/test?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8&useSSL=false
    username: root
    password: root
    driver-class-name: com.mysql.cj.jdbc.Driver
mybatis-plus:
  mapper-locations: classpath:/mapper/*.xml

其中spring.datasource是数据库连接相关的配置信息,mybatis-plus.mapper-locations用于指定Mybatis-Plus的XML映射文件所在位置。

接下来,创建一个实体类com.example.demo.entity.User,表示数据库表user的映射:

@Data
@TableName("user")
public class User {
    @TableId(type = IdType.AUTO)
    private Integer id;
    private String name;
    private Integer age;
    private String email;
}

com.example.demo.mapper包下创建UserMapper.java文件,定义如下Mapper接口:

public interface UserMapper extends BaseMapper<User> {

}

src/main/resources/mapper目录下创建UserMapper.xml文件并添加如下内容:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.demo.mapper.UserMapper">
    <select id="selectById" resultType="com.example.demo.entity.User">
        select * from user where id = #{id}
    </select>

    <insert id="insert" parameterType="com.example.demo.entity.User">
        insert into user (name, age, email)
        values (#{name}, #{age}, #{email})
    </insert>
</mapper>

然后,在com.example.demo下创建DemoApplication.java文件,并添加如下内容:

@SpringBootApplication
@MapperScan("com.example.demo.mapper")
public class DemoApplication {
    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}

启动应用程序后,调用UserMapper接口进行数据操作,如下所示:

@RestController
public class UserController {
    @Autowired
    private UserMapper userMapper;

    @GetMapping("/users/{id}")
    public User getUserById(@PathVariable Integer id) {
        return userMapper.selectById(id);
    }

    @PostMapping("/users")
    public User addUser(@RequestBody User user) {
        userMapper.insert(user);
        return user;
    }
}

以上就是使用Mybatis-Plus开发的Spring Boot项目示例。运行该项目后,可以在浏览器中访问http://localhost:8080/users/1来获取id为1的用户信息。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Spring Boot详解创建和运行基础流程 - Python技术站

(0)
上一篇 2023年5月19日
下一篇 2023年5月19日

相关文章

  • java开发中遇到的异常汇总详解

    Java开发中遇到的常见异常汇总详解 1. 空指针异常 空指针异常是Java开发中最常见的异常之一,它通常发生在尝试调用空对象的方法或访问空对象的成员变量时。 可以通过以下代码来模拟: String str = null; System.out.println(str.length()); 这段代码试图计算空字符串的长度,但由于str为null,因此会抛出空…

    Java 2023年5月20日
    00
  • maven中心仓库OSSRH使用简介(推荐)

    Maven中心仓库OSSRH使用简介(推荐) 如果你是一位Maven项目的开发者,那么你一定会遇到需要将你的项目打包上传到Maven中央仓库的情况。Maven中央仓库是Maven项目的官方仓库,大多数的第三方依赖库都可以在Maven中央仓库上找到。然而,如果你是一个独立的开发者或者组织,你不一定能够将你的项目上传到Maven中央仓库,那么你需要寻找其他的Ma…

    Java 2023年5月19日
    00
  • 分析jackjson的安全漏洞CVE-2019-14379

    分析Jackjson的安全漏洞CVE-2019-14379可以通过以下几个步骤: 1.了解CVE-2019-14379漏洞的背景和影响 CVE-2019-14379是一个由Jackson-databind 库的反序列化漏洞引发的安全问题。这种漏洞可以让攻击者远程执行任意代码,从而导致服务器遭到攻击、数据丢失或泄露。 2.检查自己的应用程序是否受到漏洞的影响 …

    Java 2023年5月26日
    00
  • SpringMVC拦截器配置及运行流程解析

    SpringMVC拦截器配置及运行流程解析 前言 在 SpringMVC 中,拦截器是非常重要的一个组件之一,它可以拦截来自浏览器的请求并进行相应的处理,如登录认证、日志记录、性能监控等。本文将详细阐述 SpringMVC 拦截器的配置及运行流程,并提供两条示例说明,帮助读者更好地理解和应用拦截器。 拦截器的配置 在 SpringMVC 中,拦截器的配置是通…

    Java 2023年5月16日
    00
  • Maven Repository仓库的具体使用

    我来为您详细讲解 Maven Repository 仓库的使用攻略。 什么是 Maven Repository Maven Repository(Maven 仓库)是 Maven 使用的一个非常重要的概念。在 Maven 中,一个项目的构建过程中需要用到各种依赖(如 Jar 包、第三方库等),而这些依赖通常可以从 Maven 仓库中获取。Maven 仓库是存…

    Java 2023年5月20日
    00
  • Java异常处理中的try-with-resources语句如何使用?

    Java异常处理中的try-with-resources语句是一种方便且高效的方式来自动管理资源确保它们被正确关闭以释放系统资源。该语句可用于处理带有closable接口的资源对象和实现了AutoCloseable接口的资源对象。 基本语法如下: try (资源初始化语句; 资源初始化语句 …) { // 可能抛出异常的代码区域 } catch (异常类…

    Java 2023年4月27日
    00
  • Java项目实现定时任务的三种方法

    Java项目实现定时任务的三种方法 在Java项目中,我们经常需要实现一些定时任务,比如定时发送邮件、定时备份数据等。本文将介绍实现定时任务的三种常见方法,分别是使用Java内置的Timer类、使用Spring的@Scheduled注解和使用Quartz框架。 方法一:使用Java内置的Timer类 Java内置的Timer类是一个非常方便的定时任务实现方式…

    Java 2023年5月18日
    00
  • 如何基于java实现Gauss消元法过程解析

    如何基于Java实现Gauss消元法过程解析 什么是Gauss消元法? Gauss消元法,也叫高斯消元法,是一种线性方程组解法。它的基本思想是通过线性方程组的初等变换,将方程组化为一个阶梯形的简化的方程组,由此得到方程组的解。 Gauss消元法的原理 对于一个有n个未知数的线性方程组,它可以表示为Ax=b的形式,其中A是一个n阶矩阵,b是n维列向量,x是n维…

    Java 2023年5月19日
    00
合作推广
合作推广
分享本页
返回顶部