JDBC获取存储过程查询结果集

JDBC获取sqlserver存储过程查询的结果集
存储过程 开始会生成临时表 结束之前会把临时表内容查询一遍 结束时会删除临时表
java如何获取到这个查询的结果集
存储过程如下


ALTER PROCEDURE [dbo].[ET_XM_BMCWBB]
     @Fnumber varchar(1000)   --组织编码       
    ,@ZZFnumber varchar(1000)  --一级部门
    ,@YEAR varchar(100)   --年度
    ,@Month varchar(100)  --月份
 as 
end
BEGIN    
    SET NOCOUNT ON;
    
    select T1.组织编码,T1.组织名称          
          ,t1.单据年度月份 as 费用年度月份
          ,convert(varchar(100),T1.单据年度,4) AS 费用年度
          ,convert(varchar(100),t1.单据月份,2) as 费用月份
          ,T1.费用承担部门 as 承担部门     
          ,T1.一级部门,T1.二级部门,T1.三级部门,T1.四级部门          
          ,'其他应付单'  as  数据来源
          ,T1.费用项目分组名称 as 费用项目分组 ,T1.费用项目名称 as 费用项目,SUM(isnull(T1.不含税金额本位币,0)) AS  金额
      into #QJFY
     from ET_V_XM_QJFY T1 WITH(NOLOCK)
          WHERE
                 T1.费用项目分组名称 not in ('员工借款' ,'在建工程','长期待摊','代垫费用') 
              and (T1.组织编码   in (select * from  @t)    or T1.组织编码  like '%'+@Fnumber+'%')
              and (T1.一级部门  in (select * from  @tt) or T1.一级部门  like '%'+@ZZFnumber+'%')
              and T1.单据年度 like '%'+@YEAR+'%'
              and T1.单据月份 like '%'+@Month+'%'
        GROUP BY T1.组织编码,T1.组织名称,T1.费用项目分组名称,T1.费用项目名称,T1.费用承担部门,t1.单据年度月份,T1.单据年度,t1.单据月份,T1.一级部门,T1.二级部门,T1.三级部门,T1.四级部门            
    
   select 组织编码,组织名称,费用年度月份,费用年度,费用月份,承担部门,一级部门,二级部门,三级部门,四级部门,数据来源,费用项目分组,费用项目,金额
     from(  --1、【其他应付单】
            select 组织编码,组织名称,费用年度月份,费用年度,费用月份,承担部门,一级部门,二级部门,三级部门,四级部门,数据来源,费用项目分组,费用项目,金额 from #QJFY 
                     ) t1
            order by T1.组织编码,T1.一级部门,T1.承担部门,T1.费用项目分组,T1.费用项目

 DROP TABLE #QJFY

END

连接好数据库以后,直接在JAVA端运行存储过程的查询语句,遍历结果打印到控制台

sql怎么写 java里怎么执行这个sql
尝试下能否获得结果集?