开发中遇到的问题一(滥用static)

         最近开发了一个excel数据对比合并的小项目,结果出现了一个 错误.贴一下示例代码

@RestController
public class TestController {
    
    private static Map<String,Object> map=new HashMap<>();
    
    @PostMapping("test")
    public String test(){
        //TODO
        map.put("**","**");
        //TODO
        Set<Map.Entry<String, Object>> entries = map.entrySet();
        entries.forEach(System.out::println);
        return null;
    }
}

最后会发现这个map里面的数据并不是我想要的数据,其实这个问题就是我滥用static导致的,其实这个请求/test方法里面每次放进去map之后,下一次请求还是能取到上一次放进去map里面的东西。因为这个map是static的,是属于这个类的。以后还是要小心使用static. 

发布了91 篇原创文章 · 获赞 13 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/weixin_41751625/article/details/89914307