在 Spring 中配置特定的内存数据库用于测试目的

2024-04-20

我该如何配置我的春季启动应用程序,以便当我运行时单元测试它将使用在记忆中数据库如H2/HSQL但当我跑步时春季启动应用程序它将使用生产数据库PostgreSQL/MySQL ?


为此可以使用弹簧型材。这将是一种具体的方式:

具有特定于环境的属性文件:

应用程序属性:

spring.profiles.active: dev

应用程序-dev.properties

spring.jpa.database: MYSQL
spring.jpa.hibernate.ddl-auto: update

spring.datasource.url: jdbc:mysql://localhost:3306/dbname
spring.datasource.username: username
spring.datasource.password: password

应用程序测试.properties

spring.jpa.database: HSQL

两者都有MySQL and H2司机在pom.xml, 像这样:

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <scope>runtime</scope>
</dependency>

<dependency>
    <groupId>org.hsqldb</groupId>
    <artifactId>hsqldb</artifactId>
    <scope>test</scope>
</dependency>

最后但并非最不重要的一点是,用注释测试类@ActiveProfiles("test").

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Spring 中配置特定的内存数据库用于测试目的 的相关文章

随机推荐

  • 计算机状态(睡眠、休眠、锁定等) Windows 10

    我需要检查当前状态 计算机的 休眠 睡眠 待机锁定等 我只是想问一下如何使用C 获取我的计算机的当前状态 我已经通过检测 LockApp 进程知道计算机何时被锁定 但我无法知道它是否处于睡眠模式或休眠模式 我想尝试一个将使用任务计划程序运行
  • Solr 管理控制台中模式浏览器屏幕中的字段

    上面是特定索引的架构浏览器屏幕的屏幕截图 该字段是品牌 字段类型定义如下
  • 属性“user”在类型“Request>”上不存在

    请帮助 我收到此错误 src app middlewares authentication ts 16 17 error TS2339 Property user does not exist on type Request
  • css 旋转与过渡似乎会影响其他元素的不透明度?

    我遇到了使用 1s 过渡通过 CSS3 变换旋转 DIV 的问题 在 OSX 10 7 5 上的 Chrome 23 和 Safari 6 中 在 rotate divs 转换期间 其他容器中的字体会稍微变暗 关于造成这种情况的原因以及如何
  • 当前位置权限对话框消失得太快

    我的应用程序获取用户位置 获取坐标 并提供往返目的地或出发地的距离 所有这些可能的目的地都显示在表格视图中 因此我在填充表格的同时获取用户坐标 唯一的问题是 询问用户位置的警报视图出现然后消失得如此之快 以至于无法单击它 有什么方法可以在应
  • 使用 openmp 优化 N-queen

    我正在学习 OPENMP 并编写以下代码来解决 n 皇后问题 Full Code https github com Shafaet Codes blob master OPENMP Parallel 20N Queen 20problem
  • 如何调整 CWnd 内 WPF 控件的大小?

    我正在托管 WPFUserControlMFC 内部CWnd 它工作得很好 我现在需要弄清楚如何与其父控件一起调整控件的大小 我已经迷上了OnSize我正在打电话GetWindowRect并将结果设置为我的控件 如下所示 void CChi
  • Spark任务仅在一个执行器上运行

    大家好 首先我知道这个线程的存在 Spark 中的任务仅在一个执行器上运行 https stackoverflow com questions 53425983 task is running on only one executor in
  • 如何在 Angular ui-router 中禁用静态 url?

    我有两个 ui routerstates在我的角度应用程序中 效果很好 如下所示 app config stateProvider function stateProvider stateProvider state settings ur
  • Python..将bin/hex文件转换为txt文件

    我想在python中将bin文件转换为txt文件 with open atb bin rb as file data file read 8 datastring str data print datastring print join s
  • SQL Server 2012 列标识增量在第 7 个条目上从 6 跳到 1000+ [重复]

    这个问题在这里已经有答案了 我有一个奇怪的场景 其中 SQL Server 2012 数据库中的 auto Identity int 列没有正确递增 假设我有一个使用 int auto 标识作为主键的表 它偶尔会跳过增量 例如 1 2 3
  • 在模态和非模态情况下重用 UIViewController

    我有一个 UIViewController 让我们称之为 FormController 它只是一个编辑对象的表单 我想在两种不同的情况下使用它 创建一个新对象 使用 UINavigationController 的presentModalV
  • 离开网站时弹出

    我遇到了 JavaScript 问题 我想要一个脚本 该脚本将在退出整个网站时弹出一条带有问题的消息 如果访问者回答 否 则网页将关闭 如果他回答 是 他将被重定向到另一个页面 我找到了一个例子http www pgrs net 2008
  • xcode CollectionViewController rollToItemAtIndexPath 不工作

    我创建了一个CollectionView控制并用图像填充它 现在我想在开始时滚动到特定索引处的项目 我已经尝试过scrollToItemAtIndexPath如下 self myFullScreenCollectionView scroll
  • 无偏返回 n 个随机正数 (>=0) 的列表,使得它们的总和 == 总和

    我正在寻找一种算法或建议来改进我的代码以生成随机数列表 这些随机数的总和等于某个任意数 对于下面的代码 它总是有偏差 因为第一个数字往往会更高 有没有办法让选号更高效 usr bin python Generate a list of nu
  • 使用 sed 替换 shell 脚本中的特殊字符

    我正在尝试编写一个 shell 脚本 它将替换我使用 sed 选择的任何字符 字符串 我的第一次尝试除了特殊字符之外都有效 我一直在尝试使用 sed 来修复特殊字符 以便它们也能被搜索或替换 我决定简化脚本以进行测试 只处理一个有问题的角色
  • OpenGL:多个顶点的单个顶点属性?

    我有一个接受以下属性的顶点着色器 a posCoord 顶点位置 a texCoord 纹理坐标 传递给片段着色器 a alpha 透明度因子 传递给片段着色器 我正在渲染的对象都是 广告牌 一对直角三角形组成一个矩形 我正在使用一次调用g
  • 使用 TopMost = true 打开 WinForms 表单但不让它抢走焦点?

    我有一个在用户屏幕上弹出的表单 并且有TopMost true 但它抢走了焦点 我怎样才能得到它not当它第一次出现时就抢走了焦点 这对我有用 它提供了 TopMost 但没有焦点窃取 protected override bool Sho
  • 为什么将 static libcurl.a 添加到 xcode 7.2 示例项目中会添加 libcurl.4.dylib 依赖项

    我一直试图通过将 libcurl a 添加到我的 Xcode 7 2 项目来消除对 libcurl 4 dylib 的任何依赖 我构建了一个全新的 libcurl 并将其放置在 usr local lib 中 标头位于 usr local
  • 在 Spring 中配置特定的内存数据库用于测试目的

    我该如何配置我的春季启动应用程序 以便当我运行时单元测试它将使用在记忆中数据库如H2 HSQL但当我跑步时春季启动应用程序它将使用生产数据库PostgreSQL MySQL 为此可以使用弹簧型材 这将是一种具体的方式 具有特定于环境的属性文