springboot权限管理系统 学习(一)

SpringIOC

**个人简单来理解的话:**比如(一般的操作来说)一辆玩具小汽车中有轮子,轮子依赖于底盘,底盘又依赖于整个车架,若在这个时候需要修改一个轮子的大小15cm -> 30cm

  1. (一般操作)先定义一个轮子的方法,再定义一个底盘(里面new放入轮子的那些私有方法),最后定义一个车架(new放入底盘的那些方法),然后从修改轮子再到修改整个车架(从底向上的方式)

  2. SpringIOC的方式:先从修改车架 --> 修改底盘–> 修改轮子
    把底层类作为参数传递给上层类,实现上对下的控制
    ( Car car = new Car(new Chassis(new Wheel(20))) )

  3. SpringIOC大致工作流程:(1)、首先会有Bean的一些配置信息,也叫做对象,由xml或者java类或者@Autowired注解放入。(2)、Spring容器读取Bean的配置信息,放入一个Bean定义的注册表里面 (3)、然后根据Bean注册表实例化Bean,(Bean1、Bean2…) (4)、接着将Bean实例放入Spring容器中进行缓存,有一个缓存池 (5)、用户如果要用的时候就去缓存池中拿取Bean的缓存使用Bean
    在这里插入图片描述

定义Bean

  1. @Component : Spring基础的注解,被Spring管理的组件或者Bean
  2. @Repository: 用于持久层,数据库访问层,是用来直接访问数据库的
  3. @Service: 用于服务层,处理业务逻辑
  4. @Controller: 用于表示层,(SpringMVC),暴露给前端的入口
  5. @Autowired:默认是按照资源的类型(class)查找并注入的
  6. @Resource:默认是按照资源的名称(name)查找并注入的
  7. @Qualifier:采用@Autowired如果存在多个实现类的情况下,@Qualifer注解通过资源名称确定唯一性

Bean的作用域

在这里插入图片描述
在这里插入图片描述

Docker

  1. 速度比虚拟机快
  2. Docker镜像就是一个只读的模板,用来创建Docker容器
  3. Docker利用容器来运行应用,容器是镜像创建的运行实例
  4. 仓库是集中存放镜像文件的场所
    在这里插入图片描述
    在这里插入图片描述

Docker 安装

在阿里云ECS上安装

Docker的一些基本命令

1.docker镜像查找、拉取和删除
2. docker容器运行、删除以及容器内操作

命令

  1. docker images : 查看本地镜像列表
    在这里插入图片描述
    2、docker search (查找镜像的名称) : 查找远端操作镜像
    如:docker search redis
    在这里插入图片描述
    3、docker inspect (Image ID 镜像ID):查看镜像信息
    在这里插入图片描述
    4、docker rmi (镜像名称):docker镜像的删除

5、docker run (镜像名称A):新建并且启动容器
在执行A的时候
(1)、先去检查本地是否有镜像A,有的话,就用
(2)、如果没有,就自动的去远端库里面下载;然后去本地创建并且启动A这个容器,不会影响镜像
(3)、在这里插入图片描述
6、docker run–name demo -d ubuntu: 加了一个-d ,意思就是这个容器启动后就以守护态的形式一直运行在那里,而不会运行好后自动停止
7、docker ps :查看所有的容器
8、docker ps -a :查看所有的停止的容器
9、docker stop <容器的id>:终止容器
10、docker rm <容器的id>:命令删除终止状态的容器
11、docker rm -f<容器的id>:命令删除正在运行的容器

阿里云上安装mysql

(1)、安装mysql,检查版本是5.6.44
在这里插入图片描述
(2)、docker run --name mysqlsvr -p 12345:3306 -e MYSQL_ROOT_PASSWORD=aliyun123456 -d mysql:5.6.44
运行并且启动Mysql,加一个-d让他一直运行,3306是内部端口,外面映射的端口是12345,访问的话,就用12345端口去访问, mysqlsvr是这个容器的名字,密码的话就对应后面那一串,版本是5.6.44
在这里插入图片描述
(3)、在这里插入图片描述
在这里插入图片描述

本地navicat sql连接不成功阿里云服务器的mysql

这里着重记一下!!!!
1、首先一定一定要去把阿里云的安全组规则里面开放一个端口12345(端口是我后面要自己的外部映射的一个端口),然后的话,才可以进行下面的操作,这个端口的权限一定要给它打开
在这里插入图片描述
2、然后的话,在Navicat fot MySQL 里面新建一个连接属性,我定义的是docker-mysql,然后下面的主机名是你自己阿里云给你分配的外网IP地址,端口是我第一步的时候在阿里云控制台安全组里面建立的12345端口,用户名和密码的话是刚刚在docker run的时候设立的密码,用户名默认是root,密码是docker run 的时候设置的密码,然后就可以愉快的使用了!!!

在这里插入图片描述

创建并且使用Redis容器

1、首先的话,和刚刚mysql一样,也是docker search redis
2、然后把redis pull下来,docker pull redis
3、最后执行这个命令,安装使用redis: docker run -p 6379:6379 -v $PWD/data:/data -d redis redis-server --appendonly yes

Redis安装时候的错误

这个也和之前的那个mysql安装时候一起重点讲一下:
首先我刚刚开始,执行了端口命令的时候,给我提示错端口被占用了,查阅资料了解一番得知,是前面的那个127.0.0.1:6379,这个占用了,在后面最后那一列的PID里面可以看到是28357,然后我们必须要给它kill掉端口号,才能保证我们下一步的进行,使用命令 sudo kill 28357 来实现,kill掉的图 如图1所示,图2的话,是使用之前的端口来操作,终于没有error了,哈哈哈,舒服~~~
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Docker总结

  1. 容器、镜像、仓库。这三个概念要清楚
  2. Docker是一个操作系统级别的虚拟化方案
  3. Docker是一个轻量级、可移植的、自给自足的容器
  4. 与VM虚拟机的区别等
  5. Docker镜像的命令以及Docker容器的命令掌握

在这里插入图片描述在这里插入图片描述

发布了12 篇原创文章 · 获赞 2 · 访问量 1550

猜你喜欢

转载自blog.csdn.net/hongweisong666/article/details/104075410