前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >T系列讲解1笔记:后端所用依赖解析

T系列讲解1笔记:后端所用依赖解析

作者头像
Designer 小郑
发布2024-06-12 08:20:47
1160
发布2024-06-12 08:20:47
举报
文章被收录于专栏:跟着小郑学JAVA跟着小郑学JAVA

目录

  • 一、基于Maven构建的SpringBoot项目
    • 1.1 项目介绍
    • 1.2 pom.xml 文件
  • 二、项目所需依赖
    • 2.1 spring-boot-starter-web
    • 2.2 mybatis-spring-boot-starter
    • 2.3 spring-boot-starter-jdbc
    • 2.4 mysql-connector-java
    • 2.5 shiro-spring
    • 2.6 mybatis-plus
    • 2.7 mybatisplus-spring-boot-starter
    • 2.8 protobuf-java
    • 2.9 commons-lang3
    • 2.10 validation-api
    • 2.11 commons-io
    • 2.12 hutool-all
    • 2.13 fastjson
    • 2.14 java-sdk

一、基于Maven构建的SpringBoot项目

1.1 项目介绍

基于Maven构建的SpringBoot项目是一种使用Maven作为构建工具,SpringBoot作为框架的项目。SpringBoot是一个开源的Java框架,用于简化Spring应用程序的创建和开发过程。Maven是一个项目管理和构建自动化工具,用于Java项目的构建、依赖管理和文档生成。

代码语言:javascript
复制
├── src
│   ├── main
│   │   ├── java/cn/zwz/demo
│   │   │   ├── ZwzApplication.java
│   │   │   └── ...
│   │   └── resources
│   │       ├── application.yml
│   │       └── ...
│   └── test
│       ├── java/cn/zwz/demo
│       │   └── ...
│       └── resources
└── pom.xml

1.2 pom.xml 文件

pom.xml 是Maven项目的配置文件,定义了项目的依赖、插件等信息。Spring Initializr生成的项目已经包含了基本的配置。

在这里插入图片描述
在这里插入图片描述

Spring Boot是一个基于Spring框架的项目,它简化了基于Spring的应用开发。在Spring Boot项目中,pom.xml文件是Maven项目的配置文件,用于定义项目的构建、依赖和其他配置。

  1. 项目坐标:定义项目的groupId、artifactId和version。这些是项目的唯一标识符。
代码语言:javascript
复制
<groupId>com.example</groupId>
<artifactId>demo</artifactId>
<version>1.0-SNAPSHOT</version>
  1. 模型版本:指定Maven使用的模型版本,通常是4.0.0。
代码语言:javascript
复制
<modelVersion>4.0.0</modelVersion>
  1. 打包方式:定义项目的打包方式,如JAR或WAR。
代码语言:javascript
复制
<packaging>jar</packaging>
  1. 依赖管理:列出项目所需的所有依赖项。Spring Boot项目通常包括Spring Boot Starter依赖,如spring-boot-starter-web用于构建Web应用程序。
代码语言:javascript
复制
<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <!-- 其他依赖 -->
</dependencies>
  1. Spring Boot Maven 插件:用于打包和运行Spring Boot应用程序的插件。
代码语言:javascript
复制
<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>
  1. 属性:定义一些常用的属性,如Java版本。
代码语言:javascript
复制
<properties>
    <java.version>1.8</java.version>
</properties>
  1. 父项目:如果项目是基于Spring Boot的父项目构建的,可以在这里指定父项目的坐标。
代码语言:javascript
复制
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.5.5</version>
</parent>
  1. 插件和构建配置:定义项目的构建配置,如资源过滤、编译器设置等。
代码语言:javascript
复制
<build>
    <resources>
        <!-- 资源配置 -->
    </resources>
    <plugins>
        <!-- 插件配置 -->
    </plugins>
</build>

这些是pom.xml文件中的主要部分,根据项目需求,可能还会有其他配置,在Spring Boot项目中,pom.xml文件通常已经包含了大部分所需的配置,使得项目构建和依赖管理变得非常简单。

二、项目所需依赖

2.1 spring-boot-starter-web

