Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将嵌套Oracle游标(ResultSet)映射到myBatis 3?_Java_Oracle_Mybatis_Spring Mybatis - Fatal编程技术网

Java 将嵌套Oracle游标(ResultSet)映射到myBatis 3?

Java 将嵌套Oracle游标(ResultSet)映射到myBatis 3?,java,oracle,mybatis,spring-mybatis,Java,Oracle,Mybatis,Spring Mybatis,大家好,我在返回与过程关联的游标时遇到问题 PROCEDURE USP_SEL_TAB_ANIOS(po_Lr_Recordset OUT SYS_REFCURSOR) IS BEGIN SELECT A.COD_ANIO , A.DESCRIPCION FROM BAH_MAE_ANIO A ; END ; 包包含两个类: public class ItemBean implements Serializable { private Integer

大家好,我在返回与过程关联的游标时遇到问题

PROCEDURE USP_SEL_TAB_ANIOS(po_Lr_Recordset OUT SYS_REFCURSOR) IS
    BEGIN
         SELECT A.COD_ANIO , A.DESCRIPCION FROM BAH_MAE_ANIO A ;
    END ;
包包含两个类:

public class ItemBean implements Serializable {

    private Integer icodigo;
    private String descripcion;
    private String descripcionCorta;

    // get and set

}
DEBUG: pe.com.sigbah.mapper.gestion_almacenes.ControlCalidadMapper.listarAnios - ooo Using Connection [jdbc:oracle:thin:@200.48.54.22:1521:INTEGRAL, UserName=SINPAD, Oracle JDBC driver]
DEBUG: pe.com.sigbah.mapper.gestion_almacenes.ControlCalidadMapper.listarAnios - ==>  Preparing: {call BAH_PKG_GENERAL.USP_SEL_TAB_ANIOS(?)} 
DEBUG: pe.com.sigbah.mapper.gestion_almacenes.ControlCalidadMapper.listarAnios - ==> Parameters: 
ERROR: pe.com.sigbah.web.controller.gestion_almacenes.ControlCalidadController - nested exception is org.apache.ibatis.reflection.ReflectionException: Could not set property 'itemBeans' of 'class pe.com.sigbah.common.bean.ItemBean' with value '[ItemBean [icodigo=null, descripcion=Seleccione, descripcionCorta=%], ItemBean [icodigo=null, descripcion=Año del buen servicio al ciudadano, descripcionCorta=2017], ItemBean [icodigo=null, descripcion=null, descripcionCorta=2018], ItemBean [icodigo=null, descripcion=null, descripcionCorta=2019], ItemBean [icodigo=null, descripcion=null, descripcionCorta=2020]]' Cause: org.apache.ibatis.reflection.ReflectionException: There is no setter for property named 'itemBeans' in 'class pe.com.sigbah.common.bean.ItemBean'
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.reflection.ReflectionException: Could not set property 'itemBeans' of 'class pe.com.sigbah.common.bean.ItemBean' with value '[ItemBean [icodigo=null, descripcion=Seleccione, descripcionCorta=%], ItemBean [icodigo=null, descripcion=Año del buen servicio al ciudadano, descripcionCorta=2017], ItemBean [icodigo=null, descripcion=null, descripcionCorta=2018], ItemBean [icodigo=null, descripcion=null, descripcionCorta=2019], ItemBean [icodigo=null, descripcion=null, descripcionCorta=2020]]' Cause: org.apache.ibatis.reflection.ReflectionException: There is no setter for property named 'itemBeans' in 'class pe.com.sigbah.common.bean.ItemBean'
-

我希望你能帮我画地图 我希望你能帮我画地图
我希望您能帮助我使用映射器

您应该在映射器中传递ResultItemBean对象,如下所示:

public abstract List<ItemBean> listarAnios(ResultItemBean items) throws Exception;
公共抽象列表listarAnios(ResultItemBean项)抛出异常;
在ControlCalidadMapper.xml文件中,将parameterMap定义为 pe.com.sigbah.common.bean.ResultItemBean因此您应该将此对象作为参数传递

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="pe.com.sigbah.mapper.gestion_almacenes.ControlCalidadMapper">

    <resultMap id="mapAnio" type="pe.com.sigbah.common.bean.ItemBean">
        <result property="descripcionCorta" column="COD_ANIO" />        
        <result property="descripcion" column="DESCRIPCION" />
    </resultMap>

    <parameterMap id="getAnio" type="pe.com.sigbah.common.bean.ResultItemBean">
<!--        <parameter property="start_from" jdbcType="INTEGER" mode="IN"  /> -->
        <parameter property="itemBeans" jdbcType="CURSOR" mode="OUT" resultMap="mapAnio" />
    </parameterMap>

    <select id="listarAnios" parameterMap="getAnio" statementType="CALLABLE">
        {call BAH_PKG_GENERAL.USP_SEL_TAB_ANIOS(?)}
    </select>

</mapper>
@Service
public class ControlCalidadServiceImpl extends GenericServiceImpl implements ControlCalidadService {

    private static final long serialVersionUID = 1L;

    @Autowired
    private ControlCalidadMapper controlCalidadMapper;

    /* (non-Javadoc)
     * @see pe.com.sigbah.service.gestion_almacenes.ControlCalidadService#listarAnios(pe.com.sigbah.common.bean.ItemBean)
     */
    @Override
    public List<ItemBean> listarAnios(ItemBean item) throws Exception {
        return controlCalidadMapper.listarAnios(item);
    }

}
DEBUG: pe.com.sigbah.mapper.gestion_almacenes.ControlCalidadMapper.listarAnios - ooo Using Connection [jdbc:oracle:thin:@200.48.54.22:1521:INTEGRAL, UserName=SINPAD, Oracle JDBC driver]
DEBUG: pe.com.sigbah.mapper.gestion_almacenes.ControlCalidadMapper.listarAnios - ==>  Preparing: {call BAH_PKG_GENERAL.USP_SEL_TAB_ANIOS(?)} 
DEBUG: pe.com.sigbah.mapper.gestion_almacenes.ControlCalidadMapper.listarAnios - ==> Parameters: 
ERROR: pe.com.sigbah.web.controller.gestion_almacenes.ControlCalidadController - nested exception is org.apache.ibatis.reflection.ReflectionException: Could not set property 'itemBeans' of 'class pe.com.sigbah.common.bean.ItemBean' with value '[ItemBean [icodigo=null, descripcion=Seleccione, descripcionCorta=%], ItemBean [icodigo=null, descripcion=Año del buen servicio al ciudadano, descripcionCorta=2017], ItemBean [icodigo=null, descripcion=null, descripcionCorta=2018], ItemBean [icodigo=null, descripcion=null, descripcionCorta=2019], ItemBean [icodigo=null, descripcion=null, descripcionCorta=2020]]' Cause: org.apache.ibatis.reflection.ReflectionException: There is no setter for property named 'itemBeans' in 'class pe.com.sigbah.common.bean.ItemBean'
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.reflection.ReflectionException: Could not set property 'itemBeans' of 'class pe.com.sigbah.common.bean.ItemBean' with value '[ItemBean [icodigo=null, descripcion=Seleccione, descripcionCorta=%], ItemBean [icodigo=null, descripcion=Año del buen servicio al ciudadano, descripcionCorta=2017], ItemBean [icodigo=null, descripcion=null, descripcionCorta=2018], ItemBean [icodigo=null, descripcion=null, descripcionCorta=2019], ItemBean [icodigo=null, descripcion=null, descripcionCorta=2020]]' Cause: org.apache.ibatis.reflection.ReflectionException: There is no setter for property named 'itemBeans' in 'class pe.com.sigbah.common.bean.ItemBean'
public abstract List<ItemBean> listarAnios(ResultItemBean items) throws Exception;