9."使用方法"指南 9.1.Spring Boot应用程序 9.1.1.创建自己的FailureAnalyzer FailureAnalyzer被包装在FailureAnalysis中,可以在启动时拦截异常并将其转换为易于阅读的消息.Spring Boot为与应用程序上下文相关的异常,JSR-303验证等提供了此类分析器.您也可以创建自己的. AbstractFailureAnalyzer是一个方便的FailureAnalyzer扩展,它检查要处理的异常中是否存在指定的异常类型.您可…
4.10.使用SQL数据库 从使用JdbcTemplate直接的JDBC访问到完整的"对象关系映射"技术(例如Hibernate),Spring框架为使用SQL数据库提供了广泛的支持. Spring Data提供了更高级别的功能:直接从接口创建Repository实现,并使用约定从您的方法名称生成查询. 4.10.1.配置数据源 Java的javax.sql.DataSource接口提供了使用数据库连接的标准方法.传统上,"数据源"使用URL以及一些凭据来建立数据库…
4.11.使用NoSQL技术 Spring Data提供了其他项目来帮助您访问各种NoSQL技术,包括: Redis MongoDB Neo4J Solr Elasticsearch Cassandra Couchbase LDAP InfluxDB Spring Boot为Redis,MongoDB,Neo4j,Elasticsearch,Solr, Cassandra,Couchbase和LDAP提供自动配置.您可以使用其他项目,但必须自己进行配置.请参阅相应的参考文档. 4.11.1.Re…
4.12.缓存(Caching) Spring框架提供了对应用程序透明添加缓存的支持.从本质上讲,抽象将缓存应用于方法,从而根据缓存中可用的信息减少执行次数.缓存逻辑是透明应用的,不会对调用者造成任何干扰.只要通过@EnableCaching注解启用了缓存支持,Spring Boot就会自动配置缓存基础结构. 简而言之,将缓存添加到服务的操作就像将相关注解添加到其方法一样容易,如以下示例所示: import org.springframework.cache.annotation.Cacheab…
4.13.Messaging Spring框架为与消息传递系统集成提供了广泛的支持,从使用JmsTemplate简化JMS API到完整的异步接收消息的基础结构.Spring AMQP为高级消息队列协议提供了类似的功能集.Spring Boot还为RabbitTemplate和RabbitMQ 提供了自动配置选项.Spring WebSocket本身就包含对STOMP消息的支持,而Spring Boot通过启动器和少量的自动配置对此提供了支持.Spring Boot还支持Apache Kafka…
4.14.使用RestTemplate调用REST服务 如果需要从应用程序调用远程REST服务,则可以使用Spring Framework的RestTemplate类.由于RestTemplate实例通常需要在使用前进行自定义,因此Spring Boot不提供任何单个自动配置的RestTemplate bean.但是,它会自动配置RestTemplateBuilder,可以在需要时创建RestTemplate实例.自动配置RestTemplateBuilder可确保明智地将HttpMessage…
4.18.JTA的分布式事务 通过使用Atomikos或Bitronix嵌入式事务管理器,Spring Boot支持跨多个XA资源的分布式JTA事务.部署到合适的Java EE应用程序服务器时,还支持JTA事务. 当检测到JTA环境时,将使用Spring JtaTransactionManager来管理事务.自动配置的JMS,DataSource和JPA Bean已升级为支持XA事务.您可以使用标准Spring习惯用法(例如@Transactional)来参与分布式事务.如果您在JTA环境中,但…
4.25. Testing Spring Boot提供了许多实用程序和注解,可以在测试应用程序时提供帮助.测试支持由两个模块提供:spring-boot-test包含核心项,spring-boot-test-autoconfigure支持测试的自动配置. 大多数开发人员都使用spring-boot-starter-test 启动器,该程序同时导入Spring Boot测试模块以及JUnit Jupiter,AssertJ,Hamcrest和许多其他有用的库. 启动程序还带来了老式引擎,因此您可以…
5.Spring Boot Actuator:可投入生产的功能 Spring Boot包含许多其他功能,可帮助您在将应用程序投入生产时监控和管理您的应用程序.您可以选择使用HTTP端点或JMX管理和监视您的应用程序.审核,运行状况和指标收集也可以自动应用于您的应用程序. 5.1.启用生产就绪功能 spring-boot-actuator模块提供了Spring Boot生产就绪的所有功能.启用功能的最简单方法是添加依赖项,spring-boot-starter-actuator"启动器"…
6.部署Spring Boot应用程序 在部署应用程序时,Spring Boot的灵活打包选项提供了很多选择.您可以将Spring Boot应用程序部署到各种云平台,容器映像(例如Docker)或虚拟机/真实机上. 6.1.部署到云 Spring Boot的可执行jar已为大多数流行的云PaaS(平台即服务)服务商准备就绪.这些服务商往往要求您"自带容器".他们管理应用程序流程(不是专门用于Java应用程序),因此他们需要一个中间层,以使您的应用程序适应云中正在运行的流程的概念. 两家…