摘要: 普通的 Java Web 项目中,我们经常使用 HttpServletRequest 获取请求参数,请求头等信息。 到了 Spring MVC 项目,我们通常会使用 Spring 提供的注解获取参数,如 @RequestParam、@RequestHeader。 不过在某些场景下,我们可能还是想获取 阅读全文
posted @ 2022-01-11 23:11 残城碎梦 阅读(1356) 评论(0) 推荐(0) 编辑
摘要: 基于注解的 Spring MVC 的项目中,Controller 应该是我们接触最多的类了,这里提到的 Controller 并非是某一个具体的接口或类,而是一种概念,只要我们定义的类中包含了处理请求的方法,这个类就可以称为 Controller,而处理请求的方法被称为处理器方法。 由于 Contr 阅读全文
posted @ 2022-01-11 23:10 残城碎梦 阅读(556) 评论(0) 推荐(0) 编辑
摘要: 跨源资源共享(CORS) 即 Cross-Origin Resource Sharing,也常被译为跨域资源共享。作为 W3C 的标准,它允许浏览器向跨源服务器发起请求,克服了 AJAX 只能同源使用的限制。 CORS 需要浏览器和服务器同时支持,浏览器发起跨域请求时会自动携带一些请求头,服务器如果 阅读全文
posted @ 2022-01-11 23:10 残城碎梦 阅读(973) 评论(0) 推荐(0) 编辑
摘要: HTTP作为一种无状态的协议采用的是请求-应答的模式,每当客户端发起的请求到达服务器,Servlet 容器通常会为每个请求使用一个线程来处理。为了避免线程创建和销毁的资源消耗,一般会采用线程池,而线程池中的线程数量是有限的,当线程池中的线程被全部使用,客户端只能等待有空闲线程处理请求。 实际场景中, 阅读全文
posted @ 2022-01-11 23:09 残城碎梦 阅读(1162) 评论(0) 推荐(0) 编辑
摘要: Filter简介 过滤器 Filter 在 Servlet 2.3 版本中被首次提出,唯一的作用就是过滤,它不仅可以过滤请求,还可以过滤响应,当请求到达 Servlet 容器,会先经过 Filter ,然后再交给 Servlet,之后 Filter 还可以对 Servlet 的响应进一步处理。并且多 阅读全文
posted @ 2022-01-11 23:07 残城碎梦 阅读(2702) 评论(0) 推荐(1) 编辑
摘要: 异常处理是几乎所有编程语言都具有的特性,主要是处理程序运行时的非预期行为,保证程序的健壮性。JVM 运行时如果遇到未经处理的异常线程将意外退出,为了避免这种情况需要为线程设置默认的异常处理器。 为了将异常处理与 Web 环境整合到一起,Servlet 规范也定义了一系列异常处理的内容。Spring 阅读全文
posted @ 2022-01-11 22:15 残城碎梦 阅读(532) 评论(0) 推荐(1) 编辑
摘要: Sping MVC 正式的名字为 Spring Web MVC,是 Spring Framework 框架中的其中一个模块,基于 Servlet API 构建,同时使用 MVC 的架构模式,主要用以简化传统的 Servlet + JSP 进行 web 开发的工作。 MVC架构模式 Spring MV 阅读全文
posted @ 2022-01-11 13:46 残城碎梦 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 静态资源,可以理解为内容固定的页面,包括 HTML、CSS、JS、图片文件等等。浏览器发起请求后服务器根据 URL 查找文件,并将文件内容作为响应,而无需 Java 代码处理业务逻辑,访问效率较高。 前后端分离的今天,Java Web 应用中直接使用静态资源的方式已经很少见了,但不可避免有时候还会用 阅读全文
posted @ 2022-01-11 13:31 残城碎梦 阅读(307) 评论(0) 推荐(0) 编辑
摘要: 浅聊Spring MVC的拦截器Interceptor 理解拦截器 Interceptor 拦截器 Interceptor 在 Spring MVC 中的地位等同于 Servlet 规范中的过滤器 Filter,拦截的是处理器的执行,由于是全局行为,因此常用于做一些通用的功能,如请求日志打印、权限控制等。 当浏览器发起的请求到达 Servlet 容器,D 阅读全文
posted @ 2022-01-11 13:15 残城碎梦 阅读(510) 评论(0) 推荐(0) 编辑
摘要: @Autowired 和 @Resource 的区别 区别一:所属不同。 @Autowired 是 spring-beans 模块提供的注解。 @Resource 是 JSR 250 规范提出的注解,由 JDK 自带。 区别二:装配方式不同。两者都可以标注在属性或 setter 方法上。 @Auto 阅读全文
posted @ 2022-01-11 12:48 残城碎梦 阅读(454) 评论(0) 推荐(0) 编辑
摘要: 依赖查找和依赖注入是 Spring 实现 IoC 容器提供的两大特性,相对于依赖查找,Spring 更推崇的是使用依赖注入。 依赖注入方式 如果在 A 类中使用到了 B 类的实例,那么我们就说 A 依赖 B。依赖的位置包括字段、构造器方法参数、普通方法参数等,Spring 都对其进行了支持。Spri 阅读全文
posted @ 2022-01-11 08:30 残城碎梦 阅读(91) 评论(0) 推荐(0) 编辑
摘要: 非常好用的反射框架Reflections Reflections通过扫描classpath,索引元数据,并且允许在运行时查询这些元数据。 使用Reflections可以很轻松的获取以下元数据信息: 获取某个类型的全部子类 只要类型、构造器、方法,字段上带有特定注解,便能获取带有这个注解的全部信息(类型、构造器、方法,字段) 获取所有能匹配某 阅读全文
posted @ 2022-01-11 08:16 残城碎梦 阅读(125) 评论(0) 推荐(0) 编辑