Commit Graph

1755 Commits

Author SHA1 Message Date
Mark Paluch
d6e00a8734 Fix BLOB reading and writing.
We now correctly consider ByteBuffer, Clob, and Blob types as additional types to read and write blob data.

Closes #1408
2023-01-10 15:09:56 +01:00
Jens Schauder
1ff403e174 Allow empty Iterable arguments in JdbcAggregateTemplate again.
This also affects repositories since they delegate to the template.

Closes #1401
2023-01-03 09:44:54 +01:00
Mark Paluch
5d3e737393 Extend license header copyright years to 2023.
See #1398
2023-01-02 09:50:19 +01:00
Mark Paluch
d264648276 Update CI properties.
See #1388
2022-11-18 15:31:29 +01:00
Mark Paluch
0d05ee93be Enable upstream build triggers.
See #1361.
2022-11-18 15:13:43 +01:00
Mark Paluch
7edad500c1 After release cleanups.
See #1361
2022-11-18 14:30:31 +01:00
Mark Paluch
01f82a8026 Prepare next development iteration.
See #1361
2022-11-18 14:30:30 +01:00
Mark Paluch
c244985b56 Release version 3.0 GA (2022.0.0).
See #1361
2022-11-18 14:26:23 +01:00
Mark Paluch
690488ef99 Prepare 3.0 GA (2022.0.0).
See #1361
2022-11-18 14:26:13 +01:00
Mark Paluch
f27736e980 Polishing.
Extend tests to use aliased columns.

See #1362
Original pull request: #1368
2022-11-16 14:32:34 +01:00
schauder
d5f7ab56c2 Fix broken join conditions with InlineQuery.
Before this fix, whenever a column of an inline query was rendered the `InlineQuery` and all its children were visited, resulting in spurious output.
This is no prevented by injecting a NoopVisitor.

Closes: #1362
Original pull request: #1368
2022-11-16 14:32:34 +01:00
Koen Punt
e228757494 Add failing test with multiple joins and InlineQuery.
Adds a test demonstrating that the join condition of inline queries messes up those of outer joins.

Closes: #1362
Original pull request: #1368
2022-11-16 14:32:34 +01:00
Levani Kokhreidze
bb23f86d11 Fix jdbc-custom-conversions.adoc Java code snippet alignment.
Original pull request #1369
2022-11-16 10:26:28 +01:00
Dmitriy
559a4488ea Add Transactional annotation to deleteAllById.
Original pull request #1370
2022-11-15 16:23:04 +01:00
Christoph Strobl
5fbc68ef87 Add Nullable annotation to parameter of overridden equals method.
Closes #1374
Original pull request #1375
2022-11-11 16:05:59 +01:00
Mark Paluch
ae1bb6a448 Fix empty collection conversion.
We now consider the target type for empty collections.

Closes #1379
2022-11-11 16:00:44 +01:00
Mark Paluch
c7856d9fbb Upgrade to R2DBC drivers 1.0 GA.
Closes #1378
2022-11-11 09:36:14 +01:00
Jens Schauder
5349fde133 Replace New and Noteworthy with links to release notes.
Closes #1351
Original pull request #1352
See spring-projects/spring-data-commons#2723
2022-11-10 10:34:31 +01:00
Mark Paluch
992e469c94 After release cleanups.
See #1366
2022-11-04 15:26:39 +01:00
Mark Paluch
dac1729713 Prepare next development iteration.
See #1366
2022-11-04 15:26:38 +01:00
Mark Paluch
06e40a3f30 Release version 3.0 RC2 (2022.0.0).
See #1366
2022-11-04 15:23:17 +01:00
Mark Paluch
e0a5f88b56 Prepare 3.0 RC2 (2022.0.0).
See #1366
2022-11-04 15:23:07 +01:00
Mark Paluch
541eee7c8b Guard integration tests against known not-working OS variants.
Closes #1371
2022-10-31 15:02:59 +01:00
Mark Paluch
3b6c2f06ae Disable package cycle tests to unblock CI builds.
See #1366
2022-10-31 14:45:38 +01:00
Mark Paluch
3fa10f1482 Update CI properties.
See #1366
2022-10-31 10:36:36 +01:00
Mark Paluch
04aacd89d2 After release cleanups.
See #1333
2022-10-13 17:31:17 +02:00
Mark Paluch
61dcc5168b Prepare next development iteration.
See #1333
2022-10-13 17:31:15 +02:00
Mark Paluch
99ac540555 Release version 3.0 RC1 (2022.0.0).
See #1333
2022-10-13 17:24:26 +02:00
Mark Paluch
debf0b7563 Prepare 3.0 RC1 (2022.0.0).
See #1333
2022-10-13 17:24:05 +02:00
Jens Schauder
154e18cb01 Polishing.
Removes code duplication.

Original pull request #1348
2022-10-11 13:02:45 +02:00
Koen Punt
d604797e42 Support SimpleFunction and SimpleExpression in order by expression.
This allows ordering by functions like:

    ORDER BY GREATEST(table1.created_at, table2.created_at) ASC

