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

SpringBoot案例

SpringBoot案例

  • 5,案例
    • 5.1 创建工程
    • 5.2 代码拷贝
    • 5.3 配置文件
    • 5.4 静态资源

目标

  • 基于SpringBoot的完成SSM整合项目开发

5,案例

SpringBoot 到这就已经学习完毕,接下来我们将学习 SSM 时做的三大框架整合的案例用 SpringBoot 来实现一下。我们完成这个案例基本是将之前做的拷贝过来,修改成 SpringBoot 的即可,主要从以下几部分完成

  1. pom.xml

    配置起步依赖,必要的资源坐标(druid)

  2. application.yml

    设置数据源、端口等

  3. 配置类

    全部删除

  4. dao

    设置@Mapper

  5. 测试类

  6. 页面

    放置在resources目录下的static目录中


5.1 创建工程

创建 SpringBoot 工程,在创建工程时需要勾选 webmysqlmybatis,工程目录结构如下

由于我们工程中使用到了 Druid ,所以需要导入 Druid 的坐标

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

5.2 代码拷贝

springmvc_11_page 工程中的 java 代码及测试代码连同包拷贝到 springboot_09_ssm 工程,按照下图进行拷贝

需要修改的内容如下:

  • Springmvc_11_pageconfig 包下的是配置类,而 SpringBoot 工程不需要这些配置类,所以这些可以直接删除

  • dao 包下的接口上在拷贝到 springboot_09-ssm 工程中需要在接口中添加 @Mapper 注解

  • BookServiceTest 测试需要改成 SpringBoot 整合 junit

    @SpringBootTest
    public class BookServiceTest {
    
        @Autowired
        private BookService bookService;
    
        @Test
        public void testGetById(){
            Book book = bookService.getById(2);
            System.out.println(book);
        }
    
        @Test
        public void testGetAll(){
            List<Book> all = bookService.getAll();
            System.out.println(all);
        }
    }
    

5.3 配置文件

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

  • 服务的端口号
  • 连接数据库的信息
  • 数据源
server:
  port: 80

spring:
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/ssm_db #?servierTimezone=UTC
    username: root
    password: root

5.4 静态资源

SpringBoot 程序中是没有 webapp 目录的,那么在 SpringBoot 程序中静态资源需要放在什么位置呢?

静态资源需要放在 resources 下的 static 下,如下图所示


学习笔记 from 黑马程序员

By – Suki 2023/4/6


http://www.kler.cn/news/9443.html

相关文章:

  • 从零开始学架构——高性能缓存架构
  • 【前端面试专题】【5】Vue3
  • sqlmap使用(以sqli-lab为例)
  • 【Leetcode之路 | Java Python】两数之和(暴力枚举哈希表)
  • 基于发票增值税OCR API设计自动识别应用系统,从此解放财务双手
  • 【图像分割】Segment Anything(Meta AI)论文解读
  • 经典文献阅读之--Bidirectional Camera-LiDAR Fusion(Camera-LiDAR双向融合新范式)
  • Java -- System类和冒泡排序
  • SpringBoot集成ChatGPT实现AI聊天
  • 护眼灯真的可以保护眼睛吗?推荐五款达到护眼级别的灯
  • SVN
  • C/C++每日一练(20230412)
  • 全国青少年信息素养大赛Python编程挑战赛初赛试题说明
  • AI助手帮你轻松做好Imagenet数据集重命名与复制
  • 本明杰富兰克林自律十三条
  • 【NLP入门教程】三、词性标注
  • KNN、SVM、MLP、K-means分类实验
  • chapter-4-数据库语句
  • 一般形式的S曲线公式推导
  • 项目的总结
  • OpenCV基础之边缘检测与轮廓描绘
  • VScode 自动格式化配置
  • 【启动图片与控制器大小的关系 Objective-C语言】
  • Vite构建Vue3项目
  • PHP请求商品详情类API接口( 获得淘宝商品详情, 获得淘宝商品详情高级版,获得淘宝商品评论, 获得淘宝商品快递费用
  • 存量市场之下,电商之战深入腹地且逻辑未变
  • 针对近日ChatGPT账号大批量封禁的理性分析
  • 前端测试指南:Vue3 测试工具介绍与使用
  • mysql date/datetime/timestamp and timezone
  • 模拟Redisson获取锁 释放锁 锁续命