Spring Boot 2系列(十四):配置文件profile属性和部署jar包
Spring Boot 创建时会生成默认的配置文件:application.properties
,该文件中的配置优先级最高。
Profile是Spring为不同的环境来激活相应的的配置文件提供支持, profile 全局配置:application-{profile}.properties
。
Spring Boot 创建时会生成默认的配置文件:application.properties
,该文件中的配置优先级最高。
Profile是Spring为不同的环境来激活相应的的配置文件提供支持, profile 全局配置:application-{profile}.properties
。
MongoDB 是一款非常流行并应用于生产的分布式文档存储数据库, 数据结构非常松散,类似于 JSON 或 BSON,可以存储比较复杂的数据类型。
Spring Boot 通过 Spring Data MongoDB 项目为使用 MongoDB 提供了自动配置,Spring Data MongoDB 提供了与 MongoDB 文档数据库的集成,其关键功能领域是一个以 POJO 为中心模型,用于与 MongoDB DBCollection 交互并轻松编写 Repository 风格的数据访问层。
Spring Data MongoDB 项目将 Spring 核心概念应用于使用 MongoDB 文档数据存储的开发,提供了 template 作为存储和查询文档的高级抽象,提供了类似 JPA 的操作和注解。
Spring Boot > MongoDB , Spring Data MongoDB 项目 ,MongoDB 官网 ,MongoDB 官方文档 ,更多关于 MongoDB 的介绍和快速使用可参考MongoDB(一):Linux 环境安装MongoDB与简单使用
Redis 是基于 key-value 键 / 值对的开源内存数据存储系统,现在非常流行用作缓存存储。
Spring Boot 集成 Redis 非常简单,也容易使用。Spring Boot 自动注册了 RedisConnectionFactory ,并提供了RedisTemplate 和 StringRedisTemplate 两个模板来操作数据。所以在 Spring Boot 环境,只需配置下 Redis 的连接参数就可以直接使用了。
Spring Boot 对 Redis 自动配置的支持依赖于 Sping Data Redis。Spring Data Redis 将数据操作抽象出了统一的方法便于使用。更多参考 官方 Spring Data Redis 项目。
SpringBoot支持的缓存技术完全依赖于 Spring 对缓存技术的支持,了解 Spring 支持的缓存可以移步上一篇文章Spring Boot实践系列(十):数据缓存Cache
Spring 缓存技术支持 Ehcache
,但要注意点的是 Ehcache 现在有两个版本,分别是2.x和3.x, 3.x版本是JSR-107
标准的实现,两者在配置和使用上存在较大的差异。
Spring 对各种缓存技术抽象成了统一的接口和常用的操作方法,对不同的缓存技术,如 redis, ehcache 等透明地添加缓存的支持。
只要使用了缓存注解@EnableCaching
,Spring Boot就会自动配置缓存基本设置。
要理解 Spring Boot 的事务,必须先理解 Spring 的事务机制,可以参考Spring事务机制。
通常项目中打印 SQL 执行语句参数位置是被占位符替换的,查询用到的参数并不在 SQL 语句中而是额外显示,也无法看到 SQL 的执行结果。
可以使用Log4jdbc-log4j2
神器,在打印中直接看到完整的 SQL 语句,并格式化打印出执行结果。
Log4jdbc-log4j2是Log4jdbc
的增强版,官网:http://log4jdbc.brunorozendo.com/
官方说明:Apache Log4j 2
是对 Log4j 的升级,并提供了许多 Logback 可用的改进,同时解决了 Logback 体系结构中的一些固有问题。
Spring Boot 提供了一些非常实用的附加功能组件,比如应用监控模块 Actuator。 Actuator 可以采集应用和系统环境的一些指标数据,通过端点(endpoint)对外提供这些数据,用户可根据这些数据来对应用进行监控和管理。可以选择使用HTTP、JMX、SSH 来管理和监控。该组件会自动对应用审计,健康和收集相关指标信息。
spring-boot-actuator 提供了很多监控应用程序所需的神奇的运维特性,可以查看了解应用程序运行时的内部工作细节,可以查看IoC
容器都注册了那些Bean
、Spring MVC控制器的路径映射、请求跟踪、系统环境、配置属性、日志设置、程序信息、活动线程快照、堆存储信息,还可以通过端口来关闭应用。
Actuator 组件非容易地使用,只需要添加依赖 spring-boot-starter-actuator。Spring Boot Actuator 官方文档。
Spring Data Rest 依赖于 JPA
, 支持将 JPA,MongoDB,Neo4j,GemFire和Cassandra的 Repository自动转换为Rest
服务。
只需定义实体类和Repository
,就可以直接将查出的数据以Rest
服务方式返回,可以对数据库执行CRUD
操作,省略了Controller
层和Service
。此方式适合于只需对数据库进行CRUD
操作的项目,不适合需要对业务逻辑判断封装操作的项目。
Spring Data Rest 官网:https://docs.spring.io/spring-data/rest/docs/current/reference/html/