1
1
package com .codingapi .springboot .fast ;
2
2
3
3
import com .codingapi .springboot .fast .entity .Demo ;
4
+ import com .codingapi .springboot .fast .jpa .SQLBuilder ;
4
5
import com .codingapi .springboot .fast .repository .DemoRepository ;
5
6
import com .codingapi .springboot .framework .dto .request .Filter ;
6
7
import com .codingapi .springboot .framework .dto .request .PageRequest ;
@@ -47,7 +48,7 @@ void findAll() {
47
48
demoRepository .save (demo2 );
48
49
49
50
PageRequest request = new PageRequest ();
50
- request .setCurrent (0 );
51
+ request .setCurrent (1 );
51
52
request .setPageSize (10 );
52
53
request .addFilter ("name" , "123" );
53
54
@@ -68,7 +69,7 @@ void pageRequest() {
68
69
demoRepository .save (demo2 );
69
70
70
71
PageRequest request = new PageRequest ();
71
- request .setCurrent (0 );
72
+ request .setCurrent (1 );
72
73
request .setPageSize (10 );
73
74
request .addFilter ("name" , Relation .LIKE , "%2%" );
74
75
@@ -89,7 +90,7 @@ void customInSearch() {
89
90
demoRepository .save (demo2 );
90
91
91
92
PageRequest request = new PageRequest ();
92
- request .setCurrent (0 );
93
+ request .setCurrent (1 );
93
94
request .setPageSize (10 );
94
95
95
96
request .addFilter ("id" , Relation .IN , 1 , 2 , 3 );
@@ -116,7 +117,12 @@ void customOrSearch() {
116
117
request .setPageSize (10 );
117
118
118
119
119
- request .orFilters (Filter .as ("id" , Relation .IN , 1 , 2 , 3 ), Filter .as ("name" , "123" ));
120
+ // request.andFilter(Filter.as("id", Relation.IN, 1, 2, 3), Filter.as("name", "123"));
121
+ request .addFilter ("name" , "456" ).orFilters (Filter .as ("id" , Relation .IN , 1 , 2 , 3 ), Filter .as ("name" , "123" ));
122
+
123
+ request .addSort (Sort .by ("id" ).descending ());
124
+
125
+
120
126
121
127
Page <Demo > page = demoRepository .pageRequest (request );
122
128
log .info ("demo:{}" , page .getContent ());
@@ -134,7 +140,32 @@ void dynamicListQuery() {
134
140
demo2 .setName ("456" );
135
141
demoRepository .save (demo2 );
136
142
137
- List <Demo > list = demoRepository .dynamicListQuery ("from Demo where name = ?1" , "123" );
143
+ SQLBuilder builder = new SQLBuilder (Demo .class ,"from Demo where 1=1" );
144
+ String search = "12" ;
145
+ builder .append ("and name like ?" ,"%" +search +"%" );
146
+
147
+ List <Demo > list = demoRepository .dynamicListQuery (builder );
148
+ assertEquals (1 , list .size ());
149
+ }
150
+
151
+
152
+
153
+ @ Test
154
+ void dynamicNativeListQuery () {
155
+ demoRepository .deleteAll ();
156
+ Demo demo1 = new Demo ();
157
+ demo1 .setName ("123" );
158
+ demoRepository .save (demo1 );
159
+
160
+ Demo demo2 = new Demo ();
161
+ demo2 .setName ("456" );
162
+ demoRepository .save (demo2 );
163
+
164
+ SQLBuilder builder = new SQLBuilder (Demo .class ,"select * from t_demo where 1=1" );
165
+ String search = "12" ;
166
+ builder .append ("and name like ?" ,"%" +search +"%" );
167
+
168
+ List <Demo > list = demoRepository .dynamicNativeListQuery (builder );
138
169
assertEquals (1 , list .size ());
139
170
}
140
171
@@ -150,7 +181,11 @@ void dynamicPageQuery() {
150
181
demo2 .setName ("456" );
151
182
demoRepository .save (demo2 );
152
183
153
- Page <Demo > page = demoRepository .dynamicPageQuery ("from Demo where name = ?1" , PageRequest .of (1 , 2 ), "123" );
184
+ SQLBuilder builder = new SQLBuilder (Demo .class ,"select d from Demo d where 1=1" ,"select count(1) from Demo d where 1=1" );
185
+ String search = "12" ;
186
+ builder .append ("and d.name like ?" ,"%" +search +"%" );
187
+
188
+ Page <Demo > page = demoRepository .dynamicPageQuery (builder ,PageRequest .of (1 , 2 ));
154
189
assertEquals (1 , page .getTotalElements ());
155
190
}
156
191
0 commit comments