![](https://img-blog.csdnimg.cn/20190918140012416.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Java
java
虎起来
这个作者很懒,什么都没留下…
展开
-
java设计模式——适配器(Adapter)模式
但缺点很明显,这个适配器只适合电视了或者和电视一样的三孔电器才能使用,单孔的则有需要新开一个适配器了,这个还要到具体场景具体业务而定使用对象又或者是类适配器了。(仅适用于对象Adapter )你想使用一些已经存在的子类,但是不可能对每一个都进行子类化以匹配它们的接口。你想创建一个可以复用的类,该类可以与其他不相关的类或不可预见的类(即那些接口可能不一定兼容的类)协同工作。举例,以家中的插头为例,常见的就是三孔与双孔两种插口,以插口为接口,命名。你想使用一个已经存在的类,而它的接口不符合你的需求。原创 2022-11-11 15:40:48 · 862 阅读 · 0 评论 -
java设计模式(一)——五种创建型设计模式
一、什么是设计模式? 设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。项目中合理的运用设计模式可以完美的解决很多问题,每种模式在现在中都有相应的原理来与之对应,每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的核心解决方案,原创 2022-11-09 17:48:45 · 2014 阅读 · 1 评论 -
读xml配置文件getResourceAsStream读取到的为null
在project structure里面配置一下源文件,这样把xml文件放到resoureces或者自己当前xml文件所在的目录(右键这个文件夹resources即可)这样就可以正确的读到xml文件了。idea的小坑记一下。原创 2022-10-14 15:39:37 · 277 阅读 · 0 评论 -
Resolved exception caused by Handler execution: java.lang.NullPointerException
被@Configuration修饰的类,spring容器中会通过cglib给这个类创建一个代理,代理会拦截所有被@Bean 修饰的方法,默认情况(bean为单例)下确保这些方法只被调用一次,从而确保这些bean是同一个bean,即单例的。1.注释掉拦截器相关代码,controller与js那边检查都是没问题的,看看自定义拦截器的是不是参数或者哪里传错了,也都是ok的。当然有没有@Configuration注解,@Bean都会起效,都会将@Bean修饰的方法作为bean注册到容器中。...原创 2022-08-03 13:42:12 · 858 阅读 · 0 评论 -
登录拦截实现过程
这样在用户登录时候通过拦截器对requireAuthPages内的字符串进行匹配判断是否进行登录,如果没有登录,重定向跳转至登录界面。在目标用户查看需要登录才能查看的界面时候,进行拦截并提示用户登录。自定义一个拦截器LoginInterceptor。配置拦截器注册到spring的bean中。自动拦截cart,由于未登录,自动跳转至。通过Controller访问登录界面。如果已经登录,则可以正常的进行访问。...原创 2022-08-02 14:26:47 · 589 阅读 · 1 评论 -
forward与redirect的区别
1)forword是服务器内部的重定向,服务器直接访问目标地址的url网址,把里面的东西读取出来,但是客户端并不知道,因此用forward的话,客户端浏览器的网址是不会发生变化的。1)由于在整个定向的过程中用的是同一个request,因此forward会将request的信息带到被重定向的jsp或者servlet中使用。2)redirect是服务器根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址,所以地址栏显示的是新的地址。1)forword一般用于用户登录的时候,根据角色转发到相应的模块。...原创 2022-07-26 17:00:05 · 1337 阅读 · 0 评论 -
toString()及重写的作用与应用
重写tostring()的作用其实对于一般的对象来说都会有这个方法,这个方法的目的,主要就是将对象按字符串的方式输出出来,用白话说就是使用文字描述这个对象里各个变量是什么值,这个变量是什么类型的变量等,并且任何类都从Object继承了这个方法,重写toString()方法就是将对象按字符串的方式输出出来。(1)returngetClass().getName()指的是我们要输出地址的包名以及类的名称。(2)“@”是一个字符形式的输出,一般是地址符的表示。然后重新print,打印的结果就是。...原创 2022-07-20 15:27:47 · 940 阅读 · 0 评论