跳到主要内容

@Update 注解

注解说明

用来标记在接口方法上,它接受一个字符串参数或字符串数组表示执行一个 UPDATE 语句。

信息

如果传入的是一个字符串数组,它们会被连接起来,并且中间用一个空格隔开。
通过字符串数组以合理阅读方式来管理SQL。

示例:根据 id 字段更新 name 字段
@SimpleMapper
public interface UserMapper {
@Update({"update users", // 1. 定义 SQL 语句
"set name = #{newName}", //
"where id = #{userId}"}) //
int updateUserName( // 2. userId 和 newName 参数
@Param("userId") int userId,
@Param("newName") int newName
);
}

属性清单

属性名描述
value必选 将要被执行的查询语句。
statementType可选 表示查询类型,表示 JDBC 查询使用何种方式。默认值为 PREPARED
- STATEMENT 对应 java.sql.Statement
- PREPARED 对应 java.sql.PreparedStatement
- CALLABLE 对应 java.sql.CallableStatement
timeout可选 通过设置一个大于 0 时会被设置到 java.sql.Statement.setQueryTimeout(int) 可以让查询在执行时候设置一个超时时间,单位是秒,默认值为 -1