Skip to content

Commit 0b8c93e

Browse files
committed
Add MappedColumn support for batch inserts in Java
1 parent ac2e6dc commit 0b8c93e

File tree

3 files changed

+13
-7
lines changed

3 files changed

+13
-7
lines changed

src/main/java/org/mybatis/dynamic/sql/insert/BatchInsertDSL.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
import org.mybatis.dynamic.sql.util.AbstractColumnMapping;
2828
import org.mybatis.dynamic.sql.util.Buildable;
2929
import org.mybatis.dynamic.sql.util.ConstantMapping;
30+
import org.mybatis.dynamic.sql.util.MappedColumnMapping;
3031
import org.mybatis.dynamic.sql.util.NullMapping;
3132
import org.mybatis.dynamic.sql.util.PropertyMapping;
3233
import org.mybatis.dynamic.sql.util.RowMapping;
@@ -48,6 +49,11 @@ public <F> ColumnMappingFinisher<F> map(SqlColumn<F> column) {
4849
return new ColumnMappingFinisher<>(column);
4950
}
5051

52+
public <F> BatchInsertDSL<T> withMappedColumn(SqlColumn<F> column) {
53+
columnMappings.add(MappedColumnMapping.of(column));
54+
return this;
55+
}
56+
5157
@Override
5258
public BatchInsertModel<T> build() {
5359
return BatchInsertModel.withRecords(records)

src/test/java/examples/generated/always/spring/GeneratedAlwaysDynamicSqlSupport.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,10 @@ public final class GeneratedAlwaysDynamicSqlSupport {
2626
public static final SqlColumn<String> fullName = generatedAlways.fullName;
2727

2828
public static final class GeneratedAlways extends SqlTable {
29-
public final SqlColumn<Integer> id = column("id");
30-
public final SqlColumn<String> firstName = column("first_name");
31-
public final SqlColumn<String> lastName = column("last_name");
32-
public final SqlColumn<String> fullName = column("full_name");
29+
public final SqlColumn<Integer> id = column("id").withJavaProperty("id");
30+
public final SqlColumn<String> firstName = column("first_name").withJavaProperty("firstName");
31+
public final SqlColumn<String> lastName = column("last_name").withJavaProperty("lastName");
32+
public final SqlColumn<String> fullName = column("full_name").withJavaProperty("fullName");
3333

3434
public GeneratedAlways() {
3535
super("GeneratedAlways");

src/test/java/examples/generated/always/spring/SpringTest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -241,9 +241,9 @@ void testInsertBatch() {
241241

242242
BatchInsert<GeneratedAlwaysRecord> batchInsert = insertBatch(records)
243243
.into(generatedAlways)
244-
.map(id).toProperty("id")
245-
.map(firstName).toProperty("firstName")
246-
.map(lastName).toProperty("lastName")
244+
.withMappedColumn(id)
245+
.withMappedColumn(firstName)
246+
.withMappedColumn(lastName)
247247
.build()
248248
.render(RenderingStrategies.SPRING_NAMED_PARAMETER);
249249

0 commit comments

Comments
 (0)