下面列出了org.apache.ibatis.annotations.Insert#org.apache.ibatis.annotations.InsertProvider 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
public MapperAnnotationBuilder(Configuration configuration, Class<?> type) {
String resource = type.getName().replace('.', '/') + ".java (best guess)";
this.assistant = new MapperBuilderAssistant(configuration, resource);
this.configuration = configuration;
this.type = type;
sqlAnnotationTypes.add(Select.class);
sqlAnnotationTypes.add(Insert.class);
sqlAnnotationTypes.add(Update.class);
sqlAnnotationTypes.add(Delete.class);
sqlProviderAnnotationTypes.add(SelectProvider.class);
sqlProviderAnnotationTypes.add(InsertProvider.class);
sqlProviderAnnotationTypes.add(UpdateProvider.class);
sqlProviderAnnotationTypes.add(DeleteProvider.class);
}
private SqlCommandType getSqlCommandType(Method method) {
Class<? extends Annotation> type = getSqlAnnotationType(method);
if (type == null) {
type = getSqlProviderAnnotationType(method);
if (type == null) {
return SqlCommandType.UNKNOWN;
}
if (type == SelectProvider.class) {
type = Select.class;
} else if (type == InsertProvider.class) {
type = Insert.class;
} else if (type == UpdateProvider.class) {
type = Update.class;
} else if (type == DeleteProvider.class) {
type = Delete.class;
}
}
return SqlCommandType.valueOf(type.getSimpleName().toUpperCase(Locale.ENGLISH));
}
public MapperAnnotationBuilder(Configuration configuration, Class<?> type) {
String resource = type.getName().replace('.', '/') + ".java (best guess)";
this.assistant = new MapperBuilderAssistant(configuration, resource);
this.configuration = configuration;
this.type = type;
sqlAnnotationTypes.add(Select.class);
sqlAnnotationTypes.add(Insert.class);
sqlAnnotationTypes.add(Update.class);
sqlAnnotationTypes.add(Delete.class);
sqlProviderAnnotationTypes.add(SelectProvider.class);
sqlProviderAnnotationTypes.add(InsertProvider.class);
sqlProviderAnnotationTypes.add(UpdateProvider.class);
sqlProviderAnnotationTypes.add(DeleteProvider.class);
}
private SqlCommandType getSqlCommandType(Method method) {
Class<? extends Annotation> type = getSqlAnnotationType(method);
if (type == null) {
type = getSqlProviderAnnotationType(method);
if (type == null) {
return SqlCommandType.UNKNOWN;
}
if (type == SelectProvider.class) {
type = Select.class;
} else if (type == InsertProvider.class) {
type = Insert.class;
} else if (type == UpdateProvider.class) {
type = Update.class;
} else if (type == DeleteProvider.class) {
type = Delete.class;
}
}
return SqlCommandType.valueOf(type.getSimpleName().toUpperCase(Locale.ENGLISH));
}
@Options(useGeneratedKeys = true, keyProperty = "id", keyColumn = "id")
@InsertProvider(type = SpecialProvider.class, method = "dynamicSQL")
int insertList(List<T> recordList);
@InsertProvider(type = Save.class, method = "reserved")
int save(T entity, String... properties);
@InsertProvider(type = Save.class, method = "reserved")
int saveSelective(T entity, String... properties);
@InsertProvider(type = Save.class, method = "reserved")
int batchSave(List<T> entity, String... properties);
@InsertProvider(type = Save.class, method = "reserved")
int batchSaveSelective(List<T> entity, String... properties);
@InsertProvider(type = Replace.class, method = "reserved")
int replace(T entity, String... properties);
@InsertProvider(type = Replace.class, method = "reserved")
int replaceSelective(T entity, String... properties);
@InsertProvider(type = Replace.class, method = "reserved")
int batchReplace(List<T> entity, String... properties);
@InsertProvider(type = Replace.class, method = "reserved")
int batchReplaceSelective(List<T> entity, String... properties);
@InsertProvider(type =BaseProvider.class,method = "insert")
long insert(T t);
@Options(useGeneratedKeys = true, keyProperty = "id")
@InsertProvider(type = SqlServerProvider.class, method = "dynamicSQL")
int insertSelective(T record);
@InsertProvider(type=UserSqlProvider.class, method="insertSelective")
int insertSelective(User record);
@InsertProvider(type = ImpPayHeadSqlProvide.class, method = "insertPayHeadSql")
int insertPayHead(ImpPayHead impPayHead);
@InsertProvider(type = ServerSystemSqlProvide.class, method = "insertServerSystemSql")
int insertServerSystem(ServerSystem serverSystem);
@InsertProvider(type = VersionSqlProvide.class, method = "insertVersionSql")
int insertVersion(Version version);
@InsertProvider(type = MemberSqlProvide.class, method = "insertMemberSql")
int insertMember(Member member);
@InsertProvider(type=SqlProvider.class,method="insertTable3_2")
@SelectKey(statement="call next value for TestSequence", keyProperty="nameId", before=true, resultType=int.class)
int insertTable3_2(Name name);
@InsertProvider(type = RoleSqlProvider.class, method = "insertSql")
void insert(MemAccount memAccount);
@InsertProvider(type = BusListenerSqlProvider.class, method = "insertSql")
void insert(MemBusListener memBusListener);
@InsertProvider(type = BusProgressSqlProvider.class, method = "insertSql")
void insert(MemBusProgress memBusProgress);
@InsertProvider(type = BusInfoSqlProvider.class, method = "insertSql")
void insert(MemBusInfo memBusInfo);
@Options(useGeneratedKeys = true)
@InsertProvider(type = SqlServerProvider.class, method = "dynamicSQL")
int insertSelective(T record);
@InsertProvider(type=SqlProvider.class,method="insertTable3_2")
@SelectKey(statement="call next value for TestSequence", keyProperty="nameId", before=true, resultType=int.class)
int insertTable3_2(Name name);
/**
* 保存一个实体,null的属性也会保存,不会使用数据库默认值
*
* @param record
* @return
*/
@Options(useGeneratedKeys = true, keyColumn = "id", keyProperty = "id")
@InsertProvider(type = BaseInsertProvider.class, method = "dynamicSQL")
int insert(T record);
/**
* 保存一个实体,null的属性不会保存,会使用数据库默认值
*
* @param record
* @return
*/
@Options(useGeneratedKeys = true, keyColumn = "id", keyProperty = "id")
@InsertProvider(type = BaseInsertProvider.class, method = "dynamicSQL")
int insertSelective(T record);
/**
* 保存一个实体,null的属性也会保存,不会使用数据库默认值
*
* @param record
* @return
*/
@Options(useGeneratedKeys = true, keyColumn = "id", keyProperty = "id")
@InsertProvider(type = BaseInsertProvider.class, method = "dynamicSQL")
int insert(T record);