Spring Boot Starter Web 是一个用于构建基于 Spring 的 Web 应用程序的依赖项,它自动配置了嵌入式 Tomcat 或 Jetty 服务器,以及 Spring MVC 和 Spring WebFlux 框架。这个依赖项简化了 Web 应用程序的配置和开发过程,提供了对 RESTful API、WebSocket 和其他 Web 服务的支持。通过使用 Spring Boot Starter Web,开发者可以快速搭建起一个功能完备的 Web 应用程序,而无需手动配置大量的 XML 或 Java 配置文件。此外,它还整合了其他常用的库,如 Jackson 用于 JSON 处理、Thymeleaf 用于模板渲染等,进一步简化了开发工作。

2.2 mybatis-spring-boot-starter

MyBatis-Spring-Boot-Starter 是一个集成了 MyBatis 和 Spring Boot 的依赖库,它简化了在 Spring Boot 应用程序中使用 MyBatis 的配置和集成过程。这个依赖库提供了自动配置功能,使得开发者可以轻松地将 MyBatis 与 Spring Boot 应用程序结合使用,而无需手动配置数据源、事务管理器等。通过使用 MyBatis-Spring-Boot-Starter,开发者可以更加专注于业务逻辑的实现,提高开发效率。此外,它还支持 MyBatis 与 Spring Data JPA 的集成,使得开发者可以在同一个应用程序中同时使用 MyBatis 和 Spring Data JPA。

2.3 spring-boot-starter-jdbc

Spring Boot Starter JDBC 是一个用于简化 Spring Boot 应用程序中 JDBC 配置的依赖。它自动配置了数据源和 JdbcTemplate,使得开发者可以轻松地使用 JDBC 进行数据库操作。这个依赖包含了 JDBC API、数据库连接池(如 HikariCP、Tomcat JDBC 或 Apache DBCP2)和 Spring 的 JdbcTemplate。通过添加这个依赖,Spring Boot 会自动配置数据源和事务管理器,开发者只需在 application.properties 或 application.yml 文件中配置数据库连接信息,即可快速开始使用 JDBC 进行数据库操作。

2.4 mysql-connector-java

MySQL Connector/J 是一个用于连接 Java 应用程序和 MySQL 数据库的 JDBC 驱动程序,它提供了一个简单易用的 API,允许开发者在 Java 应用程序中执行 SQL 语句、事务和存储过程等操作。这个驱动程序遵循 JDBC 4.0 规范,支持自动重连、连接池、SSL 加密等高级功能。

2.5 shiro-spring

Shiro-Spring依赖是一个集成了Apache Shiro安全框架与Spring框架的库,它允许开发者在Spring应用程序中轻松地实现认证、授权、会话管理和安全策略等功能。通过使用shiro-spring依赖,开发者可以利用Shiro提供的丰富安全特性,同时保持Spring框架的灵活性和易用性。这个依赖简化了在Spring项目中集成Shiro的过程,使得开发者可以更加专注于业务逻辑的实现,而不必过多地关注底层的安全细节。使用shiro-spring依赖,可以提高开发效率,降低安全风险,并确保应用程序的安全性。

2.6 mybatis-plus

MyBatis-Plus 是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。它继承了 MyBatis 的所有特性,同时加入了强大的功能,如自动填充、乐观锁、逻辑删除、性能分析等。MyBatis-Plus 的依赖主要包括:mybatis-plus-boot-starter(核心依赖)、mybatis-plus-extension(提供扩展功能,如分页插件、性能分析插件等)、mybatis-plus-annotation(提供注解支持,方便在实体类和 Mapper 接口上使用 MyBatis-Plus 功能)以及 mybatis-plus-core(提供 MyBatis-Plus 的核心功能实现)。使用 MyBatis-Plus 可以大大简化数据库操作,提高开发效率。

2.7 mybatisplus-spring-boot-starter

MyBatis-Plus-Spring-Boot-Starter 是一个集成了 MyBatis-Plus 和 Spring Boot 的依赖库,它简化了在 Spring Boot 项目中使用 MyBatis-Plus 的配置和使用过程。MyBatis-Plus 是一个 MyBatis 的增强工具,提供了诸如自动填充、性能分析、逻辑删除等高级功能,使得开发者在使用 MyBatis 时更加便捷高效。通过引入 MyBatis-Plus-Spring-Boot-Starter 依赖,开发者可以快速地将 MyBatis-Plus 集成到 Spring Boot 项目中,实现对数据库的高效操作和管理。

