Commit Graph

1918 Commits

Author SHA1 Message Date
Mark Paluch
41b37a6bd8 Add support for multi-level projections using EntityProjection.
We now support multi-level projections by introspecting the result and the domain type and read projections directly into a DTO or a backing map for interface projections.

Original pull request #1618
Closes #1554
2023-10-13 10:26:26 +02:00
Jens Schauder
9c36eb970b Fix MS Sql Server integration tests.
Closes #1638
2023-10-11 15:54:56 +02:00
Jens Schauder
64eeecd1e3 Run integration tests during ci build.
See #1637
2023-10-11 15:18:29 +02:00
Jens Schauder
16ab1c4842 Using verify during the CI build 2023-10-11 15:12:39 +02:00
Jens Schauder
210b63fcb4 Add failsafe:verify goal as an execution.
The failsafe plugin only fails during it's verify goal, not when actually executing the tests.

The goal is by default added to the verify phase.
But for the database tests this adds it to the integration-test phase.
This ensures that the build fail as soon a test for one database fails.

Closes #1637
2023-10-11 13:54:47 +02:00
Mark Paluch
a72bf1a65d Polishing.
Delegate BatchJdbcOperations calls to NamedParameterJdbcOperations. Refine since and deprecation tags.

See #1616
2023-10-11 09:54:44 +02:00
Jens Schauder
5d6d575ab2 Replace BatchJdbcOperations with Spring's NamedParameterJdbcOperations.
BatchJdbcOperations is still there, but deprecated, and not used except for deprecated places kept for backward compatibility.

This is possible since Spring Framework made the features offered by `BatchJdbcOperations` part of `NamedParameterJdbcOperations`.

Closes #1616
2023-10-11 09:54:44 +02:00
Jens Schauder
6887ca78a5 Replace java.rmi.server.UID with UUID.
Closes #1635
2023-10-10 10:44:44 +02:00
Jens Schauder
52d316310b Upgrade to Mybatis 3.5.13.
Original pull request #1222
2023-10-10 08:34:05 +02:00
Jens Schauder
1c66098de7 Upgrade to Mybatis-Spring 3.0.2.
Original pull request #1222
2023-10-10 08:34:05 +02:00
Jens Schauder
ddec3cc531 Adapt to new test infrastructure.
Originial pull request #1222
See #1220
See #1620
2023-10-10 08:34:05 +02:00
Jens Schauder
3b2e8c7a7e Upgrade to Mybatis Spring Version 2.1.0.
Closes #1220
Original pull request #1222
2023-10-10 08:33:33 +02:00
John Blum
5399171a79 Update CI properties.
See #1614
2023-10-04 17:24:12 -07:00
John Blum
a5147d31ce Upgrade to Maven Wrapper 3.9.5.
See #1631
2023-10-04 16:58:15 -07:00
Jens Schauder
88ab6b60ca Remove excludes for maven test execution.
Maven Surefire and Failsafe plugins by default do not run inner classes, no matter if they are `@Nested` or just plain static inner classes.

This change removes this default exclude.

Closes #1627
See https://maven.apache.org/surefire/maven-surefire-plugin/test-mojo.html#excludes
2023-09-28 14:21:03 +02:00
Mark Paluch
a555119f8b Polishing.
Remove Jetbrains annotation usage.

Simplify code, remove code that is commented out, extract methods, pass PersistentEntity as argument instead of creating instances that hold PersistentEntity as field to align the class lifecycle with its contextual usage.

Refactor AggregateReader lifecycle, use a single instance as there is no entity-specific state attached to AggregateReader.

Add Javadoc.

See #1448
Original pull request: #1622
2023-09-27 10:05:16 +02:00
Jens Schauder
9e795d1349 Polishing.
Add github references to tests.

See #1446
See #1448
Original pull request: #1622
2023-09-27 10:05:06 +02:00
Jens Schauder
9e41d25d15 Support Single Query Loading for aggregates with more than one collection.
Closes #1448
Original pull request: #1622
2023-09-27 10:04:55 +02:00
Mark Paluch
8fa9e3e1d5 Polishing.
Simplify type and interface arrangement.

See #1601
Original pull request: #1617
2023-09-26 14:40:01 +02:00
Mark Paluch
7b27d0e08c Add JMH benchmarks and optimizations to affected components.
See #1601
Original pull request: #1617
2023-09-26 14:40:01 +02:00
Jens Schauder
f3bc0af8c4 Polishing.
Simplify ValueFunction mapping. Remove invariants of findBy SQL generation in favor of the Condition-based variant. Reduce visibility. Change return value of AggregateReader to List

See #1601
Original pull request: #1617
2023-09-26 14:36:47 +02:00
Jens Schauder
0fdeaebbee Add support for arbitrary where clauses in Single Query Loading.
Closes #1601
Original pull request: #1617
2023-09-26 14:36:46 +02:00
Jens Schauder
6fb6110ca0 Remove dialect dependency from QueryMapper.
See #1601
Original pull request: #1617
2023-09-26 14:36:09 +02:00
Mark Paluch
610bc4521d Refine JDBC integration tests.
Introduce composed annotations and conditions to deduplicate annotations required for a test, to express database runtime conditions and database activation.
Simplify test configuration.
Split tests into unit test and integration test run.

