boss 说了一个骚操作。。。

2019-12-05 21:18:32 +08:00
 jaylee4869

前端传不同的类名(比如 com.xxx.UserService ),后端拿到这个名字反射调用它的方法,实现一个 api 动态配置。。。

14522 次点击
所在节点    Java
75 条回复
uxstone
2019-12-06 09:09:57 +08:00
低内聚 高耦合
boss 说归说,最终出 bug 还是你来加班改,如果甩给后来人不太厚道
greenlaw110
2019-12-06 09:11:52 +08:00
@Evrins Playframework1 哪里是这样, route 配置在后端, 前端不可能传递后端的实现细节的, 这种不是骚操作, 这种是瞎操作
xuanbg
2019-12-06 09:23:51 +08:00
后端 API 需要动态配置么?
前端模块动态加载倒是常规操作,无论是导航数据里面配路由的 web 应用还是配类名的桌面应用都是这个套路。
vanishcode
2019-12-06 09:25:41 +08:00
dubbo 那一套,有公司是这么做的,前端+网关都是 ts
JasonLiHai
2019-12-06 09:30:15 +08:00
这个以前做过
mskf
2019-12-06 09:31:57 +08:00
java RMI?
keller
2019-12-06 09:42:26 +08:00
坐下坐下 这是常规操作
opengps
2019-12-06 09:46:37 +08:00
其实挺常见的,只不过传的不一定刚刚好是类名,可能得转一下,比如前端传 user,传 product
lihongjie0209
2019-12-06 10:04:37 +08:00
@areless #14
1. 数据库改密码所有客户端都要更新?
2. 你的数据库连接数 == 你的用户数?
deweixu
2019-12-06 10:09:14 +08:00
把 bean 放到一个 map 中,前端传 key, 后端取出 bean 调用相关的方法处理
hoyixi
2019-12-06 10:13:03 +08:00
传个 binary 对象或者代码,然后再组装调用,是不是更骚?
yuankui
2019-12-06 10:13:08 +08:00
再怎么也搞个映射吧??

直接上类名,不担心安全问题?
yeyuhan
2019-12-06 10:14:05 +08:00
直播实现 RCE
xfriday
2019-12-06 10:23:04 +08:00
rpc 么好了,哪有这么麻烦
Orenoid
2019-12-06 10:27:05 +08:00
做好限制,问题不大。但是如果文档不完善,后来维护的可能会一脸懵逼。
RYAN0UP
2019-12-06 10:29:00 +08:00
我司之前就这么干的。传 target method。
Tink
2019-12-06 10:37:37 +08:00
这个可以的
th00000
2019-12-06 10:40:15 +08:00
可以在前期先把这些对象都创建出来, 根据前端传递的方法, 去配置里直接拿出来调用, 速度会快很多
tabris17
2019-12-06 10:41:52 +08:00
不怕被注入什么危险代码吗?
areless
2019-12-06 10:41:59 +08:00
@lihongjie0209 mysql 是多用户的,在 mysql 库里添加用户权限咯,有的能写有的只读有的不让读。连接又不是持久的,读完就关,1000 个连接数能跑好多呢。myisam 一个用户生成一个表咯。。。以前 WordPress 多用户版插件是这样搞的。速度又快~

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/626333

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX