当前位置: 首页 > news >正文

黑马程序员MybatisPlus/Docker相关内容

Day01

MP相关知识

1. mp配置类:

在这里插入图片描述

2.条件构造器:

在这里插入图片描述
具体的实现例子:
①QuerryWapper:
在这里插入图片描述
②LambdaQueryWrapper:
在这里插入图片描述

3.MP的自定义SQL

在这里插入图片描述

4.MP的Service层的实现

在这里插入图片描述

5.IService下的Lambda查询

原SQL语句的写法:
在这里插入图片描述
Lambda 查询语句的实现:
在这里插入图片描述

6.IService下的Lambda更新

在这里插入图片描述
lambdaUpdate的实现:
在这里插入图片描述

7.MP中批量增加的方法

在这里插入图片描述

8.MP中的逻辑删除方法

在这里插入图片描述
自动的去执行update的方法
在这里插入图片描述

9.MP中的分页插件

①:配置分页的配置类

在这里插入图片描述
②:MP分页使用的举例
在这里插入图片描述

10.MP中通用分页查询的实例

在这里插入图片描述
实现步骤:
①:通用分页结果:
在这里插入图片描述
②:controller层接口
在这里插入图片描述
③:具体实现类
s
在这里插入图片描述
或者这种形式:

@GetMapping("/page")
public Result pageQuery(int page,int pageSize,String name){//使用mp提供的分页插件//创建分页构造器,表示几页几条Page<Employee> pageInfo = new Page<>(page,pageSize);//通过条件构造类构造其他的过滤条件LambdaQueryWrapper<Employee> lambdaQueryWrapper = new LambdaQueryWrapper<>();//条件,前端发送过来的指定姓名,模糊匹配,且姓名非空lambdaQueryWrapper.like(!StringUtils.isEmpty(name),Employee::getName,name);//指定结果的降序lambdaQueryWrapper.orderByDesc(Employee::getCreateTime);//执行查询empService.page(pageInfo,lambdaQueryWrapper);//响应数据return Result.success(pageInfo);
}

Day02

Docker相关内容学习

1.docker命令解读

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

2.docker的常见命令

在这里插入图片描述

3.docker拉取练习

在这里插入图片描述
步骤:
①:docker pull nginx -------拉取nginx镜像
②:docker images ----------查看镜像列表
在这里插入图片描述
③:docker run -d --name nginx -p 80:80 nginx -------运行nginx容器
在这里插入图片描述
④:docker ps ------------查看启动的容器列表
在这里插入图片描述
⑤:docker stop nginx -----停止容器的运行
在这里插入图片描述
⑥: docker start nginx --启动容器
在这里插入图片描述
⑦:docker logs -f nginx --------实时查看nginx的日志
⑧:docker rm nginx —删除容器

4.数据卷挂载

在这里插入图片描述
补充:docker进入容器内。于进入一个正在运行的容器中并以交互方式执行命令。

docker exec -it nginx bash

数据卷相关内容:
在这里插入图片描述

5.数据卷相关案例(nginx)

在这里插入图片描述
可以在容器启动的时间直接指定好容器的挂载

docker run -d --name nginx -p 80:80 -v html:/usr/share/nginx/html nginx

查看现有的数据卷

docker volume ls

查看数据卷的详细信息

docker volume inspect 名称
eg:docker volume inspect html

在这里插入图片描述

6.数据卷相关案例(MySql)

在这里插入图片描述
补充:图片中的内容是MySQL的匿名挂载的路径:

在这里插入图片描述

在这里插入图片描述
挂载的位置:
在这里插入图片描述
在这里插入图片描述
注:执行命令前,需要先在linux中创建出对应的文件夹
在这里插入图片描述

查看启动中的容器

docker ps

关闭mysql对应的容器

docker rm -f mysql

启动对应的mysql并实现挂载的功能

docker run -d \--name mysql \-p 3306:3306 \-e TZ=Asia/Shanghai \-e MYSQL_ROOT_PASSWORD=123 \-v /root/mysql/data:/var/lib/mysql \-v /root/mysql/init:/docker-entrypoint-initdb.d \-v /root/mysql/conf:/etc/mysql/conf.d \mysql

使用本机navicat进行连接即可

Day03

Dockerfile相关内容学习

1.自定义镜像

在这里插入图片描述
一个java项目的镜像的结构是这样的
在这里插入图片描述
Dockerfile相关的命令:
在这里插入图片描述

2.自定义镜像Demo

左边是:从linux系统开始一步一步去创建dockerfile文件。右边是直接创建出了jre的镜像,包含了前面红色部分的内容。
在这里插入图片描述

3.自定义镜像

在这里插入图片描述
练习:将黑马资料中的文件上传到root目录下
在这里插入图片描述
通过 docker load -i jkd.tar 来加载资料中提供的jkd的镜像
在这里插入图片描述
进入dockerfile所在的目录下执行

docker build -t docker-demo . 

在这里插入图片描述
通过命令查看构建的镜像

docker images

在这里插入图片描述
启动构建的docker镜像

docker run -d --name dd -p 8080:8080 docker-demo

在这里插入图片描述
查看对应的所有容器

docker ps

在这里插入图片描述
根据docker的name来加载对应的日志

docker logs -f dd

在这里插入图片描述
部署成功之后的访问路径
在这里插入图片描述
总结:
在这里插入图片描述

4.docker的网络

可以通过命令

eg:docker inspect mysql    //查看mysql容器的ip地址

默认情况下创建出的容器中ip是自动去分配的
在这里插入图片描述

网络相关的命令:
在这里插入图片描述
1.创建一个网络

docker network create heima 

2.将现在的mysq容器加入到heima这个网络中

docker network connect 网络名 容器名
-------docker network connect heima mysql 

3.在启动容器的时间直接将加入网络中去的命令,

docker run -d --name dd -p 8080:8080 --network heima docker-demo

在这里插入图片描述

5.后端项目的部署

①:打包黑马资料中黑马商城的项目,并放在linux中。
在这里插入图片描述
②:执行对应的dockerfile的命令

 docker build -t hmall .

③:加载对应的镜像为容器,并指定对应的网络

docker run -d --name hm -p 8080:8080 --network heima hmall

在这里插入图片描述
④:查看对应的日志即可

docker logs -f hm                                    //看到启动容器的日志

在这里插入图片描述
这就表示后端的包部署成功

6.前端项目的部署

需要重新去部署ngin相关的内容
①:删除nginx容器

docker rm -f nginx

②:重新加载nginx容器

docker run -d \--name nginx \-p 18080:18080 \-p 18081:18081 \-v /root/nginx/html:/usr/share/nginx/html \-v /root/nginx/nginx.conf:/etc/nginx/nginx.conf \--network heima \nginx

在这里插入图片描述
③:部署成功,访问18080端口即可看到商城页面

7.DockerCompose的使用

在这里插入图片描述
对应关系:
在这里插入图片描述
上面的部署的详细信息:
在这里插入图片描述
在这里插入图片描述
上传对应的compose文件
在这里插入图片描述
DockerCompose相关的命令
在这里插入图片描述
相关操作:
补充:修改对应的nginx的配置
在这里插入图片描述

①:删除所有的容器

docker rm -f mysql nginx hm/

②:删除对应多余的镜像

docker rmi hmall docker-demo

③:执行对应的docker compose命令

docker compose up -d

在这里插入图片描述
完成DockerCompose的部署

相关文章:

黑马程序员MybatisPlus/Docker相关内容

