今天是刘小爱自学Java的第141天。

感谢你的观看,谢谢你。

学习计划安排如下:

  • 继续后台管理系统的学习
  • 昨天是搭建了前端页面,今天开始后端微服务的搭建。
  • 基础微服务、商品微服务,本身还未涉及到具体的业务逻辑。
  • 其中有一个比较复杂的点在于自定义异常。

一、创建基本微服务

这些以前就接触过,算是做一个回顾。

1创建父工程

父工程:liuxiaoai,用来管理依赖及其版本,注意是创建project,而不是module。

将所需要的依赖都导入pom文件中,子工程需要什么依赖直接能从父工程中引入。

2创建EurekaServer

注册中心,起名为:lxa-registry,直接创建maven项目,自然会继承父类的依赖。

注意是在父工程的基础上新建module:

①引入依赖:最核心的依赖eureka服务端。

②启动类上加注解

  • @EnableEurekaServer:开启Eureka服务端。
  • @SpringBootApplication:这是一个SpringBoot启动类。

③配置信息

  • 设置访问端口。
  • 设置应用的名称。
  • 设置eureka的地址。

3创建Zuul网关

同样的还是三个步骤:

①引入依赖:eureka客户端和zuul启动器。

②启动类上加注解

  • @SpringBootApplication:这是一个SpringBoot应用。
  • @EnableDiscoveryClient:开启eureka客户端。
  • @EnableCircuitBreaker:开启熔断。

其中该三个注解可以合并成一个注解:@SpringCloudApplication。

@EnableZuulProxy:开启网关

③配置信息编写

zuul配置文件较为复杂,涉及到了一个熔断和负载均衡,这个一般来说,很难自己独立记下来,所以最好的方式就是copy模板。

二、创建商品微服务

将工程命名为:lxa-item。

需要注意的是,lxa-item是一个微服务,那么将来肯定会有其它微服务需要来调用,会使用到其中的实体类。

因此这里使用聚合工程,将具体的业务处理及其相关实体类放到独立子工程中:

在lxa-item中创建两个子工程:

  • lxa-item-pojo:主要是相关实体类。
  • lxa-item-service:所有业务逻辑的处理。

这样的好处在于,如果其它的微服务要调用当前微服务,怎么办?

直接引入需要的子工程依赖就好了。

一样的也是核心三步骤:依赖引入,启动类上加注解,以及配置文件:

配置访问端口,服务名称,连接池……等。

启动后直接访问8081端口就可以了。

但是既然有网关,在网关中添加路由规则,我们不使用默认的路由规则。

具体配置规则就是在访问路径中加入item,这就相当于在商品微服务本身的访问路径上加了一层保护。

三、通用工具模块

有些工具或通用的内容,各个服务都能用,因此需要创建通用模块:lxa-common。

典型例子就是工具类的使用,引入工具类并导入对应依赖即可。

其中有一个json工具类做个说明。

它能完成json数据与Java中的数据类型的各种转换,里面包含四个方法:

①toString方法:把一个对象序列化为String类型,包含1个参数。

  • Object obj:原始java对象

②toList方法:把一个json反序列化为List类型,需要指定集合中元素类型,包含两个参数:

  • String json:要反序列化的json字符串
  • ClasseClass:集合中元素类型

③toMap方法:把一个json反序列化为Map类型,需要指定集合中key和value类型,包含三个参数:

  • String json:要反序列化的json字符串
  • Class kClass:集合中key的类型
  • Class vClass:集合中value的类型

④nativeRead方法:当反序列化的结果比较复杂时,通过这个方法转换,参数:

  • String json:要反序列化的json字符串
  • TypeReference type:在传参时,需要传递TypeReference的匿名内部类,把要返回的类型写在TypeReference的泛型中,则返回的就是泛型中类型

上述方法基本都是见名知义的。

此外在该模块中还需要完成异常的处理,操作起来有点麻烦,后续接着学习。

最后

谢谢你的观看。

如果可以的话,麻烦帮忙点个赞,谢谢你。

