跳到主要内容

@Segment

用来标记在接口方法上,定义可复用的 SQL 片段。方法名即片段名,通过 @{macro,片段名} 规则在其他 SQL 中引用。

示例:用 SQL 片段复用列列表
@SimpleMapper
public interface UserMapper {
@Segment("user_uuid, user_name, login_name, email, register_time")
void userColumns(); // 方法名 = 片段名

@Insert({"insert into user_info (@{macro,userColumns})",
"values (#{userUuid}, #{name}, #{loginName}, #{email}, #{registerTime})"})
int createUser(UserInfo info);
}
提示

@Segment 方法返回 void,不被实际调用,仅作为 SQL 片段载体。value 支持字符串数组。

属性清单

属性名描述
value必选 SQL 片段内容(支持字符串数组,以空格连接)。