微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

OSGI,karaf帮助我

如何解决OSGI,karaf帮助我

1。我想创建一个带有传入变量且输出变量为out或OUT SYS_REFCURSOR的商店,我使用JPaimpl我已经在网络上使用了某些方法,但是所有人都不能调用商店

public void getDmDonViCsgtDdhc(int nCapDv,String maDdhc,List<com.etc.osgi.lab.dto.DmDonViCsgt> dmDVs) {
            LOGGER.info("*** Start DvcsgtJPaimpl.getDmDonViCsgtDdhc");
        Map<String,Object> params = new HashMap<>();
        params.put("maDdhc",maDdhc);
        List<com.etc.osgi.lab.bean.DonViCanhsatGt> entities = this.jpa.txExpr(TransactionType.Supports,em -> {
            StoredProcedureQuery store = em.createStoredProcedureQuery("my_procedure");
            
//          StoredProcedureCall call = new StoredProcedureCall();
//          call.setProcedureName("my_procedure");
//          call.useNamedCursorOutputAsResultSet("p_recordset");
//          DataReadQuery databaseQuery = new DataReadQuery();
//          databaseQuery.setCall(call);
//          Query query = ((JpaEntityManager) em.getDelegate()).createquery(databaseQuery);
//          List<Object> students = query.getResultList();
            store.registerStoredProcedureParameter("diadanhhanhchinhID",String.class,ParameterMode.IN);
            store.registerStoredProcedureParameter("p_recordset",List.class,ParameterMode.REF_CURSOR);
            store.setParameter("diadanhhanhchinhID",maDdhc);
            store.execute();
        
            List<com.etc.osgi.lab.bean.DonViCanhsatGt> resultList = store.getResultList();
            List<com.etc.osgi.lab.bean.DonViCanhsatGt> listDvCsgt = resultList;
            LOGGER.info("Result excute sql,result size: {}",listDvCsgt.size());
        return listDvCsgt;
        });
  1. 我想从JPA切换到JDBCBaseDao 除了提供者中的此文件 @Reference(target =“(component.name = com.etc.osgi.lab.service.donViCsgt)”) DvCsgtService服务;

文件JPA中:

@Component(name = "com.etc.osgi.lab.service.donViCsgt")

在DAO文件中:

@Component(name = "com.etc.osgi.lab.dao.Dvcsgt")

enter image description here

程序:

CREATE OR REPLACE PROCEDURE BCA_MOTO.my_procedure(diadanhhanhchinhID IN  Don_Vi_canhsat_GT.id%TYPE,p_recordset  OUT SYS_REFCURSOR)
  AS
  BEGIN
     OPEN p_recordset FOR 
     SELECT dv.ID,dv.DV_CSGT_CAPTREN_ID,dv.DIA_DANH_HANH_CHINH_ID,dv.MA_DON_VI,dv.TEN_DON_VI,dv.DIA_CHI,dv.TEN_COQUAN_CHUQUAN,dv.TEN_COQUAN_LAP,dv.TEN_DAYDU,dv.TRANG_THAI,dv.CAP_DON_VI,dv.SAP_XEP,dv.LINH_VUC,dv.MA_THAMCHIEU,dv.TEN_VIETTAT,dv.CO_QUAN,dv.MA_TRUC_THUOC,dv.DV_CSGT_CAPTREN,dv.DV_TRUC_THUOC,dv.KHO_BAC_ID,dv.MA_KHO_BAC,dv.NGAN_HANG_ID,dv.MA_NGAN_HANG,dv.DIA_DIEM_TAM_GIU_ID,dv.DON_VI_RESOURCE_ID,ddhc.TEN,ddhc.MA                      
      FROM DON_VI_CANHSAT_GT  dv
           LEFT JOIN DIA_DANH_HANH_CHINH ddhc
               ON dv.DIA_DANH_HANH_CHINH_ID = ddhc.ID
              where dv.DIA_DANH_HANH_CHINH_ID = diadanhhanhchinhID;  
  END;
/

我的功能

CREATE OR REPLACE function BCA_MOTO.my_proc_test(v_number IN NUMBER) RETURN sys_refcursor
 as
 p_rc sys_refcursor;
 begin
 my_procedure(v_number,p_rc);
 return p_rc;
 END;
/

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?