当前位置: 首页 > 软件库 > Web应用开发 > Web框架 >

OpeningO-spring-boot-x

Spring Boot 扩展
授权协议 MIT
开发语言 Java
所属分类 Web应用开发、 Web框架
软件类型 开源软件
地区 国产
投 递 者 邓德厚
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

spring-boot-x是springboot应用的扩展。

特性清单

  • 手动事务管理 [2021.6.29更新]

  • 分布式id生成器gedid,DidLoader [ 2021.6.25更新 ]

  • Safety工具 [ 2021.6.25更新 ]

  • 请求日志,包括请求源、请求目标、请求参数、处理时间、错误异常等信息;

  • 请求响应参数的自动装配(映射);

  • 跨域的配置;

  • 嵌入SpringBoot的异常处理机制,可以将原来的错误信息中插入其他信息、或将其解析或转换为其他信息;

  • SpringBootstarter动态装配或在yml中配置相关特性;

  • 简化的Redis操作;

  • 提炼ElasticsearchHighlevelClient常用操作;

  • feign的请求头参数的处理:合并上下游的请求头参数,并发场景的数据处理策略;

  • 基于DruidHikari的动态路由RoutingDataSource

  • SpringBoot应用的配置信息的自动拷贝;

1. 请求日志

****************************************************************
:: SpringApplicationX :: for current request report information 
****************************************************************
Client IP  : 127.0.0.1 
Request Time  : 2020-07-12T19:24:40.249 
Controller  : org.openingo.x.controller.UserController.(UserController.java:1)
URI  : http://localhost:8080/json 
Handler(Action)  : json
Method  : GET
Processing Time  : 0.002s
Header(s)  : [user-agent:"PostmanRuntime/7.25.0", cache-control:"no-cache", postman-token:"b29a0616-7e31-4150-b022-4bf3680bf771", host:"localhost:8080", accept-encoding:"gzip, deflate, br", connection:"keep-alive", content-length:"21", Content-Type:"application/json;charset=UTF-8"]
Body  : {"name":"qicz"}
Response  : {"name":"qicz","age":18}
----------------------------------------------------------------

2. 错误处理

可以继承AbstractServiceErrorAttributes,扩展exception的处理

{
    "timestamp": "2020-07-13T05:49:06.071+0000",
    "status": 500,
    "error": "Internal Server Error",
    "exception": "org.openingo.spring.exception.ServiceException",
    "message": "testing exception",
    "path": "/ex",
    "handler": "public java.util.Map org.openingo.x.controller.UserController.ex()",
    "openingo.error": {
        "ex": "org.openingo.spring.exception.ServiceException: testing exception",
        "em": "testing exception",
        "error": "Internal Server Error",
        "ec": "ERROR_CODE"
    }
}

3. 使用及配置

加入spring-boot-x依赖(已托管在中央仓库),在启动class上加入@EnableExtension注解即可使用spring-boot-x的扩展功能。

通过application.yml/application.properties可以对请求日志redis等操作进行开关。默认情况下,请求日志及错误扩展为开启状态。

openingo:
  redis:
    enable: true
  http:
    request:
      cors:
        allowed-header: "*"
        enable: true
        allowed-all: true
      log:
        enable: true
      error:
        enable: true

 

  • 参考:https://blog.csdn.net/zhou920786312/article/details/84324915 https://blog.csdn.net/tr1912/article/details/79217132 spring-boot-starter:spring-boot场景启动器,后面跟的单词就是场景,比如说后面跟web,就是导入web场景的所有依赖。 1. sprin

  • https://mp.weixin.qq.com/s/rnhXFUEFRBA0xDzB85fk0A 项目地址:https://github.com/LianjiaTech/retrofit-spring-boot-starter

  • mybatis-spring-boot-starter版本 spring-boot-starter版本 mybatis版本 mybatis-spring版本 2.1.2 2.2.5.RELEASE 3.5.4 2.0.4 2.1.1 2.1.9.RELEASE 3.5.3 2.0.3 2.1.0 2.1.6.RELEASE 3.5.2 2.0.2 2.0.1 2.0.9.RELEASE 3.5.1

  • GraphQL服务器能够提供的API查询请求,往往是通过HTTP实现的。而Spring Boot能够方便地构建一个Web服务,于是自然就引入了Spring Boot使能的GraphQL服务器。 graphql-spring-boot是一个Spring Boot应用的辅助类库,基于GraphQL Java实现的graphql-java和graphql-java-servlet,能够以Spring B

  • 这里先介绍如何使用springboot2.0集成pagehelper-spring-boot-starter, 1、添加pom依赖 <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId>

  • 在官方文档的第三部分的13块讲述了引用的管理,官方推荐的是使用Maven和Gradle。 我一直在用的是maven,而且使用maven有些优势–spring-boot-starter-parent,这个部件是maven独有的。 这次我们从这里开始学习。 Maven的用户可以通过继承spring-boot-starter-parent项目来获得一些合理的默认配置。这个parent提供了以下特性: 默

  • 一. POM解析 <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> <version>2.0.0.RELEASE</version> <scope>comp

  • 使用spring-boot-dependencies,不再继承spring-boot-starter-parent 一、spring-boot-dependencies 有两种方式: 1.继承parent: 在pom.xml里添加 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot

  • 在这个互联网的时代,使用spring框架除了开发少数的独立应用,大部分情况下实际上在使用SpringMVC开发web应用,为了帮我们简化快速搭建并开发一个Web项目,Spring boot为我们提供了spring-boot-starter-web自动配置模块。 只要将spring-boot-starter-web加入项目的maven依赖: <dependency> <groupId>org

  • 应用日志和spring-boot-starter-logging Java 的日志系统多种多样,从 java.util 默认提供的日志支持,到 log4j,log4j2,commons logging 等,复杂繁多,所以,应用日志系统的配置就会比较特殊,从而 spring-boot-starter-logging 也比较特殊一些,下面将其作为我们第一个了解的自动配置依赖模块。 假如 maven 依

  • springboot集成Druid,阿里爸爸官方写的模块,附上官方网址:https://github.com/alibaba/druid/tree/master/druid-spring-boot-starter 然后鄙人抽到项目中乱配置一通: application.properties spring.datasource.url = jdbc:mysql://localhost/homehel

  • 移除spring-boot-starter-web下面的 spring-webmvc 下面展示一些 内联代码片。 <exclusions> <exclusion> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> </exclusion>

 相关资料
  • 我希望能够利用Spring Boot datasource自动配置。但是,它并不支持我使用的所有特性,特别是。 有关等的更多信息,请参见:https://tomcat.apache.org/tomcat-8.0-doc/jdbc-pool.html

  • 我正在使用KeyClope来保护我的Spring boot后端。 依赖项: 安全配置: 一切工作正常! 但是现在我在keydove令牌“roles”中添加了一个新的部分,我需要在我的Spring Boot中以某种方式扩展keydove jwt类,并编写一些代码来解析角色信息并将其存储到SecurityContext。你能告诉我如何存档这个目标吗?

  • 这是控制器1: 控制器2: 首先,我看到所有集群。之后,我可以单击站点上的按钮来查看单个群集(控制器1中的方法2)。 当我看到单个集群时,我想单击一个按钮以查看链接到该集群的要求。其方法在控制器 2 中。 当从控制器1转到控制器2时,我希望有以下url路径。 http://localhost:8080/clusters http://localhost:8080/clusters/cluster

  • 我想要继承到应用程序属性的一个属性文件中的属性很少。请告知这是否可能在Spring靴。 当spring boot应用程序加载时,我希望所有5个属性都应该加载并使用@value注释可用。Spring Boot会自动选择classpath中的application.properties,而我没有applicaitoncontext xml或任何属性加载程序代码。 提前道谢。

  • 我使用Spring Boot和Spring会话来控制一个使用ReactJS作为前端的应用程序。我的问题很简单,我尝试了几种方法来处理,但都没有成功。 React部分使用AJAX在登录后调用Spring REST服务(我也使用Spring Security),这至少需要30分钟。之后,会话停止,所有调用都会收到一个302,并以登录页面作为响应。这是意料之中的。 但我的问题是:有什么更好的方法来延长后

  • 试图在Spring Boot中使用liquibase mongodb扩展,但运行迁移对我的数据库没有影响。 在pom文件中添加了liquibase核心、liquibase mongodb扩展和ongo java驱动程序作为依赖项。 这是我的变更日志文件: 我尝试注入Bean SpringLiquibase,但它需要我提供一个DataSource,这是一个接口,而mongo的液化基础扩展不提供这个接