Annotation Interface InOut


@Target(PARAMETER) @Retention(RUNTIME) public @interface InOut
Indicates an INOUT parameter for stored functions or stored procedures.

The annotated parameter type must be Reference. The annotated parameter must be one of the parameters of the method that is annotated with Function or Procedure.

 @Dao
 public interface EmployeeDao {

     @Procedure
     void updateSalary(@In Integer id, @InOut Reference<BigDecimal> salary);
 }
 
 EmployeeDao dao = new EmployeeDaoImpl(config);
 Reference<BigDecimal> salaryRef = new Reference<BigDecimal>(new BigDecimal(1000));
 dao.updateSalary(1, salaryRef);
 BigDecimal salary = salaryRef.get();