Original pull request #1621
Closes #1620
2023-09-22 14:11:30 +02:00
Mark Paluch
1e20a32352 Polishing.
Tweak naming. Refine methods to static ones and collapse into a single method.

See #1615
2023-09-20 09:14:29 +02:00
Jens Schauder
bc644aa71c Fix RowDocumentIterator.hasNext.
This properly fixes the test setup, taking into account that @ActiveProfile by default replaces any profiles set via environment variable or system property.
It turns out that the hasNext calculation in RowDocumentIterator was wrong because

a) isBeforeFirst and isBeforeLast return both false when the ResultSet is empty.
b) isBeforeFirst and isBeforeLast aren't necessarily implemented for all ResultSets and for example DB2s ResultSet implementation don't support it by default.

Closes #1615
2023-09-20 09:14:29 +02:00
Mark Paluch
8bb72665f1 After release cleanups.
See #1592
2023-09-15 15:06:53 +02:00
Mark Paluch
813fdf2a31 Prepare next development iteration.
See #1592
2023-09-15 15:06:53 +02:00
Mark Paluch
c8de948d3e Release version 3.2 M3 (2023.1.0).
See #1592
2023-09-15 15:06:53 +02:00
Mark Paluch
3b9e0626da Prepare 3.2 M3 (2023.1.0).
See #1592
2023-09-15 15:06:53 +02:00
Mark Paluch
bd1c670d55 Add support for fluent limit(int) and scroll(OffsetScrollPosition) to Query by Example queries.
Closes #1609
2023-09-14 08:40:56 +02:00
valery1707
6d1d96681f Remove an extra level in the class hierarchy.
Closes #1574
2023-09-13 15:10:36 +02:00
Mark Paluch
5fd9951060 Fix links to spring.io docs.
Closes #1571
2023-09-13 15:08:04 +02:00
Mark Paluch
c50942a2a8 Polishing.
Use dynamic copyright year for docs.

See #1597
2023-09-11 09:00:00 +02:00
Jens Schauder
4cf07be37c Polishing.
Original pull request #1604
See #1586
2023-09-08 16:08:07 +02:00
Jens Schauder
f60044225f Remove external column name prefixing for embedded entities.
Original pull request #1604
See #1586
2023-09-08 16:08:06 +02:00
Mark Paluch
d6d99571b1 Introduce MappingRelationalConverter.
Add sophisticated converter to read aggregates from a RowDocument including support for maps, collections, subdocuments, and embeddables considering registered converters.
Use ResultSetRowDocumentExtractor to extract result multi-sets into RowDocument and then later apply object mapping.

Original pull request #1604
Closes #1586
2023-09-08 16:04:12 +02:00
Jens Schauder
48b037fb9b Fix test setup for Single Query Loading.
The construction of the DataAccessStrategy happened before the MappingContext was properly setup.
This is now fixed.
A test utilizes Single Query Loading, if it activates the profile singleQueryLoading

Closes #1606
2023-09-08 12:10:05 +02:00
Mark Paluch
24d3584488 Polishing.
Update documentation URL.

See #1597
2023-09-08 11:57:17 +02:00
Mark Paluch
2c6dbeeea3 Switch Postgres driver dependency from test to optional dependency.
See #1567
Original pull request: #1570
2023-09-06 15:35:41 +02:00
Mark Paluch
879984d2b6 Polishing.
Push JDBC-specific simple types into JdbcPostgresDialect instead of having these in the top-level dialect that shouldn't be tied to any driver technology.

Introduce profile to run Postgres tests only.
2023-09-06 14:54:09 +02:00
Mark Paluch
8e6f33e071 Add support for Postgres UUID arrays using JDBC.
We now use Postgres' JDBC drivers TypeInfoCache to register and determine array types including support for UUID.

Closes #1567
2023-09-06 14:53:45 +02:00
Greg L. Turnquist
b08dde9876 Update CI properties.
See #1592
2023-09-05 13:25:24 -05:00
Mark Paluch
99a8b01809 Harmonize content.
Refactor content to a natural flow, remove duplications, extract partials.

See #1597
2023-09-01 11:14:02 +02:00
Mark Paluch
4202b090ed Migrate documentation to Antora.
Closes #1597
2023-08-31 11:56:42 +02:00
Mark Paluch
f71b41fd2c Correctly convert enum array values.
We now correctly convert array write values. Previously, enum arrays were converted to null as these fell through the entity conversion.

Closes #1593
2023-08-23 15:42:41 +02:00
Julia Lee
a6c855f45e After release cleanups.
See #1562
2023-08-18 08:59:41 -04:00
Julia Lee
2b1d2c834c Prepare next development iteration.
See #1562
2023-08-18 08:59:38 -04:00
Julia Lee
cb7b4679c5 Release version 3.2 M2 (2023.1.0).
See #1562
2023-08-18 08:50:33 -04:00
Julia Lee
0c39621c73 Prepare 3.2 M2 (2023.1.0).
See #1562
2023-08-18 08:49:41 -04:00