6 Haziran 2018 Çarşamba

SpringData Jdbc SimpleJdbcCall Sınıfı - Stored Procedure Çağırmak İçindir

Giriş
Stored procedure çağırmak için kullanılır.

constructor
Şöyle yaparız
SimpleJdbcCall simpleJdbcCall = new SimpleJdbcCall(jdbcTemplate)
  .withProcedureName("read_actor")
  .withoutProcedureColumnMetaDataAccess()
  .useInParameterNames("in_id")
  .declareParameters(
    new SqlParameter("in_id", Types.NUMERIC),
    new SqlOutParameter("out_first_name", Types.VARCHAR),
    new SqlOutParameter("out_last_name", Types.VARCHAR),
    new SqlOutParameter("out_birth_date", Types.DATE)
  );
execute metodu - SqlParameterSource
Şöyle yaparız.
SimpleJdbcCall jdbcCall = new SimpleJdbcCall(dataSource).withProcedureName("getRecord");
SqlParameterSource in = new MapSqlParameterSource().addValue("in_id", id);
Map<String, Object> out = jdbcCall.execute(in);
get metodu
Elimizde out parametrele SP olsun.
function proname(z varchar2,
                 a varchar2,
                 b varchar2,
                 c varchar2,
                 d in out number,
                 e out number,
                 f out varchar2,
                 g out varchar2)
Şöyle yaparız.
Student student = new Student();
student.setId(id);
student.setName((String) out.get("out_name"));
student.setAge((Integer) out.get("out_age"));

Hiç yorum yok:

Yorum Gönder