随笔分类 -  Spring

摘要:在使用 Spring 的过程中,有时候会出现一些 ClassNotFoundException 异常,这是因为 JAR 依赖之间的版本不匹配所导致的。而 Spring Boot 就能避免绝大多数依赖版本问题,我们先来了解下 Spring Boot 的特性。 SpringBoot 特性 Spring 阅读全文
posted @ 2019-08-23 15:54 MarkLogZhu 阅读(177) 评论(0) 推荐(0) 编辑
摘要:数据库的读写并发一直都是应用性能的瓶颈所在之一,针对改动频率很小的数据我们应该将他存放到缓存中,减少与数据库的交互。 启用对缓存的支持 Spring 对缓存的支持有两种方式: 注解驱动的缓存 XML 申明的缓存 为了避免繁琐的 XML 配置文件,我们这边只讲解注解驱动的形式。 <! more 启用缓 阅读全文
posted @ 2019-08-23 15:53 MarkLogZhu 阅读(208) 评论(0) 推荐(0) 编辑
摘要:除了关系型数据库之外,现在还有一种 NoSQL 数据库非常流行,而 Spring 自然也没有放过对它的支持。 NoSQL 数据库有很多种,如: MongoDBGenericJackson2JsonRedisSerializer Redis Membase 我们这里就重点讲解 Redis 。 注:这里 阅读全文
posted @ 2019-08-23 15:52 MarkLogZhu 阅读(483) 评论(0) 推荐(0) 编辑
摘要:对于本职工作来说 JDBC 就可以很好的完成,但是当我们对持久化的需求变得更复杂时,如: 延迟加载 预先抓取 级联 JDBC 就不能满足了,我们需要使用 ORM框架 来实现这些需求。 Spring 对多个持久化框架都提供了支持,包括 Hibemate 、 IBATIS 、 JPA 等。和 Sprin 阅读全文
posted @ 2019-08-23 15:51 MarkLogZhu 阅读(1237) 评论(0) 推荐(0) 编辑
摘要:JDBC 是数据持久化的一种比较常见的方案, Spring 也对它进行了支持。 在开始 JDBC 的使用之前,我们要先做下一些准备工作。 配置数据源 在 Spring 上下文中可以数据源 Bean 有如下多种方式: 通过 JDBC 驱动程序定义的数据源; 通过 JNDI 查找的数据源; 连接池的数据 阅读全文
posted @ 2019-08-23 15:50 MarkLogZhu 阅读(180) 评论(0) 推荐(0) 编辑
摘要:在之前的 "Spring学习之旅(八) SpringMVC请求参数" 我们是通过在控制台输出来验证参数是否正确,但是这样做实在是太耗时间了,我们今天来学习下 MockMvc,它可以让我们不需要启动项目就能调用接口并验证接口返回结果是否符合我们的预期。 为何使用MockMvc? MockMvc 实现了 阅读全文
posted @ 2019-08-23 15:49 MarkLogZhu 阅读(607) 评论(0) 推荐(0) 编辑
摘要:文件上传 在 Web 应用中,允许用户上传文件是很常见的需求。文件上传通常是采用 multipart 格式,而 DispatcherServlet 并没有任何解析 multipart 请求数据的功能,它将这个解析的任务委托给了 Spring 中的 MultipartResolver 策略接口的实现, 阅读全文
posted @ 2019-08-23 15:48 MarkLogZhu 阅读(268) 评论(0) 推荐(0) 编辑
摘要:现在我们已经完成了一个无参的接口了,但是应用中有很多需要携带参数的场景,我们来看看 SpringMVC 对它的支持。 参数绑定 SpringMVC 提供了一种绑定机制,通过这个机制可以从请求中提取数据,然后将数据转换为预定义的数据格式,最后映射到一个模型类,从而创建一个对象。该实现机制只需请求参数名 阅读全文
posted @ 2019-08-23 15:47 MarkLogZhu 阅读(161) 评论(0) 推荐(0) 编辑
摘要:在之前的实例中我们只是在 Controller 中返回了 home 字符类型的值,而没有直接生成可以在浏览器中直接渲染的 HTML ,这是因为 SpringMVC 将请求处理的逻辑和视图渲染的实现进行了解偶。 Controller 返回视图名称,视图解析器进行视图的渲染。 SpringMVC 定义了 阅读全文
posted @ 2019-08-23 15:46 MarkLogZhu 阅读(205) 评论(0) 推荐(0) 编辑
摘要:对大多数 Java 开发来说,基于 web 的应用程序是我们主要的关注点。 Spring 也提供了对于 web 的支持,基于 MVC 模式的 Spring MVC 能够帮助我们灵活和松耦合的完成 web 应用程序。 Spring MVC 处理流程 第一步:发起请求到前端控制器(DispatcherS 阅读全文
posted @ 2019-08-23 15:40 MarkLogZhu 阅读(329) 评论(0) 推荐(0) 编辑
摘要:什么是 AOP AOP(Aspect OrientedProgramming,面向方面编程),可以说是 OOP(Object Oriented Programing,面向对象编程)的补充和完善。 OOP 引入封装、继承和多态性等概念来建立一种对象层次结构,用以模拟公共行为的一个集合。当我们需要为分散 阅读全文
posted @ 2019-08-23 15:37 MarkLogZhu 阅读(162) 评论(0) 推荐(0) 编辑
摘要:条件化 bean 有时候我们要满足某种情况才将bean 初始化放入容器中。 基于环境初始化不同的 bean 1.申明接口并创建两个实现类 <! more 2.JavaConfig 显式装配两个实现类 注:可以看到两个 bean 都取名为 teacher ,但是 @Profile 值不同。 3.单元测 阅读全文
posted @ 2019-08-23 15:35 MarkLogZhu 阅读(218) 评论(0) 推荐(0) 编辑
摘要:装配 Bean 的方式 在 XML 中进行显式配置 在 Java 中进行显式配置 隐式的 Bean 发现机制和自动装配 Spring 提供了以上三种方式进行 Bean 的配置,可以根据自己的需求选择一种或者混合使用。但是我的个人建议还是尽可能的使用自动配置机制,毕竟显式的配置越少越方便。但如果必须要 阅读全文
posted @ 2019-08-23 15:32 MarkLogZhu 阅读(207) 评论(0) 推荐(0) 编辑
摘要:在 Spring 应用中,所有的对象都在 Spring 容器(container) 里,容器负责对象的创建、配置、装配并管理它们的整个生命周期。 Spring 容器 Spring 容器 并不是只有一个, Spring 自带了多个容器的实现,可以归为两种不同的类型: bean 工厂(org.sprin 阅读全文
posted @ 2019-08-23 15:29 MarkLogZhu 阅读(182) 评论(0) 推荐(0) 编辑
摘要:之前从博客、视频断断续续的学到了 Spring 的相关知识,但是都是一个个碎片化的知识。刚好最近在读 《Sprign实战(第四版)》,所以借此机会重新整理下Spring 系列的内容。 Spring 是什么? Spring 是一个开源框架,它由 Rod Johnson 创建。它是为了解决企业应用开发的 阅读全文
posted @ 2019-08-23 15:25 MarkLogZhu 阅读(295) 评论(0) 推荐(0) 编辑