如何使用 Spring 测试模拟的 JNDI 数据源?

2023-12-06

我对 Spring 相当陌生,想知道如何创建使用模拟数据源的 JUnit 测试以及如何使用 JNDI 上下文?目前,我的应用程序使用 Tomcat 中的 JNDI 上下文来检索连接,并通过该连接从数据库中检索数据。所以我想我需要模拟 JNDI 调用和数据检索。任何关于解决这个问题的最佳方法的好建议都会很棒!多谢!


您可以使用 SimpleNamingContextBuilder 使 jndi 数据源可用于您的测试:

    SimpleNamingContextBuilder builder = new SimpleNamingContextBuilder();
    builder.bind("java:comp/env/jdbc/mydatasource", dataSource);
    builder.activate();

https://fisheye.springsource.org/browse/spring-framework/spring-test/src/main/java/org/springframework/mock/jndi/SimpleNamingContextBuilder.java?hb=true

这不完全是mocking数据源,但它确实使数据源可以通过 jndi 进行测试。

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

如何使用 Spring 测试模拟的 JNDI 数据源? 的相关文章

随机推荐

  • Pandas 获取每组中最上面的 n 条记录

    假设我有这样的 pandas DataFrame df pd DataFrame id 1 1 1 2 2 2 2 3 4 value 1 2 3 1 2 3 4 1 1 看起来像 id value 0 1 1 1 1 2 2 1 3 3
  • 为什么该段落没有浮动在个人资料图片旁边?

    不知何故 该段落没有漂浮在个人资料图片旁边 它从个人资料图片的底部开始 我不明白为什么 这里有什么错误呢 content margin top 30px margin left 20px padding bottom 20px infoBi
  • 64 位 Windows 中与 Access 数据库的 ODBC 连接

    我在用本教程创建从 java 应用程序到 Microsoft Access 2010 数据库的数据库连接 本教程在 Windows 中创建一个系统 dsn 然后使用以下 java 代码行连接到该系统 dsn Connection conn
  • 获取该月下一个第 n 天的日期时间

    如果给定一个日期和一个变量 n 我如何计算该月的某一天将是第 n 个日期的日期时间 例如 今天是 6 月 17 日 我想要一个函数 当提供 15 时 它会返回 7 月 15 日的日期时间 再举几个例子 今天是 2 月 26 日 如果提供 3
  • nmake 根据目标修改宏

    我有一个 Makefile mak 我可以选择从基于 C 的源代码创建 test exe 或 DLL 我正在使用 CL EXE 和 NMAKE 当目标是 TEST EXE 时 我想像这样修改我的 CFLAGS 宏 CFLAGS CFLAGS
  • sql - 如果不存在则插入

    我在执行 sql 查询时遇到问题 如果同一行尚不存在 我需要插入一行 这是我到目前为止所拥有的 DECLARE BEGIN FOR FOLDER ROW IN SELECT FOLDERID USERID FROM DATA1 FOLDER
  • 将行转换为列 SQL Server

    我想转换我的输出 就像 BachNo Release Qty A 10 A 30 A 40 B 90 B 30 我想将这个结构转变成 BatchNO Qty Release1 Qty Release2 Qty Release3 A 10 3
  • 为什么 html2text 模块会抛出 UnicodeDecodeError?

    我的 html2text 模块有问题 显示 UnicodeDecodeError UnicodeDecodeError ascii codec can t decode byte 0xbe in position 6 ordinal not
  • 如何扁平化IO(IO())?

    我刚刚学习 Haskell 和 monad 转换器 我发现自己有一个 IO IO 我想将其扁平化为 IO 我确信我做错了什么 但无法准确指出我迷路的地方 这是我正在尝试做的事情的简化示例 这是一种复杂的实现方式echo 但却很说明问题 us
  • 使用字符串作为变量的名称

    是否可以使用字符串作为变量的名称 例如 我将 x 声明为私有双精度 Private TextBox1Store TextBox2Store TextBox3Store As Double 我将使用它作为存储值的变量 此函数将标签和文本框中的
  • JDBC 与 MySQL 真的很慢,不知道为什么

    我的 Java 代码和 MySQL 数据库之间的连接速度非常慢 我不知道瓶颈在哪里 我的程序或多或少是一个聊天机器人 用户输入一些内容 我的程序将句子分成单词 并将每个单词发送到数据库 如果在那里找到东西 用户就会得到输出 数据库位于外部服
  • Heroku 没有永久文件系统?

    我目前在 Heroku 上托管的应用程序允许用户提交照片 最初 我正在考虑将这些照片存储在文件系统上 因为将它们存储在数据库中显然是不好的做法 然而 Heroku 上似乎没有永久的文件系统 只有一个临时的文件系统 这是真的吗 如果是 我在存
  • 意外的标记,react render() 函数中 return 语句中预期的“,”

    该错误是意外标记 渲染返回函数中应为 我正在使用 babel 并将此文件链接到 html 文件中 为了便于查看 我删除了注释类和组件 我还删除了评论表单组件 这是main js class App extends React Compone
  • 为什么两个方法引用被编译到两个不同的地址?

    我两次引用相同的方法 但引用不同 看这个例子 import java util function Consumer public class MethodRefTest public static void main String args
  • 如何将参数(对于 FEED_URI)传递给 Scrapy 蜘蛛的实例以动态命名输出文件

    我想将参数发送给蜘蛛并获取根据参数命名的输出 json csv F e scrapy scrapy Spider name a 类别 category1 a subcategory subcategory1我想得到 category1 su
  • 向下滚动列表视图时随机复选框被选中

    我正在尝试实施CheckBox with OnClickListener 可用的示例都在OncheckedchangeListener 一旦我选择了一个CheckBox 然后我向下滚动ListView 随机的CheckBox正在接受检查 不
  • dompdf:加载 html 文件进行渲染,不起作用

    dompdf 无法从我的网站页面生成 pdf 不过 我已经保存了该页面并将其作为简单的静态 html 文件上传 并且它有效 所以 我不知道问题是否出在 url 上 还是其他什么问题 这是我得到的错误 警告 require once home
  • 如何在 Bash 中使用 for 循环迭代目录中的文件

    我正在尝试使用 for 循环迭代目录中的所有文件 bin bash myname bandit24 cd var spool myname echo Executing and deleting all scripts in var spo
  • 如何在Python中比较两个列表中各自列表中相同索引中的元素?

    假设我有 2 个列表 a 1 2 3 4 7 1 b 1 2 4 5 7 1 我希望它创建第三个列表 其中仅包含每个列表中同一索引中相等的元素 在本例中 c 1 2 7 1 有没有一种简单的方法可以做到这一点 最简单的方法可能只是进行列表理
  • 如何使用 Spring 测试模拟的 JNDI 数据源?

    我对 Spring 相当陌生 想知道如何创建使用模拟数据源的 JUnit 测试以及如何使用 JNDI 上下文 目前 我的应用程序使用 Tomcat 中的 JNDI 上下文来检索连接 并通过该连接从数据库中检索数据 所以我想我需要模拟 JND