or by arbitrary SQL snippets

    orderBy(OrderByField.from(Expressions.just("1")).asc()) => ORDER BY 1 ASC

Original pull request #1348
2022-10-11 13:02:45 +02:00
Jens Schauder
58bf5566b6 Dependency tests are now based on ArchUnit.
Replaced ignored tests with exclusion of packages and classes.
Upgraded ArchUnit dependency to 1.0.0.

Closes #1354
2022-10-10 13:27:59 +02:00
Jens Schauder
6bdc7db24b Offer a proper replacement for NamingStrategy.INSTANCE.
Closes #1350
2022-10-07 16:24:47 +02:00
Mark Paluch
795e244511 Polishing.
Do not expose setForeignKeyNaming methods on NamingStrategy to make less assumptions about how a naming strategy gets implemented. Provide getRequiredLeafEntity method on PersistentPropertyPathExtension to reduce null and state assertion checks.

Refine getTableName/getQualifiedTableName approach to reduce API surface and avoid deprecations.

See #1147
Original pull request: #1324.
2022-10-07 09:17:27 +02:00
Jens Schauder
e7d32bbea2 Polishing.
See #1162
Original pull request: #1324.
2022-10-07 09:17:21 +02:00
Jens Schauder
d7f2a27ee9 Revised default behaviour for back reference naming.
The new default is to take `@Table` annotations into account.

The behaviour can be configured by setting the `foreignKeyNaming` property on the `RelationalMappingContext`.

Closes #1162
See #1147
Original pull request: #1324.
2022-10-07 09:17:15 +02:00
Jens Schauder
40446f9ca9 The back reference generation is now configurable.
The default version is the behavior that existed so far:
The back reference is the table name as generated by the `NamingStrategy` without taking `@Table` annotations into account.

The new alternative is to take `@Table` into account.

The behavior can be configured by setting the `foreignKeyNaming` property on the `RelationalMappingContext`.

Closes #1161
Closes #1147
Original pull request: #1324.
2022-10-07 09:17:05 +02:00
Jens Schauder
15796b88fe Fix broken includes in reference documentation.
Closes #1349
2022-10-06 14:53:40 +02:00
Jens Schauder
004804aad8 Introduce @InsertOnlyProperty.
You may now annotate properties of the aggregate root with `@InsertOnlyProperty`.
Properties annotated in such way will be written to the database only during insert operations, but they will not be updated afterwards.

Closes #637
Original pull request #1327
2022-10-06 12:54:33 +02:00
Mark Paluch
76ea47ab16 Deprecate mutability of DelegatingDataAccessStrategy.
See: #1315
Original pull request: #1324.
2022-10-05 15:34:11 +02:00
Mark Paluch
26c5c5dd93 Polishing.
Use consistent method and argument names for newly introduced methods. Reorder and group template API methods to keep related methods together.

See: #1315
Original pull request: #1324.
2022-10-05 15:34:11 +02:00
Jens Schauder
aef1e34f5e Drop superfluous class argument from delete methods in JdbcAggregateTemplate.
Closes: #1315
Original pull request: #1324.
2022-10-05 15:34:11 +02:00
Jens Schauder
01e98dc171 Polishing.
See: #1315
Original pull request: #1324.
2022-10-05 15:34:11 +02:00
Jens Schauder
e171d4b91b Remove non-Javadoc comments.
These are no longer serve their purpose.

Closes #1347
2022-10-05 15:34:11 +02:00
Jens Schauder
ea00369f07 Add support for factory methods.
R2DBC now supports the use of factory methods for entity creation.
Spring Data JDBC already does so via f326897950

Simply annotate a static factory method on your entity class with `@PersistenceCreator`.

Closes #1346
See https://github.com/spring-projects/spring-data-commons/issues/2476
See f326897950
2022-10-05 15:34:10 +02:00
Jens Schauder
d1890e3b69 Reuse existing infrastructure for SpEL processing.
Original pull request #229
See #619
2022-09-30 12:29:12 +02:00
Christopher Klein
9abaa5a911 Support for SpEL inside @Query annotations.
Constructs like the following work now.

```
@Query("select u from User u where u.firstname = :#{#customer.firstname}")
List<User> findUsersByCustomersFirstname(@Param("customer") Customer customer);
```

Closes #619
Original pull request #229
See https://spring.io/blog/2014/07/15/spel-support-in-spring-data-jpa-query-definitions
2022-09-30 12:27:46 +02:00
Jens Schauder
f326897950 Removed deprecations.
Removed deprecated API and usasage of deprecated API.

Closes #1340
2022-09-28 12:02:46 +02:00
Jens Schauder
98ef3df478 Polishing.
Original pull request #1338
See #1329
2022-09-26 14:22:06 +02:00
Hari Ohm Prasth Rajagopal
9b6570452c Avoid exception for empty criteria.
Code changes to check for both null and empty criteria before proceeding to where clause generation avoids exception.

Closes #1329
Original pull request #1338
2022-09-26 14:22:06 +02:00