gpt4 book ai didi

我的巴蒂斯!将多个参数传递给 Mapper DAO

转载 作者:行者123 更新时间:2023-12-02 18:58:48 27 4
gpt4 key购买 nike

我试图将多个参数发送到 DAO 实现中定义的 Mapper 函数,但在参数不属于任何类的情况下无法发送超过 1 个参数。我的意思是如何修改以下代码-

obj.getName(int a, int b);

在 DAO 实现中

public void getAllName() throws PersistenceException {
SqlSession session = sf.openSession();
try {
session.selectList("getNames");
} finally {
session.close();
}
}

我想发送 a 和 b 来查询 getNames。

提前致谢。

最佳答案

使用映射器。

interface Mapper
{
@Select( " select names from names_table where a = #{fieldA} and b = #{fieldB}" )
List<String> getNames( @Param("fieldA") String fieldA, @Param("fieldB") String fieldB)
}

@Param 标签允许您指定可以使用什么来访问 sql 映射中的参数。此示例显示了 @Select 标记,但其工作方式与 xml 相同。

然后更改您的代码,

public List<String> getAllName() throws PersistenceException {
SqlSession session = sf.openSession();
try
{
Mapper mapper = session.getMapper(Mapper.class);
return mapper.getNames("a","b");
} finally {
session.close();
}
}

阅读user guide了解更多信息。

关于我的巴蒂斯!将多个参数传递给 Mapper DAO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6305546/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com