File tree Expand file tree Collapse file tree 5 files changed +48
-18
lines changed
spring-data-jdbc-demo/src/main/java/com/vonchange/common Expand file tree Collapse file tree 5 files changed +48
-18
lines changed Original file line number Diff line number Diff line change @@ -84,3 +84,24 @@ public class JdbcMybatisTestApplication {
84
84
```
85
85
86
86
87
+
88
+ ## official spring data jdbc extend mybatis dynamic sql
89
+
90
+ see spring-data-jdbc-demo
91
+
92
+ configuration
93
+ ```
94
+ @Configuration
95
+ public class MybatisQuerySupportConfig {
96
+ @Bean
97
+ public NamedParameterJdbcOperations namedParameterJdbcOperations(DataSource dataSource) {
98
+ return new MybatisJdbcTemplate(dataSource) {@Override protected Dialect dialect() {return new MySQLDialect();}};
99
+ }
100
+ }
101
+ ```
102
+ use
103
+ ```
104
+ @Query("user.queryByUserCode")
105
+ List<UserDTO> queryByUserCode(@Param("userCode") String userCode);
106
+ ```
107
+ but SpEL support became available with Spring Data JDBC 3.0 RC1
Original file line number Diff line number Diff line change 14
14
使用方式和官方教程一直 引入spring-boot-starter-data-jdbc 即可
15
15
只需要配置魔改的NamedParameterJdbcTemplate 即可
16
16
```
17
+ @Configuration
18
+ public class MybatisQuerySupportConfig {
17
19
@Bean
18
- public NamedParameterJdbcOperations namedParameterJdbcOperations(DataSource dataSource) {return new MybatisJdbcTemplate(dataSource) {@Override
19
- protected Dialect dialect() {return new MySQLDialect();}
20
- };
20
+ public NamedParameterJdbcOperations namedParameterJdbcOperations(DataSource dataSource) {
21
+ return new MybatisJdbcTemplate(dataSource) {@Override protected Dialect dialect() {return new MySQLDialect();}};
21
22
}
23
+ }
22
24
```
23
25
@Query 的ID 是user.md里面ID是queryByUserCode的sql片段
24
26
```
Original file line number Diff line number Diff line change 9
9
使用方式和官方教程一直 引入spring-boot-starter-data-jdbc 即可
10
10
只需要配置魔改的NamedParameterJdbcTemplate 即可
11
11
```
12
+ @Configuration
13
+ public class MybatisQuerySupportConfig {
12
14
@Bean
13
- public NamedParameterJdbcOperations namedParameterJdbcOperations(DataSource dataSource) {return new MybatisJdbcTemplate(dataSource) {@Override
14
- protected Dialect dialect() {return new MySQLDialect();}
15
- };
15
+ public NamedParameterJdbcOperations namedParameterJdbcOperations(DataSource dataSource) {
16
+ return new MybatisJdbcTemplate(dataSource) {@Override protected Dialect dialect() {return new MySQLDialect();}};
16
17
}
18
+ }
17
19
```
18
20
@Query 的ID 是user.md里面ID是queryByUserCode的sql片段
19
21
```
Original file line number Diff line number Diff line change 1
1
package com .vonchange .common ;
2
2
3
- import com .vonchange .jdbc .mybatis .MybatisJdbcTemplate ;
4
- import com .vonchange .mybatis .dialect .Dialect ;
5
- import com .vonchange .mybatis .dialect .MySQLDialect ;
6
3
import org .springframework .boot .SpringApplication ;
7
4
import org .springframework .boot .autoconfigure .SpringBootApplication ;
8
- import org .springframework .context .annotation .Bean ;
9
5
import org .springframework .data .jdbc .repository .config .EnableJdbcRepositories ;
10
- import org .springframework .jdbc .core .namedparam .NamedParameterJdbcOperations ;
11
-
12
- import javax .sql .DataSource ;
13
6
14
7
/**
15
8
* Hello world!
19
12
@ EnableJdbcRepositories
20
13
public class App
21
14
{
22
- @ Bean
23
- public NamedParameterJdbcOperations namedParameterJdbcOperations (DataSource dataSource ) {return new MybatisJdbcTemplate (dataSource ) {@ Override
24
- protected Dialect dialect () {return new MySQLDialect ();}
25
- };
26
- }
27
15
public static void main ( String [] args )
28
16
{
29
17
SpringApplication .run (App .class , args );
Original file line number Diff line number Diff line change
1
+ package com .vonchange .common .config ;
2
+
3
+ import com .vonchange .jdbc .mybatis .MybatisJdbcTemplate ;
4
+ import com .vonchange .mybatis .dialect .Dialect ;
5
+ import com .vonchange .mybatis .dialect .MySQLDialect ;
6
+ import org .springframework .context .annotation .Bean ;
7
+ import org .springframework .context .annotation .Configuration ;
8
+ import org .springframework .jdbc .core .namedparam .NamedParameterJdbcOperations ;
9
+
10
+ import javax .sql .DataSource ;
11
+ @ Configuration
12
+ public class MybatisQuerySupportConfig {
13
+ @ Bean
14
+ public NamedParameterJdbcOperations namedParameterJdbcOperations (DataSource dataSource ) {
15
+ return new MybatisJdbcTemplate (dataSource ) {@ Override protected Dialect dialect () {return new MySQLDialect ();}};
16
+ }
17
+ }
You can’t perform that action at this time.
0 commit comments