前言最近公司要做一个新项目,可能会选择SpringCloud来做微服务架构,因而更可能会要面临实现分布式配置并制定相应的解决方案,因而提前做了解决方案。为什么选择携程Apollo?请看下图比较 另外我选择携程Apollo的另一个原因是Apollo的对外依赖非常少,目前只有一个Mysql,因而稳定性方面而可以避开对外依赖过多而导致分布式配置心中处于潜在风险中。要知道配置中心应该是独立于任何应用程序之
# 如何实现OSGI集成Redis ## 流程概览 首先,我们需要了解整个实现过程的流程。下面是实现"OSGI集成Redis"的步骤表格: | 步骤 | 描述 | | ---- | ---- | | 1 | 创建OSGI项目 | | 2 | 添加Redis依赖 | | 3 | 编写Redis服务接口 | | 4 | 实现Redis服务接口 | | 5 | 注册Redis服务 | | 6 |
原创 2024-06-20 06:47:26
73阅读
网上有很多介绍osgi概念的文章,有兴趣的同学可以去google一下.这里写一个简单的例子,记录自己的学习历程,也希望对初学osgi的同学有所帮助.osgi强调模块化与服务化,我们可以在不重启Java虚拟机的情况下切换一个服务的实现,达到动态更新目的.与spring不同的是,osgi可 以动态绑定服务的实现,而Spring容器一旦启动就无法更改服务的实现,要想改变服务的实现,只有重新配置sprin
SpringSecurity整合JWT实现认证和授权 文章目录SpringSecurity整合JWT实现认证和授权前言一、SpringSecurity介绍和架构分析及使用流程使用流程二、效果展示三、代码实现总结 前言本文主要讲解l通过整合SpringSecurity和JWT实现后台用户的登录和授权功能,使用到的技术有nacos,dubbo,SpringSecurity,redis.一、Spring
转载 2024-04-24 12:49:49
34阅读
OSGI能动态的加载、启动和停止Bundle,之前我实现了和Ioc的集成以动态的注册和取消注册Bundle中公开的服务。今天简单的实现了和MVC的集成以动态的管理Controller。ASP.NET MVC默认只识别BIN目录下的程序集,
原创 2021-07-21 14:27:03
116阅读
Springboot集成Camunda一、Camunda Modeler Camunda Modeler -为流程设置器(建模工具),用来构建我们的流程模型。Camunda Modeler流程绘图工具,支持三种协议类型流程文件分别为:BPMN、DMN、Form。 Camunda Modeler下载地址:https://camunda.com/download/modeler/下载完成之后解压之后,
文章目录一、全局异常处理1、自定义业务异常类2、全局异常处理类二、配置钉钉机器人1、创建钉钉机器人三、整合钉钉机器人1、引入jar包2、发送信息的工具类3、测试4、常见报错四、所用到的工具类 一、全局异常处理 1、自定义业务异常类某些时候,由于业务逻辑需要抛出自定义异常,这个时候就需要自定义业务异常类。 定义CommonException,使他继承于RuntimeException.说明:因为某
一.对HDFS操作设计以下几个主要的类:Configuration:封装了客户端或者服务器的配置信息FileSystem:此类的对象是一个文件系统对象,可以用该对象的一些方法来对文件进行操作通过FileSystem的静态方法get获得该对象,例:FileSystem hdfs = FileSystem.get(conf);FSDataInputStream:这是HDFS中的输入流,通过由FileS
转载 2023-08-20 22:45:31
83阅读
第一步:添加依赖:<!-- 获取系统信息 --> <dependency> <groupId>com.github.oshi</groupId> <artifactId>oshi-core</artifactId> <version>3.9.1</version> </d
转载 2023-07-07 12:08:19
159阅读
Springboot Application 集成 OSGI 框架开发张 莹莹2018 年 4 月 02 日发布Java 类加载器启动类加载器 (Bootstrap ClassLoader)是 Java 类加载层次中最顶层的类加载器,负责加载 JDK 中的核心类库,如:rt.jar、resources.jar、charsets.jar 等扩展类加载器(Extension ClassLoader)负
Dependency Injection)很相像,于是不免会想到OSGi是否会对Spring产生巨大的冲击呢?其实这种担心完全没有必要,相反二者的结合反而会让OSGi如虎添翼,强者更强。        Spring组织早在2006年已经开始了OSGi的整合工作,由于OSGi独特的类加载机制和一些其他的第三方类包不同,所以整合有一定难度进展比较缓
转载 2023-09-16 22:19:06
116阅读
spring cloud微服务接入seata一、环境简要说明二、seata服务端部署服务端下载修改conf/registry.conf 配置初始化seata在nacos中服务端配置启动seata-server三、初始化数据库四、准备spring cloud微服务五、测试验证正常下单异常下单六、遇到的问题无法获取seata-server服务注册的信息获取nacos中的ip地址错误 一、环境简要说明
目录1.Apollo Server 配置1.1.搭建 Apollo Server 环境1.2.在 Apollo 创建应用项目2.Apollo Client 配置SpringCloud 集成 Apollo 步骤参考一些文档,我在window环境搭建了一个Apollo分布式配置中心平台,详细步骤记录一下。 1.Apollo Server 配置1.1.搭建 Server 环境1)下载
转载 2024-04-01 18:04:38
80阅读
1.代码生成器: [正反双向](单表、主表、明细表、树形表,快速开发利器)freemaker模版技术 ,0个代码不用写,生成完整的一个模块,带页面、建表sql脚本、处理类、service等完整模块2.多数据源:(支持同时连接无数个数据库,可以不同的模块连接不同数的据库)支持N个数据源3.阿里数据库连接池druid,安全权限框架 shiro(菜单权限和按钮权限), 缓存框架 ehcache4.代码编
转载 2024-08-29 12:44:43
67阅读
背景假设我们有很多java实现的项目,认证授权用的是shiro框架,可能还有一个sso单点登录平台突然有一天,你的项目经理说要做微服务然后,你就给了你领导很多建议,什么dubbo、什么spring cloud等等;涉及的内容可能方方面面但是! ? 该项目经理说:小明,你晚上加加班,花点时间来改造一下现有的项目就好了,我们现有的项目改造起来也不是很麻烦,另外,项目改造微服务不能影响原有的项目计划进度
前言本章记录一下SpringBoot集成druid数据源,集成mybatis-plus,为了开发方便,基于mybatis-plus的代码生成器,实现对业务最基本的增删改查操作。准备工作在mysql数据库中新建cloud库,并创建sys_user表:DROP TABLE IF EXISTS `sys_user`; CREATE TABLE `sys_user` ( `id` varchar(3
程序运行避免不了出错,测试环境时我们可以通过打断点定位问题。但是上线之后的项目出bug,进行定位时就需要查看日志。spring cloud进行分布式部署后会有多个微服务,每个微服务都会产生日志,怎么进行日志分类,按条件索引想要看到的报错内容呢?现在流行的日志监控系统ELK完美解决这个问题。本文整理了ELK单机版在Linux系统进行搭建,以及springboot将日志关联到ELK系统。ELK是由三个
转载 2024-03-06 16:30:46
80阅读
作为一名程序员,工作也7、8年了,这是我第一次写文章,实在是惭愧。之前因工作需要一直都是百度、google,而没有想过静下心来自己研究原理、源码,导致现在还是一只菜鸟。。。好了。言归正传,本次实践的话是基于nacos作为配置、注册中心的,各位大佬可以去了解一下nacos的官网,虽然最近这个组件爆出了漏洞,但不可否认其功能还真的是很强大的,附上官网地址:https://nacos.io/zh-cn/
这里使用的是eclipse 开发工具1.springboot 版本是2.0的,引入了2个shiro 的依赖,如下<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <versi
转载 2024-05-28 14:02:53
32阅读
Swagger 是最流行的用于设计、构建和记录 RESTful API 的工具。它与 Spring Boot 有很好的集成。要将其与 Spring 结合使用,我们需要向 Maven管理文件中 添加以下两个依赖项pom.xml。<dependency> <groupId>io.springfox</groupId> <artifactId&g
转载 2023-07-22 18:38:30
64阅读
  • 1
  • 2
  • 3
  • 4
  • 5