微服务
文章平均质量分 88
半路凉亭
一位程序老猿
展开
-
Spring Boot 自定义应用开发框架九——基本增删改查“低代码”框架初设计3 前后端交互 未完待续
前面已经把后端需要处理的逻辑大致梳理了一遍,至于通过ibatis拦截器如何拼装新的SQL,网上有很多教程,找度娘即可。前端需要解决的问题有几个:1.每一个分页列表需要哪些字段2.这些字段哪些可以显示,哪些可以查询,哪些可以排序3.用于搜索的字段如何指定 等于、不等于、大于、模糊、in 等搜索方式。原创 2023-03-30 17:13:09 · 976 阅读 · 1 评论 -
Spring Boot 自定义应用开发框架九——基本增删改查“低代码”框架初设计2
上一篇简单讲了下基础增、删、改、查基础操作的低代码处理的一种模式,而在实际项目中分页列表是最重要的一块,因为分页列表是每一个模块的切入点,基本所有的功能都是围绕分页列表展开,例如搜索、分组、导出、增、删、改等等。分页列表功能大家应该都是非常熟悉的,后端传给前端的数据就只有2类,一类是要展示的所有列表信息数据,另一类就是分页的基本属性数据,如总条数,当前页码等。一般我们都会定义一个Page对象专门用于分页数据的处理。原创 2023-03-25 16:03:54 · 869 阅读 · 0 评论 -
Spring Boot 自定义应用开发框架九——基本增删改查“低代码”框架初设计1
概述 因为最近一直在为公司搭建底层框架, 好久没有更新博客了,本次搭建的框架结构基本沿用的就是前面几篇博客所写的结构,最大的不同点是,为了让底层数据更加的纯粹,将后端开发拆成了2个服务,一个是接收前端的提交数据,进行业务上的处理,然后将处理后的数据再提交给另一个后端,姑且我们分别将这2个服务叫做“前台”与“中台”,也即一个完整的功能模块有3个服务,分别是前端、前台、中台。这样将后端拆分成前台,中台两个服务优劣势都比较明显。先说劣势:前后端沟通成本上升;简单模块的代码会有冗余(但随着需求的迭代,这点原创 2023-03-20 17:05:14 · 810 阅读 · 4 评论 -
Spring Boot 定时任务五 :Quartz简单封装
通过前面几篇文章可以知道,quartz的shiy使用其实就是3个步数,即1)job - 任务-2)Trigger - 触发器3)Scheduler - 任务调度在实际项目中,一个项目里往往存在不同定时需求的任务处理,如果按照上一篇文章中的方法,那肯定是不太好的,我们可以将quartz封装成一个工具类来使用。一、修改服务层代码 修改上一篇使用到的UserService,新...原创 2019-02-13 13:45:13 · 972 阅读 · 0 评论 -
Spring Boot 定时任务四 :SpringBoot整合Quartz
通过上一篇,我们知道quartz的使用只需要3步,而springboot整合Quartz其实就是实现此3个步骤。一、pom文件新增jar<!-- Sprng tx 坐标--> <dependency> <groupId>org.springframework</groupId> <artifactId>sprin...原创 2019-02-12 15:03:34 · 536 阅读 · 0 评论 -
Spring Boot 定时任务三 : quartz基本使用
一、Quartz介绍二、Quartz 的使用思路1)job - 任务- 你要做什么事?2)Trigger - 触发器- 你什么时候去做?3)Scheduler - 任务调度- 你什么时候需要去做什么事?三、基本使用案例 1)pom文件新增Quartz <!-- Quartz 坐标--> <dependency> <gr...原创 2019-02-12 14:20:01 · 235 阅读 · 0 评论 -
Spring Boot 定时任务二 :cron表达式
Cron 表达式是一个字符串,分为6 或7 个域,每一个域代表一个含义Cron 有如下两种语法格式:(1) Seconds Minutes Hours Day Month Week Year(2)Seconds Minutes Hours Day Month Week一、结构corn 从左到右(用空格隔开):秒 分 时 日期 月份 星期 年份二、各字段的含义位置...原创 2019-02-11 14:25:51 · 3035 阅读 · 0 评论 -
Spring Boot 定时任务一 :Scheduled 定时任务器
Scheduled 定时任务器是Spring3.0 以后自带的一个定时任务器。如果只是使用一些简单的定时程序,使用自带的定时器即可。一、添加Scheduled坐标<dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-suppo...原创 2019-02-11 14:14:23 · 225 阅读 · 0 评论 -
SpringCloud : 创建高可用的服务注册中心(Eureka)(二) 进阶篇
上一篇文章《SpringCloud : 创建高可用的服务注册中心(Eureka)(一)》只是讲解了如果创建多个服务注册中心实例,并将客户端注册到服务中,并没有展示服务之间如何通信的功能。 下面通过生产者与消费者模式讲解两者之间如何通过注册中心通信。一、创建生产者项目 1) 将上篇中的客户端项目 “12-eureka-client” 拷贝一份,并...原创 2018-11-27 16:51:36 · 215 阅读 · 0 评论 -
SpringCloud : 创建高可用的服务注册中心(Eureka)(一)
上一篇文章里注册中心只用了一个服务端,在实际生产环境中由于负载、断点保护等原因,肯定是不合适的, 这样我们就要将Eureka集群化。Eureka可通过运行多个实例,使其更具有高可用性。事实上,这是它默认的熟性,你需要做的就是给对等的实例一个合法的关联serviceurl。1、创建服务端项目 将上一篇文章终端服务端拷贝,重命名为 13-eureka-server-club。2...原创 2018-11-26 17:29:33 · 292 阅读 · 0 评论 -
RabbitMQ(七) : 持久化及消息确认ACK机制
一、持久化 消息的可靠性是RabbitMQ 的一大特色。下面来看下RabbitMQ是如何做到持久化的。 其实很简单,就以第一个Direct为例说明。 1.先启动消息接收者项目。 2.将发送者的测试类修改如下,在发送的消息里加上序号。 3.运行测试类后,查看接收者项目的控制台,例如下图,发送到第12条信息时,停掉接收者项目 4.过...原创 2018-11-15 11:06:08 · 2072 阅读 · 0 评论 -
Springcloud:服务注册中心(Eureka) 入门
一、什么是服务注册中心服务注册中心是服务实现服务化管理的核心组件,类似于目录服务的作用,主要用来存储服务信息,譬如提供者url 串、路由信息等。服务注册中心是SOA 架构中最基础的设施之一。1 服务注册中心的作用 服务注册与发现对于微服务系统来说非常重要。有了服务发现与注册,你就不需要整天改服务调用的配置文件了,你只需要使用服务的标识符,就可以访问到服务。 1.1,服务的...原创 2018-11-21 11:51:14 · 179 阅读 · 0 评论 -
RabbitMQ(六) : Fanout交换器(广播)
这种类型的就像手机里的广播机制,例如短信或者接听电话功能,不论你在使用什么APP时,只要有短信或者电话进来,都能直接被处理。这种机制就相当于只要发送了信息,凡使用这种类型的队列都将收到信息,所以就不需要设置路由键规则,这种方式比较简单。一、创建接收者(消费者)项目1.设置配置文件application.properties2.创建日志级别的信息接收者,以短信服务为例。...原创 2018-11-14 16:09:01 · 213 阅读 · 0 评论 -
RabbitMQ(二) RabbitMQ 原理(重要)
1. Message 消息。消息是不具名的,它由消息头消息体组成。消息体是不透明的,而消息头则由一系列可选属性组成,这些属性包括:routing-key(路由键)、priority(相对于其他消息的优先权)、delivery-mode(指出消息可能持久性存储)等。2.Publisher消息的生产者。也是一个向交换器发布消息的客户端应用程序。3.Consumer ...原创 2018-11-12 17:06:18 · 195 阅读 · 0 评论 -
RabbitMQ(三) 微服务 RabbitMQ 入门案例
一、创建案例项目 打开 https://start.spring.io/ ,在“Dependencies”中搜索RabbitMQ和web,生成spring-boot项目点击生成按钮,即下载了一个包含RabbitMQ的项目。然后导入到Eclipse中。二、配置RabbitMQ的配置文件在 application.properties 文件里配置上一篇文章中安装的Rabbit...原创 2018-11-12 15:11:57 · 2828 阅读 · 0 评论 -
RabbitMQ(五) : Topic 交换器(规则匹配)
Topic交换器类型与Direct类似,都是通过路由键来匹配消息队列,不同之处是Direct是通过完全匹配路由键的名称对应,而Topic类型支持规则匹配,也即支持通配符的方式。下面通过不同的服务对不同级别的日志发送到不同规则的消息队列一、创建接收者(消费者)项目 1.设置配置文件application.properties 设置相应的RabbitMQ的服...原创 2018-11-14 13:22:20 · 2191 阅读 · 0 评论 -
RabbitMQ(四) : Direct 交换器(发布与订阅完全匹配)
Direct 类型交换器指消息发送者通过交换器完全匹配路由键的方式将消息绑定到相应队列,然后传递给相应的接收者。下面通过一个实例来说。本实例通过配置不同的日志级别的路由键来发送和接收信息。一、创建接收者(消费者)项目 1.设置配置文件application.properties 设置相应的RabbitMQ的服务器和相应的交换器名称,队列...原创 2018-11-13 14:53:28 · 472 阅读 · 0 评论