하나의 열이 BLOB 인 테이블에 두 개의 삽입이 있습니다. 처음에는 blob 저장소를 올바르게 삽입합니다. 두 번째 삽입에서는 null을 저장하고 디버깅하는 동안 blobnullbinder는 이전 필드가 동일한 필드에 대해 blobbinder를 표시하는 위치를 보여줍니다. 이 삽입은 for 루프에서 두 번 발생하지만 테이블의 다른 필드는 다르지만 BLOB는 동일합니다. CallableStatement &으로 설정하기 전에 디버깅하여 값을 두 번 인쇄하지만 두 번째 시간은 null로 설정합니다. 왜 이런 행동을 하죠.BLOB 필드는 문에있는 데이터를 통해 자동으로 null로 설정됩니다.
if (paramValue instanceof InputStream)
((CallableStatement) stmt).setBlob(i + 1, (InputStream) paramValue);
그것을 바이트 []에 paramValue 변환 및 설정? – aksappy