Spring Boot 2系列(二):FastJson集成和使用

  FastJson 是阿里巴巴的开源 JSON 解析库,它可以解析 JSON 格式的字符串,支持将 Java Bean 序列化为 JSON 字符串,也可以从 JSON 字符串反序列化到 JavaBean。

  FastJson 速度快、功能完备、API简洁。

阅读更多

Spring Boot 2系列(一):整合Mybatis + 通用Mapper + PageHelper分页 + Druid数据库连接池

  前言:必须要感谢伟大的开源思想,感谢所有的开源团队和个人,他们提供了如此多的优秀开源项目,这是一件伟大的事。

  Spring Boot 开发模板:spring-boot-template,此模板基于 Spring Boot 2.0.4 Release 版本的快速开发模板, 尽量采用 boot-starter 依赖, 使用最精简的配置。

  集成了 MySQL, Druid, Mybatis, Common Mapper, pageHelper, Log4j2, Shiro, JSTL, Web页面支持 JSP, 支持打 war 包, 支持打 Docker 镜像。

阅读更多

Spring(十九):Spring 父子容器

  SpringIoC容器可以建立父子层级关联的容器体系,子容器可以访问父容器中的Bean,但父容器不能访问子容器中的Bean

  在容器内,Beanid必须是唯一的,但子容器可以拥有一个和父容器id相同的Bean。父子容器体系增强了Spring容器架构的扩展性和灵活性,第三方可以通过HierarchicalBeanFactory接口,为一个已经存在的容器添加一个或多个特殊用途的子容器,以提供一些额外的功能。

阅读更多

Spring(十八):Spring IoC/DI 理解

  IoC(Inverse of Control)控制反转:不是某种技术,而是一种设计思想,Spring IoC容器是该设计思想的实现。
  控制反转包含两层意思,一是控制,二是反转。

  DI(Dependency Injection)依赖注入:是组件之间、对象之间的依赖关系由容器在运行期决定,即由容器动态的将某个依赖对象注入到组件中。

  控制反转依赖注入实际说的是同一件事,只是站在两个对立的角度来解释这件事。控制反转是站在调用者的角度来理解,本来由我自己来创建对象的,现在不需要这么做了,由容器直接给你所需要的;依赖注入是站在容器的角度来理解,你需要什么,我找到给你就是,你没必要自己创建了。

阅读更多

Spring(十五):Spring 之 @Enable* 注解

  Spring提供了强大的注解功能,有部分注解是以@Enable*开头的,表示开启某项功能,本文汇总下此类注解。

  1. @EnableAspectJAutoProxy
    开启对AspectJ自动代理的支持。
  2. @EnableAsync
    开启异步方法的支持,也可注释在类级别,表示该类下的所有方法都开启异步执行。
  3. @EnableScheduling
    开启动计划(定时)任务的支持。
  4. @EnableWebMvc
    开启Web MVC的配置的支持。
  5. @EnableConfigurationProperties
    开启对@ConfigurationProperties注解配置Bean的支持。
  6. @EnableJpaRepositories
    开启对Spring Data JPA Repository的支持。
  7. @EnableTransactionManagement
    开启注解式事务的支持。
  8. @EnableCaching
    开启注解式的缓存支持。
阅读更多

Spring(十四) @Value注解与Spring EL表达式注入属性值

Spring 提供了@Value注解来支持资源的注入,可以很便捷的让属性值注入到组件中,当值不存在可以设置一个默认值。

@Value 注解还可以结合 Spring EL 表达式获取 Spring 容器中的 Bean 的值,以 #{}进行表达式声明。

  • @Value:使用 ${}声明,从外部配置的参数取值。
  • SpringEL:使用 #{}声明,使用表达式获取变量的值。
  • #{}${}可以混合使用,必须是 #{}在外,${}在里面。
阅读更多