当前位置: 首页 > article >正文

Spring Boot快速开发

主要特点

  1. 简化配置:通过自动配置和起步依赖简化项目配置过程

  2. 集成性强:提供大量特性和功能(Servlet容器:Tomcat、Jetty、Undertow;健康检查;指标监控等)、整合库和框架(Spring Data、Spring Security等)

  3. 微服务支持:通过Spring Cloud进行微服务架构的开发,集成服务发现、配置中心、负载均衡等

  4. 内嵌服务器:将应用程序打包成一个可执行的JAR文件,内置Servlet容器(无需部署到外部应用服务器)

  5. 生态丰富:各种扩展和插件

项目结构

  1. Service层:具体实现业务逻辑,具体操作

  2. Data Access层:直接访问数据库的代码(Mybatis)。

    • 数据库是关系型,java是面向对象的,需要将关系型的数据库表结构转化成面向对象的对象

开始

初始化一个springboot应用

  1. Spring Initializr

  2. 依赖:Spring Web、Spring Data JPA(对访问数据库的抽象)、MySQL Driver

idea中springboog文件结构

  1. idea:包含配置文件,ide自动生成

    1. .gitignore:指定的文件被git版本控制系统忽略

    2. compiler.xml:编译器设置

    3. encoding.xml:编码格式设置

    4. jarTepositories.xml:项目依赖的Maven仓库地址

    5. misc.xml:杂项配置(语言级别、模块设置等)

    6. workspace.xml:工作区设置(打开的编译器标签、运行配置等)

  2. .mvn:Maven包装器(Wrapper)的配置文件,未安装Maven时可以使用特定版本的Maven

    1. maven-wrapper.properties:Maven包装器使用的Maven版本

  3. src:项目的源代码目录,包含Java代码和资源文件

    1. main:主要源代码和资源文件

      • java:源代码

        • com.smarthome.smarthonecontrol:项目的Java包

          • XXApplication:应用程序的主类,启动应用程序

    2. resources:项目的资源文件(静态文件、模板文件、配置文件等)

      • static:静态资源文件(CSS、JavaScript、图片等)

      • templates:模板文件(Thymeleaf、freemarker模板)

      • application.properties:配置文件(配置应用程序的属性,如数据库连接、服务器端口等)

    3. test:测试代码

      1. java:测试源代码

  4. .gitattributes:指定Git如何处理某些文件(文本文件的换行符)

  5. HELP.md:Mrakdown文件,项目的帮助信息或使用说明

  6. mvnw:Maven包装器的脚本文件,在Unix系统上运行

  7. mvnw.cmd:在Windows系统上运行

  8. pom.xml:Maven项目的核心配置文件(项目的依赖、插件、构建配置等)

  9. 外部库:项目依赖的所有外部库

  10. 临时文件和控制台:临时文件和控制台输出(调试、日志记录)

数据库

  1. 未创建数据库就想要运行时,需要在pom.xml文件中将相关依赖注释掉

     <dependency>            <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-data-jpa</artifactId>
     </dependency>
  2. 在mysql里面创建数据库

项目基本结构

idea代码

  1. 创建一个dao包:数据访问层的包

    • JPA(Java Persistence API):一种标准化的方式来管理 Java 对象与数据库之间的映射关系

    • 对每个数据库的表创建一个类User(Entity)和一个接口UserRepository

  2. 创建一个service包

    • UserService接口:实现方法、功能

    • UserServiceImpl类:实现UserService接口的方法,具体实现逻辑。(唯一性检查)

  3. 创建一个controller包

    • 里面写各个方法、功能的路径

  4. 创建一个dto包:展示访问前端的对象。把数据库的对象转化为需要返回给前端的对象

    • 添加验证注解

  5. 创建一个converter包:用于UserDTO和User实体之间进行转换

    • converter类中需要将 User 实体转换为 UserDTO、将 UserDTO 转换为 User 实体

    • 对Impl类进行修改(返回的对象变成DTO)

    • 对controller类进行修改

  6. 创建Response类:统一后端接口的格式

    • 对controller类里面进行修改

apifox

  • 填写相关请求

  • controller类里面相关请求路由

  • impl类中里面相关请求的功能

  • 运行:检测请求是否有误

打包项目

  • 终端:mvn clean install(build success则打包成功)

  • 在target文件夹里面会出现一个jar包,copy其路径

  • 打包完成后,运行生成的 JAR 文件

     java -jar your-project-name.jar

rest api规范

路径

  1. 又称“终点”,表示api具体网址

  2. 在restful架构中,每个网址代表一种资源

  3. 网址中只能有名词,所用的名词往往与数据库的表格名对应

Http动词

  • GET(SELECT):从服务器取出资源

  • POST(CREATE):在服务器新建资源

  • PUT(UPDATE):在服务器更新资源(客户端提供改变后的完整资源)

  • PATCH(UPDATE):在服务器更新资源(客户端提供改变的属性)

  • DELETE(DELETE):在服务器删除资源


http://www.kler.cn/a/539252.html

相关文章:

  • Linux 安装 Ollama
  • 【时时三省】(C语言基础)基础习题1
  • 增量hdfs数据追平
  • Gitlab中如何进行仓库迁移
  • 【网络安全.渗透测试】Cobalt strike(CS)工具使用说明
  • QML 和 Qt Quick 介绍
  • python migate执行报错
  • 山东大学软件学院人机交互期末复习笔记
  • android的DataBinding的使用
  • 【CubeMX-HAL库】STM32F407—无刷电机闭环控制
  • 【WebSocket探秘】解锁 WebSocket:开启实时交互新境界
  • React 实现自定义进度条(类似于ant design中的progress)
  • Log4j2在Spring项目中的集成与应用
  • 深度求索(DeepSeek)的AI革命:NLP、CV与智能应用的技术跃迁
  • 论文阅读:MGMAE : Motion Guided Masking for Video Masked Autoencoding
  • Deepseek的MLA技术原理介绍
  • C++实现黑白棋小游戏
  • Python和JavaScript在字符串比较上的差异
  • 高性能分布式全局ID生成器-雪花算法实现
  • 【设计模式】【行为型模式】模板方法模式(Template Method)
  • DeepSeek-R1 智能知识库系统使用指南
  • 上拉触底案例
  • 使用docker搭建FastDFS文件服务
  • 探头特征点创建
  • 数据库5(MySQL版)
  • Spring Boot单元测试实战指南