微服务主见传递ID还是json_后台管理系统之微服务搭建相关推荐

  1. 微服务主见传递ID还是json_Feign实现微服务间文件传递

    feign实质上就是模拟的正常的http请求,所以通过feign实现文件传递的话就需要模拟正常在浏览器上对文件的操作,也就是模拟文件的上传.下载等. 在这之前先把前端实现文件上传的代码拿出来,灾后面可 ...

  2. javax maven项目缺少_教育平台项目后台管理系统:介绍与搭建

    项目架构 项目介绍 教育后台管理系统是提供给相关业务人员使用的一个后台管理系统,业务人员可以在这个后台管理系统中,对课程信息.讲师信息. 学员信息等数据进行维护. 课程管理模块 课程管理 新建课程 条 ...

  3. 教育平台项目后台管理系统:介绍与搭建

    项目架构 项目介绍 教育后台管理系统是提供给相关业务人员使用的一个后台管理系统,业务人员可以在这个后台管理系统中,对课程信息.讲师信息. 学员信息等数据进行维护. 课程管理模块 课程管理 新建课程 条 ...

  4. vue + element ui 的后台管理系统框架_从零开始搭建 VUE + Element UI后台管理系统框架...

    点击右上方红色按钮关注"web秀",让你真正秀起来 前言 后台管理系统前端框架,现在很流行的形式都是,上方和左侧都是导航菜单,中间是具体的内容.比如阿里云.七牛云.头条号.百家号等 ...

  5. 后台管理系统-前端Vue项目搭建

    后台管理系统简介 从本章节开始我们将逐渐完成一套后台管理系统的搭建过程. 前端技术 Vue3.2 , 后端搭建使用Spring Cloud Alibaba. 1.Vue项目初始化 我们使用Vue ui ...

  6. golang后台管理系统Iris+Layui框架搭建教程

    项目介绍 一款 Go 语言基于Iris.Layui.MySQL等框架精心打造的一款模块化.高性能.企业级的敏捷开发框架,本着简化开发.提升开发效率的初衷触发,框架自研了一套个性化的组件,实现了可插拔的 ...

  7. 京淘商城后台管理系统

    京淘商城 京淘商城后台管理系统 登录.注册界面 商品管理 新增商品 查询商品 规格参数 网站内容管理 内容分类管理 内容管理 账户管理 管理员账户管理 普通用户账户管理 个人信息 习得总结 实习总结 ...

  8. 实验室网页以及后台管理系统(1)-表格设计和建表语句

    实验室网页以及后台管理系统 一 display服务 1.news id headline link_pic news_time status 0 毫秒级!深度学习超快预测能源材料掺杂效应 https: ...

  9. 商城后台管理系统之普通查询_分页查询_商品的添加,单个删除,批量删除

    一.MVC开发模式和JavaEE经典三层结构 1.JSP开发模式一: jsp(接收请求,响应请求,展示数据)+javabean(处理业务逻辑) javaBean:可复用的java组件 -user -u ...

最新文章

  1. 一道微软面试题的运算过程解析
  2. 树莓派3b配置耳机音频输出
  3. 信号捕捉(signal、sigaction)
  4. Java Socket笔记-利用tcp socket搭建CS模型
  5. 枚举变量的重定义问题
  6. Linux就该这么学第0章 咱们先来谈谈学习方法和红帽系统。
  7. mysql varchar转bigint_MySQL 每秒 570000 的写入,如何实现?
  8. 2015.8.3 Java
  9. Python编写只允许实例化一个对象的类
  10. Bailian3713 外星人翻译用数字转换模块【递归+映射】
  11. python的安全插件
  12. 微信小程序下拉刷新组件加载图片(三个小点)不显示的问题
  13. 使用环绕通知对目标方法进行增强—摘抄笔记
  14. 渐变背景和背景图片并存
  15. 【线性代数】上三角矩阵/下三角矩阵
  16. 数据运营-数据管理平台
  17. cocos2dx3.2开发 RPG《Flighting》(五)只能行走的战斗场景
  18. OA办公系统能为企业带来什么好处?
  19. 在线PS入门教程:如何对人像快速抠图
  20. simc模拟器找不到服务器,魔兽世界simc模拟器怎么用?Simc模拟器使用方法及代码介绍...

热门文章

  1. 如何读入一个多行的txt文件,给每行的数据加双引号并保存为一行输出
  2. 数据库-MySQL-数据库设计-主键与索引
  3. java 新手小程序_JAVA新手小程序之一
  4. 如何用java写单链表_如何使用Java实现单链表?
  5. 最完整的MySQL规范
  6. 实战课堂:为什么更换存储之后一切正常但RAC集群启动不了?
  7. Redisson:这么强大的实现分布式锁框架,你还没有?
  8. Mysql读写锁保姆级图文教程
  9. MySQL数据库事务隔离性的实现
  10. 安全开发Java:日志注入,并没那么简单