Class JdbcMapInsert

    • Constructor Detail

      • JdbcMapInsert

        public JdbcMapInsert()
    • Method Detail

      • getTable

        public java.lang.String getTable()
        Returns:
        the table
      • setTable

        public void setTable​(java.lang.String s)
        Parameters:
        s - the table to insert on.
      • withTable

        public <T extends JdbcMapInsert> T withTable​(java.lang.String s)
      • setFieldMappings

        public void setFieldMappings​(KeyValuePairSet mappings)
        Set the converters for various fields in the map.

        In the event that the database doesn't auto-convert types (e.g. MySQL will convert 2017-01-01 into a DATE if that is the column type); you can specify the java type that the string should be converted to; if the type cannot be handled automagically then it is assumed to be a fully qualified classname with a String constructor.

        Parameters:
        mappings - the key is the key in the map (e.g. the JSON fieldname), the value is the JdbcMapInsert.BasicType that we should attempt to convert to
        See Also:
        JdbcMapInsert.BasicType
      • closeJdbcService

        protected void closeJdbcService()
        Description copied from class: JdbcService
        Close the service.

        This is called before the connection is closed

        Specified by:
        closeJdbcService in class JdbcService
      • stopService

        protected void stopService()
        Description copied from class: JdbcService
        Stop the service.

        This is called after before the connection is stopped

        Specified by:
        stopService in class JdbcService
      • handleInsert

        protected int handleInsert​(java.lang.String tableName,
                                   java.sql.Connection conn,
                                   java.util.Map<java.lang.String,​java.lang.String> obj)
                            throws ServiceException
        Throws:
        ServiceException
      • getColumnBookendCharacter

        public java.lang.Character getColumnBookendCharacter()
      • setColumnBookendCharacter

        public void setColumnBookendCharacter​(java.lang.Character c)
        Set the character used to bookend the column names.

        Sometimes you may need to bookend the column names with something like a ` because the names are in fact reserved words. Specify this as required.

        Parameters:
        c - default is null (or no book-ending).
      • withColumnBookend

        public <T extends JdbcMapInsert> T withColumnBookend​(java.lang.Character c)
      • columnBookend

        protected java.lang.String columnBookend()
      • getRowsAffectedMetadataKey

        public java.lang.String getRowsAffectedMetadataKey()
      • setRowsAffectedMetadataKey

        public void setRowsAffectedMetadataKey​(java.lang.String key)
        Set the metadata that will contain the number of rows inserted/updated by this service.
        Parameters:
        key - defaults to the empty string, and if not set, no metadata will be set.
        Since:
        3.9.0
      • withRowsAffectedMetadataKey

        public <T extends JdbcMapInsert> T withRowsAffectedMetadataKey​(java.lang.String s)