我试图将多个参数发送到 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();
}
}
阅读用户指南 http://code.google.com/p/mybatis/downloads/detail?name=MyBatis-3-User-Guide.pdf了解更多信息。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)