# Class JdbcActionBuilder

java.lang.Object
org.apache.cayenne.dba.JdbcActionBuilder

All Implemented Interfaces:
  `SQLActionVisitor`

Direct Known Subclasses:
  `DB2ActionBuilder, DerbyActionBuilder, FirebirdActionBuilder, FrontBaseActionBuilder, H2ActionBuilder, IngresActionBuilder, SQLServerActionBuilder`

public class JdbcActionBuilder extends Object implements SQLActionVisitor
A factory of default SQLActions. Adapters usually subclass JdbcActionBuilder to provide custom actions for various query types.

Since:
  1.2

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected DataNode`
  `dataNode`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `JdbcActionBuilder(DataNode dataNode)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `SQLAction`
  `batchAction(BatchQuery query)`
  Creates an action to execute a batch update query.
  `SQLAction`
  `ejbqlAction(EJBQLQuery query)`
  Creates an action to execute EJBQL query.
  `<T> SQLAction`
  `objectSelectAction(FluentSelect<T,?> query)`
  Creates an action to execute a FluentSelect.
  `SQLAction`
  `procedureAction(ProcedureQuery query)`
  Creates an action to execute a ProcedureQuery.
  `SQLAction`
  `sqlAction(SQLTemplate query)`
  Creates an action to execute a SQLTemplate.

  ### Methods inherited from class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### dataNode

    protected DataNode dataNode

- ## Constructor Details

  - ### JdbcActionBuilder

    public JdbcActionBuilder(DataNode dataNode)
    Since:
      4.0

- ## Method Details

  - ### batchAction

    public SQLAction batchAction(BatchQuery query)
    Description copied from interface: `SQLActionVisitor`
    Creates an action to execute a batch update query.
    Specified by:
      `batchAction` in interface `SQLActionVisitor`

  - ### procedureAction

    public SQLAction procedureAction(ProcedureQuery query)
    Description copied from interface: `SQLActionVisitor`
    Creates an action to execute a ProcedureQuery.
    Specified by:
      `procedureAction` in interface `SQLActionVisitor`

  - ### objectSelectAction

    public <T> SQLAction objectSelectAction(FluentSelect<T,?> query)
    Description copied from interface: `SQLActionVisitor`
    Creates an action to execute a FluentSelect.
    Specified by:
      `objectSelectAction` in interface `SQLActionVisitor`
    Since:
      4.2

  - ### sqlAction

    public SQLAction sqlAction(SQLTemplate query)
    Description copied from interface: `SQLActionVisitor`
    Creates an action to execute a SQLTemplate.
    Specified by:
      `sqlAction` in interface `SQLActionVisitor`

  - ### ejbqlAction

    public SQLAction ejbqlAction(EJBQLQuery query)
    Description copied from interface: `SQLActionVisitor`
    Creates an action to execute EJBQL query.
    Specified by:
      `ejbqlAction` in interface `SQLActionVisitor`
    Since:
      3.0