From 557d620e6dca9abad2bd2747b58b13b961af625f Mon Sep 17 00:00:00 2001 From: Sea Date: Thu, 14 Feb 2019 10:03:43 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E4=BF=AE=E5=A4=8DMysql=E6=97=A0=E6=B3=95?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=88=A0=E9=99=A4=E7=9A=84BUG=EF=BC=8C?= =?UTF-8?q?=E5=AE=8C=E5=96=84README?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 119 ++++++++++++++++-- pom.xml | 49 ++++++++ .../biao/apijson/parser/APIJSONProvider.java | 6 +- .../APIJSONParser/pom.properties | 2 +- .../maven/APIJSONParser/APIJSONParser/pom.xml | 49 ++++++++ .../biao/apijson/parser/APIJSONProvider.class | Bin 22286 -> 22321 bytes 6 files changed, 215 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 90005e2..d4b910f 100644 --- a/README.md +++ b/README.md @@ -428,32 +428,135 @@ WHERE (c_store.code = 'C86L') ## 速查 +> 速查中的示例,都是最简单的实例,更新,删除的功能中的过滤条件的使用和查询相同,具体使用参考上述说明 + + + +一个叫`test_apijson`的表 + + + +| ID | CODE | NAME | +| ---- | ---- | ------ | +| 1 | A001 | 浦东区 | +| 2 | B001 | 徐汇区 | +| 3 | C001 | 普陀区 | + + + ### 查询 -#### 别名 +**请求地址:**`http://localhost:8080/jtyd-admin/api/wxapp/apijson_query` + +查询`A001`的名称 + -表的别名 ```json { - "Table:t":{} + "test_apijson":{ + "@column":"name", + "code":"A001" + } } ``` -字段的别名 + + +### 新增 + +**请求地址:**`http://localhost:8080/jtyd-admin/api/wxapp/apijson_insert` + +新增一行如ID=1的数据 + + ```json { - "Table:t":{ - "@column":"columnName:columnAliasName,.." + "test_apijson":{ + "code":"A001", + "name":"浦东区" } } ``` -### 新增 +ID是自动增长的,所以不需要再给ID赋值。 ### 修改 -### 删除 \ No newline at end of file +**请求地址:**`http://localhost:8080/jtyd-admin/api/wxapp/apijson_update` + +修改代码`B001`为`A002` + + + +```json +{ + "test_apijson":{ + "@code":"A002", + "code": "B001" + } +} +``` + + + + + +### 删除 + +**请求地址:**`http://localhost:8080/jtyd-admin/api/wxapp/apijson_delete` + +删除`A002` + + + +```json +{ + "test_apijson":{ + "code": "A002" + } +} +``` + + + +## 权限 + +### 表权限 + +表白名单:`APIJSONProvider.getTableWhiteList()` + +表黑名单:`APIJSONProvider.getTableBlackList()` + +表的黑白名单的使用 + + + +```java +apijsonProvider.getTableBlackList().add("Retail"); +``` + +`Retail`是表名 + + + +### 字段权限 + +字段白名单:`APIJSONProvider.getColumnWhiteList()` + +字段黑名单:`APIJSONProvider.getColumnBlackList()` + +字段的黑白名单的使用 + + + +```java +apijsonProvider.getColumnWhiteList().add("retail.*"); +apijsonProvider.getColumnWhiteList().add("retail.amt"); +``` + +格式:`表名.字段名`,字段名支持通配符`*` + diff --git a/pom.xml b/pom.xml index e6ffde5..e9e316b 100644 --- a/pom.xml +++ b/pom.xml @@ -27,4 +27,53 @@ 1.2.21 + + + + org.apache.maven.plugins + maven-surefire-plugin + 2.21.0 + + true + + + + + maven-compiler-plugin + 2.3.2 + + 1.8 + 1.8 + UTF-8 + + ${project.basedir}/lib/ + + + + + + maven-assembly-plugin + + + jar-with-dependencies + + + + com.ctbri.echoRisk.ApplicationStart + + + + + + make-assembly + package + + single + + + + + + + diff --git a/src/main/java/zuo/biao/apijson/parser/APIJSONProvider.java b/src/main/java/zuo/biao/apijson/parser/APIJSONProvider.java index dd55655..14eefd2 100644 --- a/src/main/java/zuo/biao/apijson/parser/APIJSONProvider.java +++ b/src/main/java/zuo/biao/apijson/parser/APIJSONProvider.java @@ -90,7 +90,11 @@ public List getTables() { } } validateTable(tableRealName); - list.add(tableRealName + " " + tableAliasName); + if(getStatementType() == StatementType.SELECT) { + list.add(tableRealName + " " + tableAliasName); + }else { + list.add(tableRealName); + } } return list; } diff --git a/target/classes/META-INF/maven/APIJSONParser/APIJSONParser/pom.properties b/target/classes/META-INF/maven/APIJSONParser/APIJSONParser/pom.properties index 646310f..26916d5 100644 --- a/target/classes/META-INF/maven/APIJSONParser/APIJSONParser/pom.properties +++ b/target/classes/META-INF/maven/APIJSONParser/APIJSONParser/pom.properties @@ -1,5 +1,5 @@ #Generated by Maven Integration for Eclipse -#Wed Jan 16 11:59:18 CST 2019 +#Thu Feb 14 08:53:56 CST 2019 version=0.0.1-SNAPSHOT groupId=APIJSONParser m2e.projectName=APIJSONParser diff --git a/target/classes/META-INF/maven/APIJSONParser/APIJSONParser/pom.xml b/target/classes/META-INF/maven/APIJSONParser/APIJSONParser/pom.xml index e6ffde5..e9e316b 100644 --- a/target/classes/META-INF/maven/APIJSONParser/APIJSONParser/pom.xml +++ b/target/classes/META-INF/maven/APIJSONParser/APIJSONParser/pom.xml @@ -27,4 +27,53 @@ 1.2.21 + + + + org.apache.maven.plugins + maven-surefire-plugin + 2.21.0 + + true + + + + + maven-compiler-plugin + 2.3.2 + + 1.8 + 1.8 + UTF-8 + + ${project.basedir}/lib/ + + + + + + maven-assembly-plugin + + + jar-with-dependencies + + + + com.ctbri.echoRisk.ApplicationStart + + + + + + make-assembly + package + + single + + + + + + + diff --git a/target/classes/zuo/biao/apijson/parser/APIJSONProvider.class b/target/classes/zuo/biao/apijson/parser/APIJSONProvider.class index 417bd28b848d99338ef4fdd38eb4985dfc4c1913..0836ce997106a65b1e83ec82f796cb55d769dd86 100644 GIT binary patch delta 5849 zcmb_gdt6mj+J4@(&e{8HuEs??AOi{ras(m|ctJ&ODheVRC{`+xG)kGKk(zc=F?Grs z+f85EJxw&c1&W#%th{7dR({UZ*v&F4%SyXB(m`lAWkRcs>!O{=V}OuK#d)SJ_arp}rjfM)DyTB|xJu!W%AG-dXfDK}54n%%TQ zs|&W((;ESFjQ!f}Pw~V10rUYsyl9^j(nKQ-pX2#u^ko2j#ZE><&XDm-VL>oJ6}#c6 z*nyOyyD*l}U#X`I{ln_Vf!*m?vw>=t+5 zuDIP@KJ3^EFsMRqYZ1-uAlQ(tN5xdQx?=+6U?SyX5)~tt#xirmc}5)qjZeS`6!DXd zO0g52LFhz<*o7A$Py>nGP`JGfCq2Dt_PdA2ESQaVJ-tNgfxSFt#U%J+A6lSdHRfQy z(Q{!7D)1tkZR~U;Uc$==z~2#%VjN%y2l?fl`DJbZU3>rz@mLAl{)vEAL_t+SDwiaJfX`QZn~K9Ae#c?MbrOO*n#60&X(}Fc z1L@TYtz(~qy-r0dbI^vX{i}iWR;H)T=>0}!;}t!=TY|;VhF;ulRj?_F6Fx!cKXhxM zjr#WP4r zhpn^$jkF0(w3E+y3%1h{G}CeHpi9^#fZamH9&r`+iYV+81!xh&uwVQUkBi%Ix0sJt zOzFRhFhJbpmA0W*jy?(~fR>UCax8L2t5%8+qI6u5^ z#`)$Uf%7=cjCJGwa%NmY|Dwkz`)lUT#qy&O+}uIS=s8 zPVVnX8pQpdldk9XR!26sTg>(wvrX$YoJZ#M8p>@$axS-DCr5WOBdjtfxtVf9{5i<# zQI0We`j5+F%(Le2K3x3+>H;Y|(C)YI>C62c_5j0AT*`FzGdnfYcwK5Nw?|X^bDNMF z$50DXlYiB!rWsa8n(-mi(t2HG!lQG^W{OZbMd6xzg`P6@aPWT9k_?S=qX;#UnO!pb&;0w+eXK@q0;=FJU zx8oa*3+J%{7dYyFhkAUEZTNvt`H%ec6FKn@%EiB^1efSKv{E&vY8MeLBuV#?g&rd- zttW*xl1hzaqg|xY0T=nvkK`{b6d*DwP~=mPsHI?0N1a47T_uiDh}0-lMo^e6q|S0Y zMaUVX$~(y}>nKt#r6{RWSGk6wWefd5zDzOl2*t`bshd1W-7SF>XNjVCOED!_uA?57 z6_jXsl#(p3Q%}noO18RU$ze^UUe-yJYMn`G)}<6?9`da@+ z{j48Tf9qMwvVKbgtpA{a*2^?V38%qIH03A>l&hpro{~ZN$_Oe@%4vvFM_I~BDpX#i z5y}B7QjSuw@-~fBPEv{T5sgxQqR}p;mBy$lU8@FDnHoXmY6^{2`_eeInu^s~be+0} zCaTX7>>q2XY}IsTxNvDh@yIZX0$#jQ*jUJcVz}%X^i8?*D|}AgTuM)+oxZ*_OW~d z2Xb#Qqj@3d5BBNp&i6<9EDAT`N+{iLq;9J(b?cM*I!mA6lIcl=&{IgDr;$d_z)5S6 zMQf2q&tfmcx`mTxBlb`e_VL;yv{S!ja73Vc zx6-hh9%A-a4i2RQ`l$h-%yfFch!}(E0FKQzF5=uw8zou{l*@2(^wz%_9H}qt*TW6J zpUu5_%G5nVq{sD%6kl`O<_=g!jXKBvsW%L@uKg#f5XZUY0{9_FNO@{v# z!+)FMpJ4cZW%vgf{>k47epQwS{)()Q;KvVemVUzUPc!^a8U7iD{~5#ooZ)}L@Xs>* zFB$$hhW|Cg|Aygz%ka-L{0j{KJBI%~!~colUu5{7G5kxv6a0dK9{9Ho>MvX{GJRync+JaehR}+W%y|f|7wPR4a4uv z@SO}lgW+c~{5}l7FT?N0@CPvbfehcl@N<6`_=DZL@165@SX=3>wVhgfZjx&RBQIj) z#at1VaP?Tqs7Eu}F&Hb#Q7OiuMpR(B7>}9a2Fw=|aF3XXd&ML?EGqc|I2qf-jW{5t z;9XITi((21QNl^`X0tr1h9BSQg1m(-Dc-`CbF+D;i)?qPn~9a4@SBdeIQ;%SHzu)# zkM_HWp=Q3TXzlK1h9k3#H60z&WAnmNuL!K^-tcAI(7b`Qb1PSKo`9?0J)~RqFN2>s z@vyf%Ofqgr?c#G=X!KNv`b&8ZH^=Am-seK)Sbi**N8je#x$jqC^c@9Bu3Dz}4yJex zQ#_9;p3f97V2bZziWf4)i<#m&rg#Zcyo@Pc&J_QNDZZB}zK7Iq3e?hn5$fVo!v5mo zoax<9^TykTHpF*v_m%tlHA5Zrj6Pwg&U<%ZXrXHz?_E9b-Fn`;4Tu-d!66!uA~x~C z-hv|WJjRGd-plQnD4H=(?8FkWix2k;(8V6C7JIQq?87?If|ta8-os|R!E4_Uhs^yN z#59BdJ$Qb3;BDXW*yr9Z1$kUu?A7-Vv)|~eD$Hqa@f*{;yRjA8C8W6jNwo60v--I6 z>b7gUF_TZTr04>hZ>D}KBUB$%XcQ2mio*1oLVxb9D(M<-o-I$!(#F>MLW8aUEqsO9 zdVF{`x9<-hI`t@X_BwO+26J|dIeU{idy6?c&YYcK&i=-ny~CWHWX|4W&OTtyK4i{5 zV$MFsQ{oeB5~uNk_!Ni58RqIUd@eqxF5)aji7%;-c#m?#aT+1c>nlb?xZDLoB&B-< zo`=ik&mW12d{MZ_KcB3ahrP7GILqxKNP$n%#!4@Vjqv}!kr?VBr9&2tYO7-g*Ay8H z9xHl$RNEInkL!R_UkqpEb z8H6%<6(-6M%#&eQB0FQHjKCAJ3mT*yJ7pve$|xL_U2$1PQ;_@vh07SaUUGrXSC<*G zhbhTnEEdphUP;n4rYY3;4Hrq}UWO@-C3#|GT%}Kv<}`PJFlKq#Z2JF7Qm-iK%KX)q zbpK5jUoH8pI1g5tk1nzR>2e4L$e|c3hhZE)PnN~FU5>>4vIMK-D6HoGS~&(SvdsKs zCo2T}bI^N--_KundDLUP1CN$|U3NYDy#fAm0utmz^p%q^T2?a6lX0i4!hC+dNB)uh zPDPWPhF4_`UgQ1=IUVQa4AcK;&SBs@<@J97dz(HO9Y-`v7uOb8YxxCt=*8s`YPk8o z^PoQM+FY8eZ(`egwkTyp8-$_lKD*s|DM73o>EpKVKYSzcgW#uL>-{|Xfa$BXJow)jk6fPs delta 5623 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 From 91234ccaf968a443d625e0221bec9102969d8fe7 Mon Sep 17 00:00:00 2001 From: Sea Date: Thu, 14 Feb 2019 10:08:55 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E8=B0=83=E6=95=B4README?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/README.md b/README.md index d4b910f..861abaa 100644 --- a/README.md +++ b/README.md @@ -446,7 +446,6 @@ WHERE (c_store.code = 'C86L') ### 查询 -**请求地址:**`http://localhost:8080/jtyd-admin/api/wxapp/apijson_query` 查询`A001`的名称 @@ -465,7 +464,6 @@ WHERE (c_store.code = 'C86L') ### 新增 -**请求地址:**`http://localhost:8080/jtyd-admin/api/wxapp/apijson_insert` 新增一行如ID=1的数据 @@ -486,7 +484,6 @@ ID是自动增长的,所以不需要再给ID赋值。 ### 修改 -**请求地址:**`http://localhost:8080/jtyd-admin/api/wxapp/apijson_update` 修改代码`B001`为`A002` @@ -507,7 +504,6 @@ ID是自动增长的,所以不需要再给ID赋值。 ### 删除 -**请求地址:**`http://localhost:8080/jtyd-admin/api/wxapp/apijson_delete` 删除`A002`