[ Java ]不改变函数的入参,怎么引用前端传来的参数

2020-10-28 09:50:59 +08:00
 sandman511

前端传了 String a,String b,String c,String d 等等(或者传了一个实体类进来)
其他类中有一个函数 hello(){xxx...}
不改变这个函数参数的情况下,怎么在这个函数中用 a 、b 、c 、d 呢

1823 次点击
所在节点    程序员
14 条回复
sunjiayao
2020-10-28 10:03:58 +08:00
threadlocal
avk458
2020-10-28 10:05:55 +08:00
封装一个 ctx 工具类,然后 `request.getParameter("a")`
zlllllei
2020-10-28 10:32:05 +08:00
threadlocal +1
yeqizhang
2020-10-28 10:42:02 +08:00
前面说的都对,推荐 threadlocal 。

如果是 spring servlet,也可以用 2 楼的。搜索关键字——service 中获取 request 对象
gengzi
2020-10-28 17:36:42 +08:00
threadlocal
qiyong
2020-10-30 11:15:52 +08:00
具体怎么操作?我学习一下
qiyong
2020-10-30 11:30:03 +08:00
@sunjiayao 就放在这个应用场景下 应该怎么做?求教
qiyong
2020-10-30 11:30:13 +08:00
@gengzi 求教
gengzi
2020-10-30 17:13:08 +08:00
@qiyong 获取参数 d,存入 threadlocal,需要用的时候再取出来。确定不用这个参数 d 了,删除 threadlocal 的内容,防止内存泄漏。百度一下 Threadlocal 的用法就行
qiyong
2020-10-31 10:18:57 +08:00
@gengzi 可怎么保证同一线程存取呢
gengzi
2020-11-02 11:01:29 +08:00
@qiyong 不需要自己保证,每个请求进来,都是一个新线程。threadlocal 存储的变量仅属于当前线程,与其他线程隔离。
qiyong
2020-11-02 14:33:07 +08:00
@gengzi 那存进去岂不是取不出来了
sandman511
2020-11-02 15:28:48 +08:00
@gengzi 在 A.java 存 怎么在 B.java 取呢
gengzi
2020-11-03 13:37:28 +08:00
@qiyong
@sandman511
百度下,看下用法就清楚了

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

https://tanronggui.xyz/t/719278

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

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

© 2021 V2EX