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

【SpringBoot快速入门】(4)SpringBoot项目案例代码示例

目录

  • 1 创建工程
  • 3 配置文件
  • 4 静态资源

之前我们已经学习的Spring、SpringMVC、Mabatis、Maven,详细讲解了Spring、SpringMVC、Mabatis整合SSM的方案和案例,上一节我们学习了SpringBoot的开发步骤、工程构建方法以及工程的快速启动,从这一节开始,我们开始学习SpringBoot配置文件。接下来,我们逐步开始学习,本教程所有示例均基于Maven实现,如果您对Maven还很陌生,请移步本人的博文《如何在windows11下安装Maven并配置以及 IDEA配置Maven环境》
在这里插入图片描述
SpringBoot 到这就已经学习完毕,接下来我们将学习 SSM 时做的三大框架整合的案例用 SpringBoot 来实现一下。我们完成这个案例基本是将之前做的拷贝过来,修改成 SpringBoot 的即可,主要从以下几部分完成

  1. pom.xml
    配置起步依赖,必要的资源坐标(druid)
  2. application.yml
    设置数据源、端口等
  3. 配置类
    全部删除
  4. dao
    设置@Mapper
  5. 测试类
  6. 页面
    放置在resources目录下的static目录中

1 创建工程

创建 SpringBoot 工程,在创建工程时需要勾选 web 、 mysql 、 mybatis ,工程目录结构如下
在这里插入图片描述
由于我们工程中使用到了 Druid ,所以需要导入 Druid 的坐标

<dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.1.16</version>
</dependency>

2 代码拷贝
将 springmvc_11_page 工程中的 java 代码及测试代码连同包拷贝到 springboot_09_ssm 工程,按照下图进行拷贝
在这里插入图片描述
需要修改的内容如下:

  • Springmvc_11_page 中 config 包下的是配置类,而 SpringBoot 工程不需要这些配置类,所以这些可以直接删除
  • dao 包下的接口上在拷贝到 springboot_09-ssm 工程中需要在接口中添加 @Mapper 注解
  • BookServiceTest 测试需要改成 SpringBoot 整合 junit 的
@SpringBootTest
public class BookServiceTest {@Autowiredprivate BookService bookService;@Testpublic void testGetById(){Book book = bookService.getById(2);System.out.println(book);}@Testpublic void testGetAll(){List<Book> all = bookService.getAll();System.out.println(all);}
}

3 配置文件

在 application.yml 配置文件中需要配置如下内容

  • 服务的端口号
  • 连接数据库的信息
  • 数据源
server:port: 80
spring:datasource:type: com.alibaba.druid.pool.DruidDataSourcedriver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/ssm_db #?servierTimezone=UTCusername: rootpassword: root

4 静态资源

在 SpringBoot 程序中是没有 webapp 目录的,那么在 SpringBoot 程序中静态资源需要放在什么位置呢?
静态资源需要放在 resources 下的 static 下,如下图所示
在这里插入图片描述
为了方便大家学习,我两个案例的代码直接已上传到本页。大家可以在博文顶部下载学习

http://www.lryc.cn/news/264713.html

相关文章:

  • Linux服务器 部署飞书信息发送服务
  • 用C#也能做机器学习?
  • Python PDF格式转PPT格式
  • 搭建知识付费平台?明理信息科技为你提供全程解决方案
  • 漫谈UNIX、Linux、UNIX-Like
  • Netty Review - Netty与Protostuff:打造高效的网络通信
  • 在ClickHouse数据库中启用预测功能
  • 目标检测YOLO实战应用案例100讲-树上果实识别与跟踪计数(续)
  • Docker 文件和卷 权限拒绝
  • Appium Server 启动失败常见原因及解决办法
  • 将Abp默认事件总线改造为分布式事件总线
  • Jupyter Notebook修改默认工作目录
  • 高校/企业如何去做数据挖掘呢?
  • 数据仓库-数据治理小厂实践
  • 【C++多线程编程】(五)之 线程生命周期管理join() 与 detach()
  • 金融信贷场景的风险“要素”与主要“风险点”
  • ubuntu下docker安装,配置python运行环境
  • 在Docker中安装kafka遇到问题记录
  • aws-waf-cdn 基于规则组的永黑解决方案
  • 如何实现免费无限流量云同步笔记软件Obsidian?
  • GPTs | Actions应用案例
  • Python Opencv实践 - 手势音量控制
  • 关于Selenium的网页对象单元测试的设计模式
  • 基于多反应堆的高并发服务器【C/C++/Reactor】(上)
  • 腾讯云debian服务器的连接与初始化
  • 医保购药小程序:智能合约引领医疗数字革新
  • 神经网络:深度学习优化方法
  • Unity中Shader旋转矩阵(二维旋转矩阵)
  • 前端面试题(计算机网络):options请求方法及使用场景
  • 使用docker-compose管理docker服务