Day01 MP相关知识 1. mp配置类&#xff1a; 2.条件构造器&#xff1a; 具体的实现例子&#xff1a; ①QuerryWapper&#xff1a; ②LambdaQueryWrapper: 3.MP的自定义SQL 4.MP的Service层的实现 5.IService下的Lambda查询 原SQL语句的写法&#xff1a; Lambda 查询语句的…...

使用 Vue 和 Canvas-Confetti 实现烟花动画特效

在开发中&#xff0c;为用户提供具有视觉冲击力的反馈是一种提升用户体验的好方法。今天&#xff0c;我们将结合 Vue 框架、canvas-confetti 和 Lottie 动画&#xff0c;创建一个动态对话框动画&#xff0c;其中包含炫酷的烟花特效。 效果图&#xff1a; 效果简介 当用户触发…...

【银河麒麟操作系统真实案例分享】内存黑洞导致服务器卡死分析全过程

了解更多银河麒麟操作系统全新产品&#xff0c;请点击访问 麒麟软件产品专区&#xff1a;https://product.kylinos.cn 开发者专区&#xff1a;https://developer.kylinos.cn 文档中心&#xff1a;https://documentkylinos.cn 现象描述 机房显示器连接服务器后黑屏&#xff…...

如何加强游戏安全,防止定制外挂影响游戏公平性

在现如今的游戏环境中&#xff0c;外挂始终是一个困扰玩家和开发者的问题。尤其是定制挂&#xff08;Customized Cheats&#xff09;&#xff0c;它不仅复杂且隐蔽&#xff0c;更能针对性地绕过传统的反作弊系统&#xff0c;对游戏安全带来极大威胁。定制挂通常是根据玩家的需求…...

SpringBoot整合knife4j,以及会遇到的一些bug

这篇文章主要讲解了“Spring Boot集成接口管理工具Knife4j怎么用”&#xff0c;文中的讲解内容简单清晰&#xff0c;易于学习与理解&#xff0c;下面请大家跟着小编的思路慢慢深入&#xff0c;一起来研究和学习“Spring Boot集成接口管理工具Knife4j怎么用”吧&#xff01; 一…...

城电科技|光伏廊道是什么?安装光伏廊道有什么好处?

光伏廊道是什么&#xff1f;光伏廊道专门设计用于集中安装太阳能光伏发电系统的建筑物或构筑物&#xff0c;它可以将光伏转换成可以用于供电的清洁绿电。光伏廊道通常由阳能电池板、太阳能电池、控制器、逆变器、混凝土、钢材等材料组成&#xff0c;具备发电、坚固、耐用、防水…...

当DHCP服务器分配了同一个IP地址

当DHCP服务器分配了同一个IP地址给多个设备时&#xff0c;这通常会导致网络问题&#xff0c;如IP地址冲突&#xff0c;进而影响设备的网络连接。以下是详细的分析和解决步骤&#xff1a; 原因分析&#xff1a; IP地址租约未过期&#xff1a; 租约管理&#xff1a;DHCP服务器维…...

储能能量自动化调配装置功能介绍

随着可再生能源的快速发展&#xff0c;光伏发电已成为全球能源结构转型的关键技术之一。与此同时&#xff0c;储能技术作为实现光伏发电稳定输出的核心技术&#xff0c;得到了广泛关注。在企业电网中&#xff0c;光伏储能系统的运维管理不仅关乎能源利用效率&#xff0c;还涉及…...

vite5+vue3+Ts5 开源图片预览器上线

images-viewer-vue3&#xff1a;一款Vue3的轻量级图像查看器&#xff0c;它基于Flip动画技术&#xff0c;支持PC和h5移动网页预览照片&#xff0c;如果它是Vue3开发的产品。 npm开源地址:https://www.npmjs.com/package/images-viewer-vue3?activeTabreadme Flip 动画 < …...

【深度学习】深入解析长短期记忆网络(LSTMs)

长短期记忆网络&#xff08;Long Short-Term Memory networks, LSTMs&#xff09;是一种特殊的递归神经网络&#xff08;RNN&#xff09;&#xff0c;专门设计用来解决标准 RNN 在处理长序列数据时的梯度消失和梯度爆炸问题。LSTMs 在许多序列数据任务中表现出色&#xff0c;如…...

从Web3到智能合约:探索新一代数据交互模式

随着互联网技术的不断演进&#xff0c;Web3的到来标志着互联网的一个新纪元。与传统的Web2相比&#xff0c;Web3倡导去中心化、更加开放和透明的网络架构&#xff0c;而智能合约则是其中的核心技术之一。本文将介绍Web3与智能合约的概念、应用以及它们如何改变数据交互模式&…...

排查bug的通用思路

⭐️前言⭐️ APP点击某个按钮没有反应/PC端执行某个操作后&#xff0c;响应较慢&#xff0c;通用的问题排查方法: 从多个角度来排查问题 &#x1f349;欢迎点赞 &#x1f44d; 收藏 ⭐留言评论 &#x1f349;博主将持续更新学习记录收获&#xff0c;友友们有任何问题可以在评…...

如何利用Python爬虫获得商品类目

在当今数字化时代&#xff0c;获取和分析数据的能力对于任何希望在市场上保持竞争力的企业来说都是至关重要的。对于电子商务平台和市场研究公司而言&#xff0c;获取商品类目数据尤为重要&#xff0c;因为这些数据可以帮助他们更好地理解市场趋势、优化产品目录并制定有效的营…...

如何通过 Windows 自带的启动管理功能优化电脑启动程序

在日常使用电脑的过程中&#xff0c;您可能注意到开机后某些程序会自动运行。这些程序被称为“自启动”或“启动项”&#xff0c;它们可以在系统启动时自动加载并开始运行&#xff0c;有时甚至在后台默默工作。虽然一些启动项可能是必要的&#xff08;如杀毒软件&#xff09;&a…...

大模型学习有什么发展前景?

前景人工智能大模型是指拥有超大规模参数&#xff08;通常在十亿个以上&#xff09;、复杂计算结构的机器学习模型。它通常能够处理海量数据&#xff0c;完成各种复杂任务&#xff0c;如自然语言处理、图像识别等。 2024年政府工作报告提出“发展新质生产力”&#xff0c;并将…...

Excel技巧:如何批量调整excel表格中的图片?

插入到excel表格中的图片大小不一&#xff0c;如何做到每张图片都完美的与单元格大小相同&#xff1f;并且能够根据单元格来改变大小&#xff1f;今天分享&#xff0c;excel表格里的图片如何批量调整大小。 方法如下&#xff1a; 点击表格中的一个图片&#xff0c;然后按住Ct…...

独著与编著的区别是?

独著和编著主要有以下区别&#xff1a; 一、创作性质 - 独著 - 独著是作者完全独立进行创作的作品。其内容是作者自己的研究成果、观点见解或者经验总结。作者从最初的选题构思&#xff0c;到资料收集、分析研究&#xff0c;再到内容撰写、修改润色等全过程都是独立完成的。…...

vue中pdf.js的使用,包括pdf显示,跳转指定页面,高亮关键词

目录 一、下载pdf.js 二、引入到本地的项目中 三、实现预览pdf 四、跳转到指定页面 五、利用pdf里面的find查找关键词 六、修改页面大小为实际大小 一、下载pdf.js https://github.com/mozilla/pdf.js 里面有很多的版本&#xff0c; 高版本的可能浏览器不兼容或者还要考…...

【Spring Boot】自动装配机制详解

1. 传统的 Spring 注入方式&#xff08;基于 XML 配置&#xff09; 在传统的 Spring 中&#xff0c;依赖注入&#xff08;DI&#xff09;通常通过 XML 配置文件来进行管理。常见的方式有两种&#xff1a; 通过 <property> 元素进行属性注入&#xff1a; <bean id&qu…...

Flink集群搭建整合Yarn运行

Flink 集群 1. 服务器规划 服务器h1、h4、h5 2. StandAlone 模式&#xff08;不推荐&#xff09; 2.1 会话模式 在h1操作 #1、解压 tar -zxvf flink-1.19.1-bin-scala_2.12.tgz -C /app/#2、修改配置文件 cd /app/flink-1.19.1/conf vim conf.yaml ##内容&#xff1a;## j…...

8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂

蛋白质结合剂&#xff08;如抗体、抑制肽&#xff09;在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上&#xff0c;高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术&#xff0c;但这类方法普遍面临资源消耗巨大、研发周期冗长…...

渗透实战PortSwigger靶场-XSS Lab 14:大多数标签和属性被阻止

<script>标签被拦截 我们需要把全部可用的 tag 和 event 进行暴力破解 XSS cheat sheet&#xff1a; https://portswigger.net/web-security/cross-site-scripting/cheat-sheet 通过爆破发现body可以用 再把全部 events 放进去爆破 这些 event 全部可用 <body onres…...

pam_env.so模块配置解析

在PAM&#xff08;Pluggable Authentication Modules&#xff09;配置中&#xff0c; /etc/pam.d/su 文件相关配置含义如下&#xff1a; 配置解析 auth required pam_env.so1. 字段分解 字段值说明模块类型auth认证类模块&#xff0c;负责验证用户身份&am…...

江苏艾立泰跨国资源接力:废料变黄金的绿色供应链革命

在华东塑料包装行业面临限塑令深度调整的背景下&#xff0c;江苏艾立泰以一场跨国资源接力的创新实践&#xff0c;重新定义了绿色供应链的边界。 跨国回收网络&#xff1a;废料变黄金的全球棋局 艾立泰在欧洲、东南亚建立再生塑料回收点&#xff0c;将海外废弃包装箱通过标准…...

linux 错误码总结

1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...

Psychopy音频的使用

Psychopy音频的使用 本文主要解决以下问题&#xff1a; 指定音频引擎与设备&#xff1b;播放音频文件 本文所使用的环境&#xff1a; Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...

select、poll、epoll 与 Reactor 模式

在高并发网络编程领域&#xff0c;高效处理大量连接和 I/O 事件是系统性能的关键。select、poll、epoll 作为 I/O 多路复用技术的代表&#xff0c;以及基于它们实现的 Reactor 模式&#xff0c;为开发者提供了强大的工具。本文将深入探讨这些技术的底层原理、优缺点。​ 一、I…...

AirSim/Cosys-AirSim 游戏开发(四)外部固定位置监控相机

这个博客介绍了如何通过 settings.json 文件添加一个无人机外的 固定位置监控相机&#xff0c;因为在使用过程中发现 Airsim 对外部监控相机的描述模糊&#xff0c;而 Cosys-Airsim 在官方文档中没有提供外部监控相机设置&#xff0c;最后在源码示例中找到了&#xff0c;所以感…...

苹果AI眼镜:从“工具”到“社交姿态”的范式革命——重新定义AI交互入口的未来机会

在2025年的AI硬件浪潮中,苹果AI眼镜(Apple Glasses)正在引发一场关于“人机交互形态”的深度思考。它并非简单地替代AirPods或Apple Watch,而是开辟了一个全新的、日常可接受的AI入口。其核心价值不在于功能的堆叠,而在于如何通过形态设计打破社交壁垒,成为用户“全天佩戴…...

嵌入式常见 CPU 架构

架构类型架构厂商芯片厂商典型芯片特点与应用场景PICRISC (8/16 位)MicrochipMicrochipPIC16F877A、PIC18F4550简化指令集&#xff0c;单周期执行&#xff1b;低功耗、CIP 独立外设&#xff1b;用于家电、小电机控制、安防面板等嵌入式场景8051CISC (8 位)Intel&#xff08;原始…...