Annotation Interface UpdateProvider


@Documented @Retention(RUNTIME) @Target(METHOD) @Repeatable(List.class) public @interface UpdateProvider
The annotation that specify a method that provide an SQL for updating record(s).

How to use:

 public interface UserMapper {

   @UpdateProvider(type = SqlProvider.class, method = "update")
   boolean update(User user);

   public static class SqlProvider {
     public static String update() {
       return "UPDATE users SET name = #{name} WHERE id = #{id}";
     }
   }

 }
 
Author:
Clinton Begin
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static @interface 
    The container annotation for UpdateProvider.
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
     
    Specify a method for providing an SQL.
    Specify a type that implements an SQL provider method.
    Specify a type that implements an SQL provider method.
  • Element Details

    • value

      Class<?> value
      Specify a type that implements an SQL provider method.
      Returns:
      a type that implements an SQL provider method
      Since:
      3.5.2
      See Also:
      Default:
      void.class
    • type

      Class<?> type
      Specify a type that implements an SQL provider method.

      This attribute is alias of value().

      Returns:
      a type that implements an SQL provider method
      See Also:
      Default:
      void.class
    • method

      String method
      Specify a method for providing an SQL.

      Since 3.5.1, this attribute can omit. If this attribute omit, the MyBatis will call a method that decide by following rules.

      • If class that specified the type() attribute implements the ProviderMethodResolver, the MyBatis use a method that returned by it
      • If cannot resolve a method by ProviderMethodResolver (= not implement it or it was returned null, the MyBatis will search and use a fallback method that named provideSql from specified type
      Returns:
      a method name of method for providing an SQL
      Default:
      ""
    • databaseId

      String databaseId
      Returns:
      A database id that correspond this provider
      Since:
      3.5.5
      Default:
      ""