Ir al contenido principal

Entradas

Mostrando las entradas etiquetadas como Spring JDBC

Statement (addBatch, executeBatch, clearBatch): Ejecutar insert, update por lotes

Ejecutar sentencias por lotes. Nos basaremos para el ejemplo en tres métodos de Statement: addBatch(String sentencia). Añade una sentencia a la lista de sentencias por lotes. executeBatch(). Ejecuta la lista de sentencias por lotes. Retorna un array de enteros con el resultado de cada sentencia. clearBatch(). Limpia la lista de sentencias por lotes. Si tenemos la intención de realizar varias sentencias INSERT o UPDATE consecutivas, es mucho más eficiente utilizar la ejecución de sentencias por lotes que enviar las sentencias una por una. Creamos un método que reciba una lista de sentencias y las ejecuta por lotes: public int[] ejecutaPorLotes(List sentencias) {         Connection conn = getConnection();         int[] resultado = null;         Statement st = null;         try {             st = conn.createStatement(...

Spring JDBC - Store Procedure

IMPLEMENTACION BASICA DE STORE PROCEDURE CON Spring JDBC CONFIGURACION DE DATASOURCE: OBTENER EL DATASOURCE DE WEBSHERE jdbc.datasource. WebSphereDataSourceAdapter"> jndi.JndiObjectFactoryBean"> EN LA CLASE : LA INJECTION DEL DATASOURCE private DataSource dataSource; private JdbcTemplate jdbcTemplate; public void setDataSource(DataSource dataSource) { this.dataSource = dataSource; this.jdbcTemplate = new JdbcTemplate(this.dataSource); } METODO GENERICO QUE EJECUTA STORE DE UPDATE,INSERT private void registroArchivo(final List parameters,final String SP){ jdbcTemplate.execute( new CallableStatementCreator(){ public CallableStatement createCallableStatement( Connection con)throws SQLException { CallableStatement cs = con.prepareCall("{call "+SP+"}"); for (int i = 0; i if(parameters.get(i) instanceof Integer){ cs.setInt((i+1), Integer.parseInt(parameters. get(i).toString())); }else if(paramete...