新手请教个Mybatis的问题
在做一个项目,用到Mybatis,数据库是SQLServer2012,我用Mybatis调用存储过程,返回的是空结果集,求教大神帮忙解决下。
Mybatis是3.3.0,驱动是net.sourceforge.jtds.jdbc.Driver
mapper.xml中是这么写的:
<resultMap type="hashmap" id="testResult">
<id property="id" column="STK004OID"/>
<result property="GYS" column="GYS" />
<result property="PM" column="PM" />
<result property="SJKCSL" column="SJKCSL" />
<result property="XH" column="XH" />
<result property="GGXH" column="GGXH" />
<result property="XS" column="XS" />
<result property="RKRQ" column="RKRQ" />
<result property="DCDDH" column="DCDDH" />
<result property="PP" column="PP" />
<result property="CD" column="CD" />
<result property="CKMC" column="CKMC" />
</resultMap>
<parameterMap type="hashmap" id="testParameterMap">
<parameter property="result" jdbcType="OTHER" resultMap="testResult" mode="OUT" javaType="java.sql.ResultSet"/>
<parameter property="PartnerID" jdbcType="VARCHAR" mode="IN"/>
<parameter property="FSNO" jdbcType="VARCHAR" mode="IN"/>
<parameter property="S_Date" jdbcType="DATE" mode="IN"/>
<parameter property="E_Date" jdbcType="DATE" mode="IN"/>
<parameter property="Spec" jdbcType="VARCHAR" mode="IN"/>
</parameterMap>
<select id="getCKPOInfo" parameterMap="testParameterMap" resultMap="testResult" statementType="CALLABLE">
{#{result} = call PR_B2BShipmentDs(#{PartnerID},#{FSNO},#{S_Date},#{E_Date},#{Spec})}
</select>
JAVA代码 :
String resource = "mybatis/configuration/erp_conf.xml";
//构建sqlSession的工厂
//使用MyBatis提供的Resources类加载mybatis的配置文件(它也加载关联的映射文件)
Reader reader = Resources.getResourceAsReader(resource);
//构建sqlSession的工厂
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(reader);
//创建能执行映射文件中sql的sqlSession
SqlSession session = sessionFactory.openSession();
Map<String,Object> paraMap = new HashMap<String,Object>();
try {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
paraMap.put("PartnerID", "T00040-C");
paraMap.put("FSNO", null);
paraMap.put("S_Date", sdf.parse("1999-01-01"));
paraMap.put("E_Date", sdf.parse("2050-01-01"));
paraMap.put("Spec", null);
List<TestBO> list = session.selectList(sql, paraMap);
System.out.println("0>>>>>>>>>::"+list.size());
} catch (ParseException e) {
e.printStackTrace();
}
session.close();
打印的list.size()为0,求大神指导是什么情况,数据库中是有数据的