Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitee020d3

Browse files
committed
Java:所有 Demo 升级自身, APIJSON, apijson-framework 版本至 5.1.0,升级 UnitAuto 至 2.7.2
1 parentba1f96a commitee020d3

File tree

33 files changed

+295
-180
lines changed

33 files changed

+295
-180
lines changed

‎APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<modelVersion>4.0.0</modelVersion>
55

66
<groupId>apijson.boot</groupId>
7-
<artifactId>apijson-boot</artifactId>
7+
<artifactId>apijson-boot-multi-datasource</artifactId>
88
<version>5.1.0</version>
99
<!-- <packaging>jar</packaging>-->
1010

‎APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoController.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -228,12 +228,13 @@ public String delete(@RequestBody String request, HttpSession session) {
228228

229229
// 以上接口对应的简版接口,格式为 {method}/{tag}?format=true&@explain=true.. <<<<<<<<<<<<<<<<<<<<<<<<<
230230

231-
232-
/**增删改查统一入口,这个一个方法可替代以下 7 个方法,牺牲一些路由解析性能来提升一点开发效率
233-
* @param request 只用String,避免encode后未decode
231+
/**增删改查统一接口,这个一个接口可替代 7 个万能通用接口,牺牲一些路由解析性能来提升一点开发效率
232+
* @param method
233+
* @param tag
234+
* @param params
235+
* @param request
234236
* @param session
235237
* @return
236-
* @see {@link RequestMethod#DELETE}
237238
*/
238239
@PostMapping("crud/{method}/{tag}")// 直接 {method}/{tag} 或 apijson/{method}/{tag} 会和内置网页的路由有冲突
239240
@Override
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

‎APIJSON-Java-Server/APIJSONBoot/pom.xml

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
<groupId>apijson.boot</groupId>
77
<artifactId>apijson-boot</artifactId>
8-
<version>5.0.0</version>
8+
<version>5.1.0</version>
99
<!-- <packaging>jar</packaging>-->
1010

1111
<name>APIJSONBoot</name>
@@ -32,17 +32,16 @@
3232
<version>4.0.1</version>
3333
</dependency>
3434

35-
<!-- 单元测试:可使用 libs 目录的 unitauto-java.jar 和 unitauto-jar.jar 来替代,两种方式二选一
36-
<<<<<<<<<-->
35+
<!-- 单元测试:可使用 libs 目录的 unitauto-java.jar 和 unitauto-jar.jar 来替代,两种方式二选一 <<<<<<<<<-->
3736
<dependency>
3837
<groupId>com.github.TommyLemon</groupId>
3938
<artifactId>unitauto-java</artifactId>
40-
<version>2.6.4</version>
39+
<version>2.7.2</version>
4140
</dependency>
4241
<dependency>
4342
<groupId>com.github.TommyLemon</groupId>
4443
<artifactId>unitauto-jar</artifactId>
45-
<version>2.6.4</version>
44+
<version>2.7.2</version>
4645
</dependency>
4746
<dependency>
4847
<groupId>io.github.classgraph</groupId>
@@ -56,17 +55,17 @@
5655
<dependency>
5756
<groupId>com.github.Tencent</groupId>
5857
<artifactId>APIJSON</artifactId>
59-
<version>5.0.0</version>
58+
<version>5.1.0</version>
6059
</dependency>
6160
<dependency>
6261
<groupId>com.github.APIJSON</groupId>
6362
<artifactId>apijson-framework</artifactId>
64-
<version>5.0.0</version>
63+
<version>5.1.0</version>
6564
</dependency>
6665
<dependency>
6766
<groupId>com.github.APIJSON</groupId>
6867
<artifactId>apijson-column</artifactId>
69-
<version>1.2.0</version>
68+
<version>1.2.2</version>
7069
</dependency>
7170
<!-- 可使用 libs 目录的 apijson-orm.jar, apijson-framework.jar, apijson-column.jar 来替代,两种方式二选一 >>>>>>>>>>-->
7271

‎APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/boot/DemoApplication.java

Lines changed: 18 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,23 @@
7272
publicclassDemoApplicationimplementsApplicationContextAware,WebServerFactoryCustomizer<ConfigurableServletWebServerFactory> {
7373
privatestaticfinalStringTAG ="DemoApplication";
7474

75+
publicstaticvoidmain(String[]args)throwsException {
76+
SpringApplication.run(DemoApplication.class,args);
77+
78+
// FIXME 不要开放给项目组后端之外的任何人使用 UnitAuto(强制登录鉴权)!!!如果不需要单元测试则移除相关代码或 unitauto.Log.DEBUG = false;
79+
// 上线生产环境前改为 false,可不输出 APIJSONORM 的日志 以及 SQLException 的原始(敏感)信息
80+
unitauto.Log.DEBUG =Log.DEBUG =true;
81+
APIJSONParser.IS_PRINT_BIG_LOG =true;
82+
APIJSONApplication.init();
83+
}
84+
85+
// SpringBoot 2.x 自定义端口方式
86+
@Override
87+
publicvoidcustomize(ConfigurableServletWebServerFactoryserver) {
88+
server.setPort(8080);
89+
}
90+
91+
7592
static {
7693
// APIJSON 配置 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
7794

@@ -81,7 +98,7 @@ public class DemoApplication implements ApplicationContextAware, WebServerFactor
8198
COMPILE_MAP.put("ID_CARD",StringUtil.PATTERN_ID_CARD);
8299

83100
// 使用本项目的自定义处理类
84-
APIJSONApplication.DEFAULT_APIJSON_CREATOR =newAPIJSONCreator() {
101+
APIJSONApplication.DEFAULT_APIJSON_CREATOR =newAPIJSONCreator<Long>() {
85102

86103
@Override
87104
publicParser<Long>createParser() {
@@ -242,21 +259,6 @@ public boolean apply(Object object, String name, Object value) {
242259
}
243260

244261

245-
publicstaticvoidmain(String[]args)throwsException {
246-
SpringApplication.run(DemoApplication.class,args);
247-
248-
// FIXME 不要开放给项目组后端之外的任何人使用 UnitAuto(强制登录鉴权)!!!如果不需要单元测试则移除相关代码或 unitauto.Log.DEBUG = false;
249-
// 上线生产环境前改为 false,可不输出 APIJSONORM 的日志 以及 SQLException 的原始(敏感)信息
250-
unitauto.Log.DEBUG =Log.DEBUG =true;
251-
APIJSONParser.IS_PRINT_BIG_LOG =true;
252-
APIJSONApplication.init();
253-
}
254-
255-
// SpringBoot 2.x 自定义端口方式
256-
@Override
257-
publicvoidcustomize(ConfigurableServletWebServerFactoryserver) {
258-
server.setPort(8080);
259-
}
260262

261263
// 全局 ApplicationContext 实例,方便 getBean 拿到 Spring/SpringBoot 注入的类实例
262264
privatestaticApplicationContextAPPLICATION_CONTEXT;

‎APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/boot/DemoController.java

Lines changed: 35 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -101,16 +101,31 @@
101101
@Service
102102
@RestController
103103
@RequestMapping("")
104-
publicclassDemoControllerextendsAPIJSONController {
104+
publicclassDemoControllerextendsAPIJSONController<Long> {
105105
privatestaticfinalStringTAG ="DemoController";
106106

107107
// 可以更方便地通过日志排查错误
108108
@Override
109109
publicStringgetRequestURL() {
110110
returnhttpServletRequest.getRequestURL().toString();
111111
}
112+
112113

113-
//通用接口,非事务型操作 和 简单事务型操作 都可通过这些接口自动化实现<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
114+
// 通用接口,非事务型操作 和 简单事务型操作 都可通过这些接口自动化实现 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
115+
116+
/**增删改查统一入口,这个一个方法可替代以下 7 个方法,牺牲一些路由解析性能来提升一点开发效率
117+
* @param method
118+
* @param tag
119+
* @param params
120+
* @param request
121+
* @param session
122+
* @return
123+
*/
124+
@PostMapping(value ="crud/{method}")// 直接 {method} 或 apijson/{method} 会和内置网页的路由有冲突
125+
@Override
126+
publicStringcrud(@PathVariableStringmethod,@RequestBodyStringrequest,HttpSessionsession) {
127+
returnsuper.crud(method,request,session);
128+
}
114129

115130
/**获取
116131
* @param request 只用String,避免encode后未decode
@@ -196,8 +211,23 @@ public String delete(@RequestBody String request, HttpSession session) {
196211
returnsuper.delete(request,session);
197212
}
198213

214+
// 通用接口,非事务型操作 和 简单事务型操作 都可通过这些接口自动化实现 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
199215

200-
//以上接口对应的简版接口,格式为 {method}/{tag}?format=true&@explain=true.. <<<<<<<<<<<<<<<<<<<<<<<<<
216+
// 以上接口对应的简版接口,格式为 {method}/{tag}?format=true&@explain=true.. <<<<<<<<<<<<<<<<<<<<<<<<<
217+
218+
/**增删改查统一接口,这个一个接口可替代 7 个万能通用接口,牺牲一些路由解析性能来提升一点开发效率
219+
* @param method
220+
* @param tag
221+
* @param params
222+
* @param request
223+
* @param session
224+
* @return
225+
*/
226+
@PostMapping("crud/{method}/{tag}")// 直接 {method}/{tag} 或 apijson/{method}/{tag} 会和内置网页的路由有冲突
227+
@Override
228+
publicStringcrudByTag(@PathVariableStringmethod,@PathVariableStringtag,@RequestParamMap<String,String>params,@RequestBodyStringrequest,HttpSessionsession) {
229+
returnsuper.crudByTag(method,tag,params,request,session);
230+
}
201231

202232
/**获取
203233
* @param request 只用String,避免encode后未decode
@@ -283,7 +313,7 @@ public String deleteByTag(@PathVariable String tag, @RequestParam Map<String, St
283313
returnsuper.deleteByTag(tag,params,request,session);
284314
}
285315

286-
//以上接口对应的简版接口,格式为 {method}/{tag}?format=true&@explain=true.. >>>>>>>>>>>>>>>>>>>>>>>>>
316+
//以上接口对应的简版接口,格式为 {method}/{tag}?format=true&@explain=true.. >>>>>>>>>>>>>>>>>>>>>>>>>
287317

288318

289319

@@ -1231,6 +1261,7 @@ else if (APIJSON_DELEGATE_ID.toLowerCase().equals(name.toLowerCase())) {
12311261
map.remove("$_type");
12321262
map.remove("$_except_headers");
12331263
map.remove("$_delegate_url");
1264+
map.remove("$_delegate_id");
12341265

12351266
Set<Entry<String,String[]>>set =map ==null ?null :map.entrySet();
12361267

‎APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/demo/DemoFunctionParser.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,9 @@ public Long getCurrentUserId(@NotNull JSONObject current) {
5757
}
5858

5959
publicList<Long>getCurrentUserIdAsList(@NotNullJSONObjectcurrent) {
60-
returnArrays.asList(DemoVerifier.getVisitorId(getSession()));
60+
List<Long>list =newArrayList<>(1);
61+
list.add(DemoVerifier.getVisitorId(getSession()));
62+
returnlist;
6163
}
6264

6365
publicList<Long>getCurrentContactIdList(@NotNullJSONObjectcurrent) {
@@ -235,17 +237,14 @@ public JSONArray getIdList(@NotNull JSONObject current) {
235237
* @return
236238
* @throws Exception
237239
*/
238-
@Override
239240
publicObjectverifyAccess(@NotNullJSONObjectcurrent)throwsException {
240241
longuserId =current.getLongValue(JSONRequest.KEY_USER_ID);
241242
Stringrole =current.getString(JSONRequest.KEY_ROLE);
242-
if (AbstractVerifier.OWNER.equals(role) &&userId !=DemoVerifier.getVisitorId(getSession())) {
243+
if (AbstractVerifier.OWNER.equals(role) &&userId !=(Long)DemoVerifier.getVisitorId(getSession())) {
243244
thrownewIllegalAccessException("登录用户与角色OWNER不匹配!");
244245
}
245246
returnnull;
246247
}
247248

248249

249-
250-
251250
}

‎APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/demo/DemoParser.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
* 具体见 https://github.com/Tencent/APIJSON/issues/38
2727
* @author Lemon
2828
*/
29-
publicclassDemoParserextendsAPIJSONParser {
29+
publicclassDemoParserextendsAPIJSONParser<Long> {
3030

3131
publicDemoParser() {
3232
super();

‎APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/demo/DemoSQLConfig.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -65,10 +65,10 @@ public DemoSQLConfig(RequestMethod method, String table) {
6565
//TABLE_KEY_MAP.put(Privacy.class.getSimpleName(), "apijson_privacy");
6666

6767
//主键名映射
68-
SIMPLE_CALLBACK =newSimpleCallback() {
68+
SIMPLE_CALLBACK =newSimpleCallback<Long>() {
6969

7070
@Override
71-
publicAbstractSQLConfiggetSQLConfig(RequestMethodmethod,Stringdatabase,Stringschema,Stringtable) {
71+
publicAbstractSQLConfiggetSQLConfig(RequestMethodmethod,Stringdatabase,Stringschema,Stringdatasource,Stringtable) {
7272
returnnewDemoSQLConfig(method,table);
7373
}
7474

@@ -81,13 +81,13 @@ public AbstractSQLConfig getSQLConfig(RequestMethod method, String database, Str
8181
//}
8282

8383
@Override
84-
publicStringgetUserIdKey(Stringdatabase,Stringschema,Stringdatasource,Stringtable) {
84+
publicStringgetUserIdKey(Stringdatabase,Stringschema,Stringdatasource,Stringtable) {
8585
returnUSER_.equals(table) ||PRIVACY_.equals(table) ?ID :USER_ID;// id / userId
8686
}
8787

8888
//取消注释来实现数据库自增 id
8989
//@Override
90-
//publicObject newId(RequestMethod method, String database, String schema, String datasource, String table) {
90+
//publicLong newId(RequestMethod method, String database, String schema, String datasource, String table) {
9191
//return null; // return null 则不生成 id,一般用于数据库自增 id
9292
//}
9393

‎APIJSON-Java-Server/APIJSONBoot/src/main/java/apijson/demo/DemoVerifier.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
* 具体见 https://github.com/Tencent/APIJSON/issues/12
2222
* @author Lemon
2323
*/
24-
publicclassDemoVerifierextendsAPIJSONVerifier {
24+
publicclassDemoVerifierextendsAPIJSONVerifier<Long> {
2525
publicstaticfinalStringTAG ="DemoVerifier";
2626

2727
// 重写方法来自定义字段名等

‎APIJSON-Java-Server/APIJSONDemo-Druid/pom.xml

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
<groupId>apijson.demo</groupId>
77
<artifactId>apijson-demo-druid</artifactId>
8-
<version>5.0.0</version>
8+
<version>5.1.0</version>
99
<packaging>jar</packaging>
1010

1111
<name>APIJSONDemo-Druid</name>
@@ -22,7 +22,7 @@
2222
<dependency>
2323
<groupId>com.github.APIJSON</groupId>
2424
<artifactId>apijson-framework</artifactId>
25-
<version>LATEST</version>
25+
<version>5.1.0</version>
2626
</dependency>
2727

2828
<!-- 需要用的数据库 JDBC 驱动-->
@@ -83,6 +83,15 @@
8383
</build>
8484

8585
<repositories>
86+
<!-- APIJSON 必须用到的托管平台-->
87+
<repository>
88+
<id>jitpack.io</id>
89+
<url>https://jitpack.io</url>
90+
<snapshots>
91+
<enabled>true</enabled>
92+
</snapshots>
93+
</repository>
94+
8695
<repository>
8796
<id>spring-snapshots</id>
8897
<url>https://repo.spring.io/snapshot</url>
@@ -94,10 +103,6 @@
94103
<id>spring-milestones</id>
95104
<url>https://repo.spring.io/milestone</url>
96105
</repository>
97-
<repository>
98-
<id>jitpack.io</id>
99-
<url>https://jitpack.io</url>
100-
</repository>
101106
</repositories>
102107

103108
</project>

‎APIJSON-Java-Server/APIJSONDemo-Druid/src/main/java/apijson/demo/DemoApplication.java

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@
3232
importapijson.framework.APIJSONApplication;
3333
importapijson.framework.APIJSONCreator;
3434
importapijson.orm.SQLConfig;
35-
importapijson.orm.SQLExecutor;
3635

3736

3837
/**Demo SpringBoot Application 主应用程序启动类
@@ -63,15 +62,11 @@ public void customize(ConfigurableServletWebServerFactory server) {
6362

6463
static {
6564
// 使用本项目的自定义处理类
66-
APIJSONApplication.DEFAULT_APIJSON_CREATOR =newAPIJSONCreator() {
65+
APIJSONApplication.DEFAULT_APIJSON_CREATOR =newAPIJSONCreator<Long>() {
6766
@Override
6867
publicSQLConfigcreateSQLConfig() {
6968
returnnewDemoSQLConfig();
7069
}
71-
@Override
72-
publicSQLExecutorcreateSQLExecutor() {
73-
returnnewDemoSQLExecutor();
74-
}
7570
};
7671

7772
// 把以下需要用到的数据库驱动取消注释即可,如果这里没有可以自己新增

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp