数据库&微服务总结

目录

数据库

建表操作

列字段类型分类

增删改查操作

高级查询

连接查询

微服务

StringBoot

1.配置文件

2.启动器starter

3.如何自定义starter(面试题)

4.StringBoot注解

StringCloud

五大组件

Git

1.git与svn对比

​编辑2.Git的命令

3.git冲突解决


数据库

定义:存储数据的仓库

简略安装过程:

        1、解压压缩包

        2、配置my.ini文件

        3、MySQL — install

        4、mysql — initialize — console 会出现默认的MySQL连接密码,同时出现data文件夹

        5、利用初始化密码登陆 mysql -P 3306 -u root -p

        6、改变MySQL连接密码   

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你要修改的密码';

接下来使用客户端的工具去连接;

建表操作

create table test{

    列字段 类型;
    列字段 类型
    ...
}

列字段类型分类

数字类型:    int、bigint、decimal

字符串类型: varchar、char

时间类型:    date、time、datetime

增删改查操作

增加:insert  into   表名  values(?,?,?)

删除:delete from  表名 where 条件

修改:update  表名  set  字段 = 值  where  条件

高级查询

排序:order by asc(升序)

          order by desc(降序)

分组并过滤:group by 字段 having ...

模糊查询:like '%字段%'

查找区间:between 值1 and 值2

连接查询

外连接:

        左外连接:主表  left  join  从表  on  连接条件

                      (以左边的表为主,主表与从表可能没有主外键关系)

        右外连接:从表  right join  主表  on 连接条件

内连接:

        ①表1  inner  join  表2  on 连接条件

        ②表1,表2  where 连接条件

     例:

        select * from Test  t  inner  join  TestItem  ti  on  t.id = ti.id

        select * from Test t , TestItem  ti  where  t.id = ti.id

微服务

StringBoot

概念:基于String框架的一站式解决方案。

        在使用之前:项目开发需要利用String做各种框架的整合,如String-MyBatis,String-redis,String-mvc...,结论:会产生大量的配置文件/整合文件。

        在出现之后:可以做到0配置,具备对应的框架功能,但是如果不做任何配置,有些框架的部分功能是用不了的;StringMVC中的静态资源映射,绝大多数情况下,配置一个配置文件即可,application.yml。

1.配置文件

        application.yml  配置启动器相关的内容

        boostrap.yml     通常是配置不变的东西,如配置中心

2.启动器starter

        String-Boot-starter-web

        String-Boot-starter-jdbc

        String-Boot-starter-xxx

       作用:是将框架的功能封装调用,将启动器导入到StringBoot工程中,StringBoot工程中就具备了该功能。

3.如何自定义starter(面试题)

         3.1.将具备一定功能的StringBoot项目打成jar包,这里把StringBoot项目简称为项目A;

         3.2.在StringBoot项目B要使用该功能,只需要导入项目A对应的启动器;

         3.3.项目A默认的功能不足以使用,此时项目B就可以通过application.yml—配置类进行配置。

4.StringBoot注解

        @configuration  标记类,那么代表是一个配置类

        @bean  标记方法,代表Spring管理的javabean
        @autoconfigration 自动装配

StringCloud

概念:基于javaEE的应用集成的方案

五大组件

        1.注册中心:nacos 服务注册与发现

        2.微服务调用:Fegin / openFeign

        3.熔断限流:

                Hystrix:熔断降级

                Sentinel

        4.负载均衡:Ribbon

        5.网关:getway

                将外部请求转发给nacos上注册的服务

                作用:保护内部微服务之间的调用关系一般这里是用来做用户请求身份验证

       

        如下图所示:此时getway就像一个门栏,将客户端和微服务分隔开,使客户端不能直接访问微服务,有getway在,访问时需要客户端先朝getwat发送一个请求,再由getway发送请求给微服务,让客户端只和getway打交道。

服务雪崩:又一个微服务宕机引起整个微服务构架瘫痪

Git

概念:版本控制器

通俗的说,就是管理项目中的代码的,比如你第一次提交了A版代码,第二次提交了B版代码,当你觉得B版本不如A版本或有问题就可回退

1.git与svn对比

        ①分布式

        ②去中心化

        ③分支:可让修复bug和开发功能的动作同步进行

svn:以小组开发项目为例,使用svn做开发时,以组长为中心,小组必须在一起开发才能够互通代码,需要用局域网,组员最终会将代码提交到组长这。

 Git:与上面的svn对比,一旦组长的电脑出现了问题,代码丢失,组员将无法提交代码,也无法找回;而使用git,不再以组长为中心,出现代码丢失电脑出问题的情况影响也不大,可以再将本地仓库的代码再上传至git上去。

2.Git的命令

git  add将添加/修改的文件加入暂存区
git  commit向本地仓库提交代码
git  push

向远程仓库gitee推送代码

git  clone从远程仓库下载代码到本地
git  pull从远程仓库更新代码
git  branch将本地分支与远程分支建立连接

3.git冲突解决

 如上图,a 和 b 都发送了修改 Y 的请求,但a 是第1个提交的,b 是第2个提交,所以a 已经将Y 修改成了A ,当b 再去提交的时候,b 的本意是将Y 改成B,但a 已经将Y 修改成了A,没有Y了,所以b 将Y 修改成B 的操作是执行不下去的,从而造成了冲突。

解决方式:当b 提交代码时,需要先更新代码,再合并,最后做提交操作。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值