前端传了 String a,String b,String c,String d 等等(或者传了一个实体类进来)
其他类中有一个函数 hello(){xxx...}
不改变这个函数参数的情况下,怎么在这个函数中用 a 、b 、c 、d 呢
1
sunjiayao 2020-10-28 10:03:58 +08:00
threadlocal
|
2
avk458 2020-10-28 10:05:55 +08:00
封装一个 ctx 工具类,然后 `request.getParameter("a")`
|
3
zlllllei 2020-10-28 10:32:05 +08:00
threadlocal +1
|
4
yeqizhang 2020-10-28 10:42:02 +08:00
前面说的都对,推荐 threadlocal 。
如果是 spring servlet,也可以用 2 楼的。搜索关键字——service 中获取 request 对象 |
5
gengzi 2020-10-28 17:36:42 +08:00
threadlocal
|
6
qiyong 2020-10-30 11:15:52 +08:00
具体怎么操作?我学习一下
|
9
gengzi 2020-10-30 17:13:08 +08:00
@qiyong 获取参数 d,存入 threadlocal,需要用的时候再取出来。确定不用这个参数 d 了,删除 threadlocal 的内容,防止内存泄漏。百度一下 Threadlocal 的用法就行
|
11
gengzi 2020-11-02 11:01:29 +08:00
@qiyong 不需要自己保证,每个请求进来,都是一个新线程。threadlocal 存储的变量仅属于当前线程,与其他线程隔离。
|
13
sandman511 OP @gengzi 在 A.java 存 怎么在 B.java 取呢
|
14
gengzi 2020-11-03 13:37:28 +08:00
|