2024年12月小米显示器(魅族mx3图片)

发布时间:

今天给各位分享小米显示器的知识,其中也会对魅族mx3图片进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文导读目录:

1、小米显示器(魅族mx3图片)

2、平板哪款性价比高(平板电脑哪个牌子好用又实惠)

3、3060ti和3070差距(3060ti和3070差距)

errorprocessingconditionon.springframework(springerrorcreatebean)

本文主要介绍在组织上处理条件时出错Spring框架(Spring错误创建B测试这确实是一个问题但它不是这不是我的问题让让我们开始分析!伪代码场景还原登录界面模拟错误报告postmapping("/用户/登录")公共登录结果登录(requestbodylogin请求){抛出新的运行时异常("模拟登录界面错误和);}然后发布拦截器如果认证的请求没有携带令牌或者在redis中找不到与令牌相关的用户就会抛出异常公共类UserLoginInterceptor实现handlerinterceptor{OverridepublicbooleanpreHandle(httpservletrequest请求HttpServletResponse响应对象处理程序){Stringtoken=request.getheader("token");if(token==null){抛出新的未经验证的异常("未经认证或令牌已过期);}else{if(redisget(token)==null){抛出新的未经验证的异常("未经认证或令牌已过期);}//...将令牌和用户信息设置为ThreadLocal}返回true}}拦截器配置Configurationpublic类WebConfig实现webmvonfigurer{Overridepublicvoidaddinterceptors(InterceptorRegistryregistry){registry.addinterceptor(newUserLoginInterceptor())excludepathpatterns("/用户/登录").addpathpatterns("/**");}}这个项目是从拦截器获取令牌去Redis查看用户信息放入ThreadLocal由于来自控制器→服务→映射器的请求的线程ID是一致的这样的请求链可以从这个ThreadLocal中获取当前登录的用户信息可以看到/us:"/:".Yinshan.auth.core.exception.unauthorizedexc:未通过认证或令牌已过期"";:"未授权"";status";:";tim:"t::."}当然这个错误信息格式是我自己处理的这个不重要重点是我在登录界面报错了为什么在拦截器里没有认证就变成了调试分析的时候废话少说直接开始调试在抛出异常的代码上做一个断点然后在拦截器里做一个断点结果登录界面按F后断点确实到了拦截器说实话我当时真的是这个样子什么?;拦截器发布的这个接口有什么问题?然而仔细查看调试面板中preHandle方法的请求参数细节会发现一些棘手的问题图中的箭头指向非常重要的信息:是当前请求的上下文当普通请求通过拦截器时在这个上下文中没有请求的分布类型正常请求的值是request特别显眼的是这个请求资源uri根本不是我请求的/user/login但是一个/error看到这里你就大致明白了这个断点到拦截器不是因为/user/login的请求而是因为/error的另一个请求那么这个/错误是怎么产生的呢?由于图中的TomcatEmbededContext是嵌入SpringBoot的Tomcat中的一个类所以我猜这个请求应该是SpringMVC控制器遇到未处理的错误时内部发起的/error请求也许你会想没有;你没发现问题吗?似乎很快为什么做了两个小时?因为我;;我是一盘菜!当我在调试时我没有我根本不在乎这个参数是什么但是一步一步地F→F→F→F........................................................................................................................................我没有;直到我最终调试完DispatchServlet才做出反应它是怎么转到请求转发的?我终于明白人是麻木的查询官方文档真的在SpringMVC的官方文档里找到了说明官网说的很清楚如果异常不是默认异常处理程序处理的Servlet容器会用DispatchServlet调度一个/error请求也可以自定义/error请求详情请参考SpringMVC官方文档由于特定原因SpringMVC的控制器报错后服务器会发出/error请求因为我们的拦截器还没有释放这个/error请求所以会在DispatchServlet中执行这个请求的拦截器(突然想起来两年前我写过一个自定义的SpringBoot异常页面就是处理的/error请求)受保护的voiddo分派(httpservlet请求httpservlet响应)抛出异常{//.判断并执行preHandle()if(!mappedhandler.applyprehandle(processedrequestresponse)){return;}以上是DispatchServlet的doDispatch部分的源代码我相信大多数人s对doDispatch的了解停留在死记硬背SpringMVC的实现过程进行采访的时候其实网上的SpringMVC执行流程图中有几个关键节点但是没有多详细如果你不如果你真的没有调试这个有问题的源代码那么你可能不会;我不明白这个问题解决方案明白了问题的原因解决方案也很简单只要从我们的自定义身份验证拦截器中排除/error的拦截overridepublicvoidaddinterceptors(InterceptorRegistryregistry){registry.addinterceptor(newUserLoginInterceptor())excludepathpatterns("/error").addpathpatterns("/**");谈拦截器其实上述问题很大一部分是因为对拦截器缺乏真正的了解只知道它可以拦截一个请求没有研究它在什么阶段拦截在SpringMVC中是如何实现的那么让我们让我们深入分析拦截器拦截器和过滤器的使用范围看一下filter接口的源代码可以发现它在javax.servlet包下而HandlerInterceptor在.springframework.web.servlet包下拦截器是由SpringMVC实现的其实只是拦截一个或多个Java类的组合和web应用没有必然联系这意味着过滤器只能在web应用中使用而拦截器可以在任何可以使用Spring和SpringMVC的地方使用比如桌面应用拦截器和过滤器的执行顺序进程过滤器的执行是通过applicationfilterchain在chain中调用的doFilter()在请求到达Servlet之前在dofilter()内获得下一个过滤器实例来执行过滤方法其执行顺序为Filter→applicationFilterchain.doFilter()→Filter→applicationfilterchain.doFilter()→Filter→......如下图拦截器的执行是请求到达DispatchServlet后在控制器方法执行前后做的事情如下图所示这里的过滤链就是上图显然preHandle()是拦截的关键只是它在请求到达控制器目标方法之前执行返回true/false决定是否需要阻止该请求Dodatch中处理拦截器的部分源代码我们都知道DispatchServlet的Dodatch()方法处理所有请求与拦截器相关的内部代码如下//执行拦截器spreHandle()if(!mappedhandler.applyprehandle(processedrequestresponse)){return;}mv=ha.handle(processedRequestresponsemappedhandler.gethandler());//反射性地调用控制器目标方法/***...省略**/MappedHandlerAppypostHandle(已处理的请求响应MV);//在//控制器的目标方法被执行//请求完成后执行拦截器safterpletion()processedrequestResponseMappedHandlerMVdispatchexception);事实上如果我真的调试了有问题的源代码我不根本不需要背SpringMVC执行过程的面试题~~我可以t把它们背下来但是从源代码调试过程中我已经清楚的了解了DispatchServlet在请求转发过程中做了什么结合前面提到的参数验证神器hibernatevalidator和统一异常处理我自然明白了SpringMVC是如何实现请求参数的分析和转换的结论唐当你遇到问题时不要惊慌源代码调试没有那么难我觉得看有问题的源代码印象更深刻我我到新公司还不到一个月而我我带着问题读了几次源代码.....刚好赶上换大版本的技术组件而且总是有各种奇怪的问题It阅读更多关于框架和技术组件的官方文档确实是一个好习惯不要;不要总是局限于一些视频教程多阅读官方文档找出组件可能出现的问题及其原因文章标签:,下面一起看看在组织上处理条件时出错Spring框架(Spring错误创建B测试这确实是一个问题但它不是这不是我的问题让让我们开始分析!伪代码场景还原登录界面模拟错误报告postmapping("/用户/登录")公共登录结果登录(requestbodylogin请求){抛出新的运行时异常("模拟登录界面错误和);}然后发布拦截器如果认证的请求没有携带令牌或者在redis中找不到与令牌相关的用户就会抛出异常公共类UserLoginInterceptor实现handlerinterceptor{OverridepublicbooleanpreHandle(httpservletrequest请求HttpServletResponse响应对象处理程序){Stringtoken=request.getheader("token");if(token==null){抛出新的未经验证的异常("未经认证或令牌已过期);}else{if(redisget(token)==null){抛出新的未经验证的异常("未经认证或令牌已过期);}//...将令牌和用户信息设置为ThreadLocal}返回true}}拦截器配置Configurationpublic类WebConfig实现webmvonfigurer{Overridepublicvoidaddinterceptors(InterceptorRegistryregistry){registry.addinterceptor(newUserLoginInterceptor())excludepathpatterns("/用户/登录").addpathpatterns("/**");}}这个项目是从拦截器获取令牌去Redis查看用户信息放入ThreadLocal由于来自控制器→服务→映射器的请求的线程ID是一致的这样的请求链可以从这个ThreadLocal中获取当前登录的用户信息可以看到/us:"/:".Yinshan.auth.core.exception.unauthorizedexc:未通过认证或令牌已过期"";:"未授权"";status";:";tim:"t::."}当然这个错误信息格式是我自己处理的这个不重要重点是我在登录界面报错了为什么在拦截器里没有认证就变成了调试分析的时候废话少说直接开始调试在抛出异常的代码上做一个断点然后在拦截器里做一个断点结果登录界面按F后断点确实到了拦截器说实话我当时真的是这个样子什么?;拦截器发布的这个接口有什么问题?然而仔细查看调试面板中preHandle方法的请求参数细节会发现一些棘手的问题图中的箭头指向非常重要的信息:是当前请求的上下文当普通请求通过拦截器时在这个上下文中没有请求的分布类型正常请求的值是request特别显眼的是这个请求资源uri根本不是我请求的/user/login但是一个/error看到这里你就大致明白了这个断点到拦截器不是因为/user/login的请求而是因为/error的另一个请求那么这个/错误是怎么产生的呢?由于图中的TomcatEmbededContext是嵌入SpringBoot的Tomcat中的一个类所以我猜这个请求应该是SpringMVC控制器遇到未处理的错误时内部发起的/error请求也许你会想没有;你没发现问题吗?似乎很快为什么做了两个小时?因为我;;我是一盘菜!当我在调试时我没有我根本不在乎这个参数是什么但是一步一步地F→F→F→F........................................................................................................................................我没有;直到我最终调试完DispatchServlet才做出反应它是怎么转到请求转发的?我终于明白人是麻木的查询官方文档真的在SpringMVC的官方文档里找到了说明官网说的很清楚如果异常不是默认异常处理程序处理的Servlet容器会用DispatchServlet调度一个/error请求也可以自定义/error请求详情请参考SpringMVC官方文档由于特定原因SpringMVC的控制器报错后服务器会发出/error请求因为我们的拦截器还没有释放这个/error请求所以会在DispatchServlet中执行这个请求的拦截器(突然想起来两年前我写过一个自定义的SpringBoot异常页面就是处理的/error请求)受保护的voiddo分派(httpservlet请求httpservlet响应)抛出异常{//.判断并执行preHandle()if(!mappedhandler.applyprehandle(processedrequestresponse)){return;}以上是DispatchServlet的doDispatch部分的源代码我相信大多数人s对doDispatch的了解停留在死记硬背SpringMVC的实现过程进行采访的时候其实网上的SpringMVC执行流程图中有几个关键节点但是没有多详细如果你不如果你真的没有调试这个有问题的源代码那么你可能不会;我不明白这个问题解决方案明白了问题的原因解决方案也很简单只要从我们的自定义身份验证拦截器中排除/error的拦截overridepublicvoidaddinterceptors(InterceptorRegistryregistry){registry.addinterceptor(newUserLoginInterceptor())excludepathpatterns("/error").addpathpatterns("/**");谈拦截器其实上述问题很大一部分是因为对拦截器缺乏真正的了解只知道它可以拦截一个请求没有研究它在什么阶段拦截在SpringMVC中是如何实现的那么让我们让我们深入分析拦截器拦截器和过滤器的使用范围看一下filter接口的源代码可以发现它在javax.servlet包下而HandlerInterceptor在.springframework.web.servlet包下拦截器是由SpringMVC实现的其实只是拦截一个或多个Java类的组合和web应用没有必然联系这意味着过滤器只能在web应用中使用而拦截器可以在任何可以使用Spring和SpringMVC的地方使用比如桌面应用拦截器和过滤器的执行顺序进程过滤器的执行是通过applicationfilterchain在chain中调用的doFilter()在请求到达Servlet之前在dofilter()内获得下一个过滤器实例来执行过滤方法其执行顺序为Filter→applicationFilterchain.doFilter()→Filter→applicationfilterchain.doFilter()→Filter→......如下图拦截器的执行是请求到达DispatchServlet后在控制器方法执行前后做的事情如下图所示这里的过滤链就是上图显然preHandle()是拦截的关键只是它在请求到达控制器目标方法之前执行返回true/false决定是否需要阻止该请求Dodatch中处理拦截器的部分源代码我们都知道DispatchServlet的Dodatch()方法处理所有请求与拦截器相关的内部代码如下//执行拦截器spreHandle()if(!mappedhandler.applyprehandle(processedrequestresponse)){return;}mv=ha.handle(processedRequestresponsemappedhandler.gethandler());//反射性地调用控制器目标方法/***...省略**/MappedHandlerAppypostHandle(已处理的请求响应MV);//在//控制器的目标方法被执行//请求完成后执行拦截器safterpletion()processedrequestResponseMappedHandlerMVdispatchexception);事实上如果我真的调试了有问题的源代码我不根本不需要背SpringMVC执行过程的面试题~~我可以t把它们背下来但是从源代码调试过程中我已经清楚的了解了DispatchServlet在请求转发过程中做了什么结合前面提到的参数验证神器hibernatevalidator和统一异常处理我自然明白了SpringMVC是如何实现请求参数的分析和转换的结论唐当你遇到问题时不要惊慌源代码调试没有那么难我觉得看有问题的源代码印象更深刻我我到新公司还不到一个月而我我带着问题读了几次源代码.....刚好赶上换大版本的技术组件而且总是有各种奇怪的问题It阅读更多关于框架和技术组件的官方文档确实是一个好习惯不要;不要总是局限于一些视频教程多阅读官方文档找出组件可能出现的问题及其原因文章标签:相关资讯小米显示器(魅族mx3图片)。

魅族mx3图片

平板哪款性价比高(平板电脑哪个牌子好用又实惠

小米显示器(魅族mx3图片)

平板电脑哪个牌子好用又实惠

平板电脑对于学生来讲,还是相对比较贵价的电子产品,所以在选择的时候就更加需要慎重,具体选择的时候可以参考下面的几点。.首先,我们在选择平板电脑的时候,其实比较关注的就是品牌和价位,因为不同的品牌有着不同的系统和风格,现在比较主流的还是苹果品牌的平板电脑,但是价格相对来说比较高昂,所以如果对于平板电脑的要求并不是很高,预算也不多,那么很多的国产平板电脑完全可以满足需求。.另外就是平板电脑的容量,很多人在购买的时候觉得自己平时需要储存的东西并不多,所以买一个容量比较小的就好,价位也不高,但是用着用着就显示没内存了,所以我们在购买的时候还是应该购买大内存的平板电脑。.最后就是电脑的尺寸,这是很多人在选择的时候比较容易忽略的地方,其实我们在购买的时候可以在网络上做一下功课,看一下各个尺寸的比对,然后再选择一款适合自己的平板电脑,以免买的太小不符合自己的预期。

下面的几款平板电脑是综合起来比较推荐学生党来购买的,性价比高,性能也很适合学生党来使用,可以参考一下。

魅族mx3图片

ti和差距(ti和差距

小米显示器(魅族mx3图片)

ti的性能和相比,大概有个%的差距,这个差距其实并不是很大。

从命名看,RTXTi是用以取代RTXSUPER的新一代甜品显卡,得益与全新的NVIDIAAmpere架构,RTX系列显卡的CUDA流处理器单元对比上一代多出了不少,RTXTi拥有个CUDA,是RTXSUPER的两倍有余。

若与同代大哥RTX对比的话,两者均采用了GA中型规模核心,不过RTX保留了组SM单元,而RTXTi阉割到了组SM单元,CUDA数目少了%,有着比较大的规格差距。

显存方面,RTXTi与大哥RTX,与上代产品RTXSUPER和官方钦定的对手RTXSUPER都是GBGDDR显存,显存频率只有RTXSUPER稍高,因此四张显卡的显存带宽也差不多。


小米显示器的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于魅族mx3图片小米显示器的信息别忘了在本站进行查找喔。