根据网上材料写的mybatis 调用mysql储存过程报错
这是测试类里面的
try {
String resource = "com/qipei/mapper/DdmlMapper.xml";
Reader reader= Resources.getResourceAsReader(resource);
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(reader);
SqlSession session = sessionFactory.openSession();
Map<String, Object> parms = new HashMap<String, Object>();
parms.put("CZDX", "DDML");
parms.put("CJDM", "000001");
parms.put("RQ", "20161213");
String user1 = (String) session.selectOne("com.qipei.dao.IDdmlDao.getZyh", parms);
System.out.println(parms.get("CZDX"));
System.out.println(parms.get("oCursor"));
System.out.println(user1);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
报错
Exception in thread "main" org.apache.ibatis.exceptions.PersistenceExceptio n:
### Error building SqlSession.
### The error may exist in SQL Mapper Configuration
### Cause: org.apache.ibatis.builder.BuilderException: Error parsing SQL Mapper Configuration. Cause: java.lang.NullPointerException
at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:23)
at org.apache.ibatis.session.SqlSessionFactoryBuilder.build(SqlSessionFactoryBuilder.java:51)
at org.apache.ibatis.session.SqlSessionFactoryBuilder.build(SqlSessionFactoryBuilder.java:35)
at com.qipei.test.Textgetzyh.main(Textgetzyh.java:66)
配置map文件,将查询到的值放入map
<resultMap type="com.qipei.bean.Ddml" id="ddml">
<id column="zyh" property="zyh" />
</resultMap>
<parameterMap type="hashmap" id="zyhMap">
<parameter property="CZDX" jdbcType="VARCHAR" mode="IN" />
<parameter property="CJDM" jdbcType="VARCHAR" mode="IN" />
<parameter property="RQ" jdbcType="VARCHAR" mode="IN" />
<parameter property="oCursor" jdbcType="VARCHAR" mode="OUT"/>
</parameterMap>
<select id="getZyh" statementType="CALLABLE" parameterMap="zyhMa p" >
{call getzyh(?,?,?,?)}
</select>