- 博客(11)
- 收藏
- 关注
原创 SecurityContextHolder.getContext().getAuthentication()返回null值
SecurityContextHolder维护上下文的本质是通过ThreadLocal,而定时任务不在同一线程里,因此拿不到。同理可知,controller层的uri若未被securityFilterChain()方法过滤器链维护,该uri下的方法里也拿不到用户信息。定时任务执行业务逻辑时,需要用户信息,通过SecurityContextHolder.getContext().getAuthentication()获取用户信息为null,从而报错。
2023-06-21 11:17:17
2203
原创 工厂模式+策略模式+AOP实现动态日志记录
场景:通过http调用第三方接口进行日志记录,第三方接口可能返回成功、可能返回失败(指调用成功,接口响应体为失败),也可能超时,甚至当不是期望的url时我们不进行日志记录。
2023-02-13 11:41:26
325
原创 如何快速新增一条数据库不存在的数据?
在mysql中,我们可以给字段加上唯一性限制,来保证该字段在数据表中不会重复,但在实际开发中,我们难免会遇到没有唯一限制时,还要保证新增的数据在数据库中不存在。通常思维我们会先对该数据在数据库中查一遍,如果返回的count为0,我们则进行新增操作,反之不进行新增操作。这样的操作可以实现业务,但会对数据库进行两次操作,开销较大。我们可以通过以下代码一次操作数据库来实现业务需求。insert into t_user (username,password)select #{username},#{pa
2022-04-26 08:34:06
1826
原创 postman中get方式传map集合
在若依框架中,存在动态传参现象。即实体类基类中有个map集合的属性变量,各个实体类继承该基类,传参时可以传递该实体类中不存在的属性变量。如基类中有Map<String,String> params,实体类可以设置params.benginTime,params.endTime两个参数来传递时间值。postman中,以get的请求传递key,values形式的值,若想将上述中两个时间值传递出去,在key中写params+%5B+map的key+%5D,values中写map的values。
2022-04-24 09:40:35
7913
3
原创 Java中Date与String之间相互转换
日期转字符串Date date = new Date();SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");System.out.println(sdf.format(date));sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");System.out.println(sdf.format(date));sdf = new SimpleDateFormat("yyyy年MM月dd
2021-11-09 14:44:58
202
原创 maven注入依赖问题
当Maven注入jar包坐标,却发现测试中无法使用该jar包的相关类检查下左侧External Libraries里该jar包是否正常注入如果未正常注入,在右侧Maven选择该jar包右击,download最后在测试类里导包即可...
2021-08-14 14:43:57
160
原创 Jedis使用工具类报错问题
Jedis调用工具类报java.lang.ExceptionInInitializerError异常,原因为资源配置文件未读取到,将资源配置文件改为绝对路径即可解决
2021-08-12 17:03:14
319
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人