Package org.apache.ibatis.annotations
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 -
Optional Element Summary
Optional Elements
-
Element Details
-
value
Class<?> valueSpecify 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<?> typeSpecify 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 methodSpecify 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 theProviderMethodResolver, the MyBatis use a method that returned by it -
If cannot resolve a method by
ProviderMethodResolver(= not implement it or it was returnednull, the MyBatis will search and use a fallback method that namedprovideSqlfrom specified type
- Returns:
- a method name of method for providing an SQL
- Default:
""
-
If class that specified the
-
databaseId
String databaseId- Returns:
- A database id that correspond this provider
- Since:
- 3.5.5
- Default:
""
-