2.8 protobuf-java

Protobuf-java依赖是Google Protocol Buffers(简称Protobuf)的一个Java实现,它允许开发者使用一种与语言无关的格式来序列化结构化数据。Protobuf是一种灵活、高效的数据交换格式,广泛应用于数据存储、通信协议等领域。在Java项目中,引入protobuf-java依赖可以方便地实现跨平台、跨语言的数据交换。

2.9 commons-lang3

commons-lang3是一个功能强大的Java开源库,由Apache软件基金会开发和维护。它提供了许多用于处理字符串、数字、日期、集合等常见编程任务的工具类和方法。这个库的主要目的是简化Java开发,提高代码的可读性和可维护性。commons-lang3包含了诸如StringUtils、NumberUtils、DateUtils、ArrayUtils等实用工具类,它们提供了丰富的静态方法,使得处理各种数据类型变得更加简单。此外,commons-lang3还包含了一些用于对象比较、反射操作、异常处理等方面的功能,使得Java开发者能够更加高效地编写代码。

2.10 validation-api

Validation API 是 Java EE 规范的一部分,它提供了一组注解和接口,用于在 Java 应用程序中实现数据验证。Validation API 允许开发者通过使用 JSR 380 规范定义的约束注解(如 @NotNull、@Size、@Email 等)来声明性地指定验证规则,然后使用 Validator 接口对 JavaBean 对象进行验证。Validation API 支持自定义验证器,可以轻松地扩展和自定义验证逻辑。它还与 Bean Validation 1.1 规范兼容,可以与 Hibernate Validator 等第三方验证器库一起使用。在 Java Web 应用程序中,Validation API 可以与 Servlet API、JAX-RS 和其他 Java EE 技术无缝集成,为应用程序提供一致且可维护的数据验证机制。

2.11 commons-io

commons-io是一个Java开源库,由Apache软件基金会提供,主要用于简化文件和IO操作。它提供了许多实用的工具类和方法,如文件复制、文件比较、文件内容查找等,使得文件操作更加简单和高效。commons-io依赖广泛应用于Java项目中,特别是在需要处理文件和IO操作的场景下。通过使用commons-io库,开发者可以避免编写重复的代码,提高开发效率,同时保证代码的可读性和可维护性。

2.12 hutool-all

Hutool是一个Java工具类库,提供了丰富的工具类,包括日期时间、文件操作、加密解密、HTTP客户端等。hutool-all是一个包含Hutool所有模块的依赖,可以方便地在项目中引入。使用hutool-all可以大大简化开发过程,提高开发效率。

2.13 fastjson

Fastjson是一个Java语言编写的高性能功能完善的JSON库,用于将Java对象转换为JSON格式的字符串,以及将JSON格式的字符串解析为Java对象。Fastjson具有快速解析、低内存消耗、丰富的数据类型支持等特点,广泛应用于Web开发、移动应用、大数据处理等领域。

2.14 java-sdk

百度人工智能Java SDK提供了丰富的API,支持多种AI功能,如语音识别、语音合成、图像识别、自然语言处理等

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-06-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、基于Maven构建的SpringBoot项目
    • 1.1 项目介绍
      • 1.2 pom.xml 文件
      • 二、项目所需依赖
        • 2.1 spring-boot-starter-web
          • 2.2 mybatis-spring-boot-starter
            • 2.3 spring-boot-starter-jdbc
              • 2.4 mysql-connector-java
                • 2.5 shiro-spring
                  • 2.6 mybatis-plus
                    • 2.7 mybatisplus-spring-boot-starter
                      • 2.8 protobuf-java
                        • 2.9 commons-lang3
                          • 2.10 validation-api
                            • 2.11 commons-io
                              • 2.12 hutool-all
                                • 2.13 fastjson
                                  • 2.14 java-sdk
                                  相关产品与服务
                                  云数据库 MySQL
                                  腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
                                  领券
                                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档