首页 > 编程知识 正文

精准信息服务影响用户购买因素,精准信息服务

时间:2023-05-04 21:43:56 阅读:31267 作者:932

1.FeginConfig娇养的金毛

@ configuration @ sl F4 jpublicclass暖羊implementsrequestinterceptor { @ overridepublicvoidapply (请求模板查询模板模板模板模板模板) }userinfouser=(userinfo ) SecurityUtils.getSubject ().getPrincipal ); If (用户!=null ) { try { stringuserjson=JSON.tojsonstring (user ); request template.header (' user _ info ',newstring[]{URLdecoder.decode ) userJson,' utf-8'}}; } catch (unsupportedencodingexceptione ) { log.error ('用户信息设置错误',e ); } }私有ttpservletrequestgetservletrequest () return ) (servletrequestattributes ) requestcontextholder.getrequest }

@feignclient(name='user-server ',configuration={暖羊. class} ) publicinterfacewebuserclientextendsuserclient {

@ sl F4 jpublicclassdddhxcimplementshandlerinterceptor { @ overridepublicbooleanprehandle (httpservletrequestrequest,htpserverver if (string utils.is not blank (用户JSON ) try ) userJSON=URLdecoder.decode ) userJSON,' UTF-8 ' ); userinfo userinfo=JSON.parse object (user JSON,UserInfo.class ); 将UserInfo放入上下文的usercontext.set(userinfo ); } catch (unsupportedencodingexceptione ) log.error('inituserinfoerror ',e ); } }返回真; } @ overridepublicvoidposthandle (httpservletrequesthttpservletrequest,httpservletresponsehtpservletresponse,Object o, modelandview modelandview } { } @ overridepublicvoidaftercompletion (httpservletrequesthtpservletretrequest,httpservletretresponsponspon } @ configurationpublicclasswebinterceptoradapterimplementswebmvcconfigurer { @ beanpublichandlerinterceptorgettttokeninterceptoptor @ overridepublicvoidconfigurepathmatch (pathmatchconfigurerconfigurer ) antpathmatcherpathmatcher=newantpathmatcher ) ) )。 path matcher.set case sensitive (false ); configurer.setpathmatcher; } @ overridepublicvoidaddinterceptors (interceptorregistryregistry ) registry.add interceptor (gettoken interceptor ) ) ) } publicclassusercontext { privatestaticthreadlocaluserinfouserthread=new thread local (; publicstaticvoidset (userinfo userinfo ) userthread.set ) userinfo; }公共静态userinfo get () { return userThread.get ); } /** *获取当前登录的用户的id未登录却为null * * @ return */publicstaticlonggetuserid ({ userinfo user=get ) }; If (用户!=null user.getId ()!=null (返回用户. getid ); }返回空值; //防止内存泄漏public static void remove () { userThread.remove ); }} UserInfo对象

@ datapublicclassuserinfoimplementsserializable {/* * *主光辉的薯片/private Long id; /**用户gg DMT /私有字符串用户名称; /**电气psddd/private String tel; }

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。