Interfaces de método anotado que se generan a partir de sentencias SQL

Al generar código a partir de una única sentencia SQL, puede seleccionar si se va a generar una interfaz que declare un método que se anote con esta sentencia. Al generar código a partir de múltiples sentencias SQL, el entorno de trabajo siempre generará una interfaz de método anotado, que declarará un método para cada sentencia.

Interfaces de método anotado que se generan a partir de sentencias SELECT

Cuando genera una interfaz de método anotado a partir de una sentencia SELECT, la interfaz contiene un método. Este método contiene una anotación @Select. El contenido de la anotación es la sentencia SELECT original. El tipo de retorno del método es un repetidor de <Nombre-de-bean>.

El nombre predeterminado del método es get<Nombre-de-bean>. Puede cambiar este nombre cuando especifique la información para generar la interfaz.

Por ejemplo, si genera una interfaz a partir de la sentencia SELECT Select * from table where col1 = ?, la interfaz contiene este método anotado:
@Select(sql="Select * from nombre-de-tabla where col1 = ?")
Iterator<Nombre-de-bean> getNombre-de-bean(int param1);

Si especifica el nombre de un RowHandler personalizado, se incluye una anotación @Handler.

@Select(sql="Select * from nombre-de-tabla where col1 = ?")
@Handler(rowHandler="Nombre-de-manejador")
Iterator<Nombre-de-bean> getNombre-de-bean(int param1);

Interfaces de método anotado que se generan a partir de las sentencias UPDATE, INSERT o DELETE

Al generar una interfaz de método anotado a partir de una sentencia UPDATE, INSERT o DELETE, la interfaz contiene un método que tiene una anotación @Update. El contenido de la anotación es la sentencia UPDATE, INSERT o DELETE original. El tipo de retorno del método es un entero.

Interfaces de método anotado que se generan a partir de sentencias CALL

Al generar una interfaz de método anotado a partir de una sentencia CALL, la interfaz contiene un método que tiene una anotación @Call. El contenido de la anotación es la sentencia CALL original.

El tipo de retorno del método es StoredProcedureResult. Puede acceder al ResultSet de JDBC desde el tipo StoredProcedureResult.

Si especifica el nombre de una clase CallHandlerWithParameters, se incluye una anotación @Handler.

Interfaces de método anotado que se generan a partir de todos los tipos de sentencias SQL mencionados previamente

Cuando se genera una interfaz a partir de una sentencia SELECT, UPDATE, INSERT, DELETE o CALL, se producen las siguientes acciones:
  • Los nombres de variables de host contenidas en la sentencia SQL se sustituyen por el marcador de parámetro JDBC estándar ("?").
  • Los tipos de parámetro de un método generado coinciden con los parámetros de la sentencia SQL. Los tipos SQL se correlacionan con tipos Java según las preferencias de la página Correlación de tipos de pureQuery en la ventana Preferencias
  • Si especifica el nombre de una interfaz de método anotado existente, el método se añade a esa interfaz.

Comentarios