Dobbo微服务项目实战(详细介绍+案例源码) - 1.项目介绍及环境配置

news/2024/5/17 6:49:34/文章来源:https://blog.csdn.net/weixin_45137565/article/details/126918938

系列文章目录

  1. 项目介绍及环境配置

文章目录

  • 系列文章目录
  • 一、项目介绍
    • 1. 功能
    • 2. 技术选型
    • 3. 页面预览
      • ⑴. 登录
      • ⑵. 交友(主页)
      • ⑶. 探花
      • ⑷. 搜附件
      • ⑸. 桃花传音
      • ⑹. 测灵魂
      • ⑺. 圈子
      • ⑻. 消息
      • ⑼. 小视频
      • ⑽. 我的
  • 二、开发工具
    • 1. YAPI
    • 2. Android模拟器
    • 3. 调试工具PostMan
    • 4. 项目镜像
      • ⑴. 资源下载
      • ⑵. 虚拟机配置
      • ⑶. FinalShell
    • 5. IDEA配置
      • ⑴. JDK1.8
      • ⑵. 设置项目编码格式
      • ⑶. 设置Maven仓库
    • 6. MYSQL数据库
  • 三、项目结构
    • 1. 主体结构
    • 2. 模块依赖
      • ⑴. tanhua
      • ⑵. tanhua-app-server
      • ⑶. tanhua-autoconfig
      • ⑷. tanhua-commons
      • ⑸. tanhua-dubbo-db
      • ⑹. tanhua-dubbo-interface
      • ⑺. tanhua-dubbo-mongo
      • ⑻. tanhua-model
    • 3. 引导类配置文件
    • 4. Lombok
    • 5. 常用注解
      • ⑴. @Data注解
      • ⑵. @Slf4j注解
      • ⑶. @AllArgsConstructor、@NoArgsConstructor注解
      • ⑷. @Builder



一、项目介绍

探花交友是一个移动端陌生人社交App

1. 功能

功能说明备注
注册、登录用户无需单独注册,直接通过手机号登录即可首次登录成功后需要完善个人信息
交友主要功能有:测灵魂、桃花传音、搜附近、探花等
圈子类似微信朋友圈,用户可以发动态、查看好友动态等
消息通知类消息 + 即时通讯消息
小视频类似抖音,用户可以发小视频,评论等显示小视频列表需要进行推荐算法计算后进行展现。
我的我的动态、关注数、粉丝数、通用设置等

2. 技术选型

前端:

  • flutter + android + 环信SDK + redux + shared_preferences + connectivity + iconfont + webview + sqflite

后端:

  • Spring Boot + SpringMVC + Mybatis + MybatisPlus + Dubbo
  • Elasticsearch geo 实现地理位置查询
  • MongoDB 实现海量数据的存储
  • Redis 数据的缓存
  • Spark + MLlib 实现智能推荐
  • 第三方服务 环信即时通讯
  • 第三方服务 阿里云 OSS 、 短信服务
  • 第三方服务 虹软开放平台 / 阿里云

技术解决方案

  • 使用Elasticsearch geo实现附近的人的解决方案
  • 使用Spark + Mllib实现智能推荐的解决方案
  • 使用MongoDB进行海量数据的存储的解决方案
  • 使用采用分布式文件系统存储小视频数据的解决方案
  • 使用百度人脸识别的解决方案
  • 使用阿里云进行短信验证码发送的解决方案

在这里插入图片描述


3. 页面预览

⑴. 登录

用户通过手机验证码进行登录,如果是第一次登录则需要完善个人信息,在上传图片时,需要对上传的图片做人像的校验,防止用户上传非人像的图片作为头像。流程完成后,则登录成功。

在这里插入图片描述


⑵. 交友(主页)

交友是探花项目的核心功能之一,用户可以查看好友,添加好友,搜索好友等操作;还有引导功能:今日佳人、推荐、最近访客…

在这里插入图片描述


⑶. 探花

左划喜欢,右划不喜欢,每天限量不超过100个,开通会员可增加限额。双方互相喜欢则配对成功
在这里插入图片描述


⑷. 搜附件

根据用户当前所在的位置进行查询,并且在10km的范围内进行查询,可以通过筛选按钮进行条件筛选
在这里插入图片描述

⑸. 桃花传音

功能类似QQ中的漂流瓶,用户可以发送和接收语音消息,陌生人就会接收到消息
在这里插入图片描述


⑹. 测灵魂

测试题用于对用户进行分类,每次提交答案后更新用户属性
在这里插入图片描述


⑺. 圈子

推荐频道为根据问卷及喜好推荐相似用户动态
在这里插入图片描述


⑻. 消息

消息包含通知类的消息和好友消息
在这里插入图片描述


⑼. 小视频

用户可以上传小视频,也可以查看小视频列表,并且可以进行点赞操作
在这里插入图片描述


⑽. 我的

显示关注数、喜欢数、粉丝数、我的动态等信息
在这里插入图片描述



二、开发工具

1. YAPI

本项目采用 YApi 作为API接口管理,开源的接口定义、管理、提供mock数据的管理平台

请求地址: http://192.168.136.160:3000
用户名/密码: tanhua@itcast.cn / 123456

在这里插入图片描述

2. Android模拟器

网易MUMU安卓模拟器下载地址: https://mumu.163.com/


操作: 点击 更多 -> 安装 -> 选择app-1104-真机

网盘资源地址(不需要密码): https://pan.baidu.com/s/1daL566ehyZuQ6s5vzXYNpA?pwd=java

在这里插入图片描述

在这里插入图片描述


3. 调试工具PostMan

Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件。postman被500万开发者和超100,000家公司用于每月访问1.3亿个API。

官方网址: https://www.postman.com/

在这里插入图片描述


4. 项目镜像

⑴. 资源下载

项目使用的是Centos7环境,该环境中部署安装了项目所需要的各种服务,如:RabbitMQ,MongoDB、Redis等。

网盘资源地址(不需要密码): https://pan.baidu.com/s/1daL566ehyZuQ6s5vzXYNpA?pwd=java

在这里插入图片描述

  • 虚拟机的用户名和密码:root / root123
  • 默认参数:CPU:2核,内存(内存不足可以调整):4G,硬盘:60G
  • 网关IP为(需要修改): 192.168.136.160

⑵. 虚拟机配置

- 通过 VMware 打开 centos7.vmx 文件

在这里插入图片描述

- 编辑 虚拟网络编辑器
子网IP地址: 改为 192.160.136.0

在这里插入图片描述


⑶. FinalShell

除MySQL数据库部署到本地电脑中。其他涉及到的所有组件都已经以docker形式安装到虚拟机中。全部使用docker-compose的方式集中式部署
每个文件夹中都包含一个docker-compose.yml配置文件,一键启动并部署应用

通过 FinalShell 链接虚拟机,开启项目所需的环境依赖

在这里插入图片描述


# 开始 项目所需环境
cd /root/docker-file/base/
docker-compose up -d

在这里插入图片描述


5. IDEA配置

  • JDK1.8
  • Intellij Idea
  • maven-3.x以上
  • Git
  • UTF-8编码格式

⑴. JDK1.8

网盘资源地址(不需要密码): https://pan.baidu.com/s/1daL566ehyZuQ6s5vzXYNpA?pwd=java

在这里插入图片描述

⑵. 设置项目编码格式

在这里插入图片描述

⑶. 设置Maven仓库

在这里插入图片描述


6. MYSQL数据库

- 打开 Navicat ,点击右键选择新建数据库,字符集选utf-8

在这里插入图片描述

- 如果连接不上localhost,检查本地 mysql 服务是否启动
在这里插入图片描述

- 在新建的数据库上右击,选择“运行SQL文件”,在提示框中选择文件所在的路径,编码保持一致选择utf-8

网盘资源地址(不需要密码): https://pan.baidu.com/s/1daL566ehyZuQ6s5vzXYNpA?pwd=java

在这里插入图片描述

在这里插入图片描述

- 数据库表

数据库表说明
tb_user用户表
tb_user_info用户详情表
tb_settings用户设置表
tb_question好友问题表
tb_black_list黑名单
tb_announcement公告表


三、项目结构

GItee仓库地址: https://gitee.com/yuan0_0/tanhua.git

1. 主体结构

整体项目使用Maven架构搭建,采用聚合工程形式管理模块,为了便于调用,dubbo需要拆分为接口模块和服务模块

在这里插入图片描述

父工程工程名称说明
tanhuatanhua-autoconfig自动装配的工具类
tanhuatanhua-domain实体类模块
tanhuatanhua-dubboDubbo子模块(可以理解为文件夹,管理dubbo模块)
tanhuatanhua-app与手机端交互的入口模块
tanhua-dubbotanhua-dubbo-interfaceDubbo接口模块
tanhua-dubbotanhua-dubbo-dbDubbo服务模块(数据库部分)
tanhua-dubbotanhua-dubbo-mongoDubbo服务模块(MongoDB部分)

2. 模块依赖

在这里插入图片描述

⑴. tanhua

编辑 pom.xml 文件:

<properties><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target><mysql.version>5.1.47</mysql.version><jackson.version>2.11.0</jackson.version><druid.version>1.0.9</druid.version><servlet-api.version>2.5</servlet-api.version><jsp-api.version>2.0</jsp-api.version><joda-time.version>2.5</joda-time.version><commons-lang3.version>3.3.2</commons-lang3.version><commons-io.version>1.3.2</commons-io.version><mybatis.version>3.5.6</mybatis.version><mybatis.mybatis-plus>3.4.1</mybatis.mybatis-plus><lombok.version>1.18.8</lombok.version><mongo.version>4.0.5</mongo.version><spring-cloud.version>Hoxton.SR10</spring-cloud.version><spring-cloud-alibaba.version>2.2.5.RELEASE</spring-cloud-alibaba.version>
</properties><!--通用依赖-->
<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version><scope>test</scope></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency><dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.4.3</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.8</version></dependency>
</dependencies><dependencyManagement><dependencies><dependency><groupId>io.netty</groupId><artifactId>netty-bom</artifactId><version>4.1.59.Final</version><type>pom</type><scope>import</scope></dependency><dependency><groupId>io.projectreactor</groupId><artifactId>reactor-bom</artifactId><version>2020.0.4</version><type>pom</type><scope>import</scope></dependency><dependency><groupId>io.projectreactor.netty</groupId><artifactId>reactor-netty</artifactId><version>0.9.8.RELEASE</version></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>${spring-cloud.version}</version><type>pom</type><scope>import</scope></dependency><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-alibaba-dependencies</artifactId><version>${spring-cloud-alibaba.version}</version><type>pom</type><scope>import</scope></dependency><dependency><groupId>joda-time</groupId><artifactId>joda-time</artifactId><version>${joda-time.version}</version></dependency><!-- mybatis-plus插件依赖 --><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus</artifactId><version>${mybatis.mybatis-plus}</version></dependency><!-- MySql --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>${mysql.version}</version></dependency><dependency><groupId>org.mongodb</groupId><artifactId>mongodb-driver-sync</artifactId><version>${mongodb.version}</version></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional><version>${lombok.version}</version></dependency><dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId><version>${commons-lang3.version}</version></dependency><dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId><version>3.7</version></dependency><!-- Jackson Json处理工具包 --><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>${jackson.version}</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>${druid.version}</version></dependency><dependency><groupId>commons-codec</groupId><artifactId>commons-codec</artifactId><version>1.11</version></dependency></dependencies>
</dependencyManagement><build><plugins><!-- java编译插件 --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.2</version><configuration><source>1.8</source><target>1.8</target><encoding>UTF-8</encoding></configuration></plugin></plugins>
</build>

⑵. tanhua-app-server

编辑 tanhua-app-server/pom.xml 文件:

<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!--SpringDataRedis依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency><!--lombok依赖--><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency><!--工具包--><dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId></dependency><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId></dependency><dependency><groupId>commons-codec</groupId><artifactId>commons-codec</artifactId></dependency><dependency><groupId>joda-time</groupId><artifactId>joda-time</artifactId></dependency><!--jwt依赖--><dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt</artifactId><version>0.9.1</version></dependency><!--fastdfs文件存储--><dependency><groupId>com.github.tobato</groupId><artifactId>fastdfs-client</artifactId><version>1.26.7</version><exclusions><exclusion><groupId>ch.qos.logback</groupId><artifactId>logback-classic</artifactId></exclusion></exclusions></dependency><!-- Dubbo Spring Cloud Starter--><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-dubbo</artifactId></dependency><!-- Spring Cloud Nacos Service Discovery--><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId></dependency><!-- nacos配置中心依赖支持<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId></dependency>--><!--RabbitMQ<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-amqp</artifactId></dependency>--><dependency><groupId>com.itheima</groupId><artifactId>tanhua-dubbo-interface</artifactId><version>1.0-SNAPSHOT</version></dependency><dependency><groupId>com.itheima</groupId><artifactId>tanhua-commons</artifactId><version>1.0-SNAPSHOT</version></dependency><dependency><groupId>com.itheima</groupId><artifactId>tanhua-autoconfig</artifactId><version>1.0-SNAPSHOT</version></dependency>
</dependencies><build><finalName>tanhua-app-server</finalName><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>2.3.9.RELEASE</version></plugin></plugins>
</build>

⑶. tanhua-autoconfig

编辑 tanhua-autoconfig/pom.xml 文件:

<dependencies><!--阿里云核心API--><dependency><groupId>com.aliyun</groupId><artifactId>aliyun-java-sdk-core</artifactId><version>4.5.3</version></dependency><dependency><groupId>com.aliyun</groupId><artifactId>dysmsapi20170525</artifactId><version>2.0.1</version></dependency><!--阿里云oss存储API--><dependency><groupId>com.aliyun.oss</groupId><artifactId>aliyun-sdk-oss</artifactId><version>3.10.2</version></dependency><!--阿里云人识别--><dependency><groupId>com.aliyun</groupId><artifactId>facebody20191230</artifactId><version>1.0.10</version></dependency><!--百度人脸识别API--><dependency><groupId>com.baidu.aip</groupId><artifactId>java-sdk</artifactId><version>4.8.0</version></dependency><!--springboot基础起步依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>com.easemob.im</groupId><artifactId>im-sdk-core</artifactId><version>0.2.5</version></dependency><dependency><groupId>com.aliyun</groupId><artifactId>aliyun-java-sdk-green</artifactId><version>3.6.1</version></dependency>
</dependencies>

⑷. tanhua-commons

编辑 tanhua-commons/pom.xml 文件:

<dependencies><!--工具包--><dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId></dependency><dependency><groupId>commons-codec</groupId><artifactId>commons-codec</artifactId></dependency><dependency><groupId>joda-time</groupId><artifactId>joda-time</artifactId></dependency><!--jwt依赖--><dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt</artifactId><version>0.9.1</version></dependency>
</dependencies>

⑸. tanhua-dubbo-db

编辑 tanhua-dubbo-db/pom.xml 文件:

<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus</artifactId></dependency><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>${mybatis.mybatis-plus}</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></dependency><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency><dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId></dependency><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId></dependency><dependency><groupId>commons-codec</groupId><artifactId>commons-codec</artifactId></dependency><dependency><groupId>joda-time</groupId><artifactId>joda-time</artifactId></dependency><!-- Dubbo Spring Cloud Starter --><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-dubbo</artifactId></dependency><!-- Spring Cloud Nacos Service Discovery --><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId></dependency><!-- nacos配置中心依赖支持<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId></dependency>--><dependency><groupId>com.itheima</groupId><artifactId>tanhua-dubbo-interface</artifactId><version>1.0-SNAPSHOT</version></dependency>
</dependencies><build><finalName>tanhua-dubbo-db</finalName><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>2.3.9.RELEASE</version></plugin></plugins>
</build>

⑹. tanhua-dubbo-interface

编辑 tanhua-dubbo-interface/pom.xml 文件:

<dependencies><dependency><groupId>com.itheima</groupId><artifactId>tanhua-model</artifactId><version>1.0-SNAPSHOT</version></dependency>
</dependencies>

⑺. tanhua-dubbo-mongo

编辑 tanhua-dubbo-mongo/pom.xml 文件:

<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency><dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId></dependency><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId></dependency><dependency><groupId>commons-codec</groupId><artifactId>commons-codec</artifactId></dependency><dependency><groupId>joda-time</groupId><artifactId>joda-time</artifactId></dependency><!-- Dubbo Spring Cloud Starter --><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-dubbo</artifactId></dependency><!-- Spring Cloud Nacos Service Discovery --><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId></dependency><!-- nacos配置中心依赖支持<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId></dependency>--><dependency><groupId>com.itheima</groupId><artifactId>tanhua-commons</artifactId><version>1.0-SNAPSHOT</version></dependency><dependency><groupId>com.itheima</groupId><artifactId>tanhua-dubbo-interface</artifactId><version>1.0-SNAPSHOT</version></dependency>
</dependencies><build><finalName>tanhua-dubbo-db</finalName><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>2.3.9.RELEASE</version></plugin></plugins>
</build>

⑻. tanhua-model

编辑 tanhua-model/pom.xml 文件:

<dependencies><!--SpringDataMongo起步依赖<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-mongodb</artifactId></dependency><dependency><groupId>org.mongodb</groupId><artifactId>mongodb-driver-sync</artifactId><version>${mongodb.version}</version></dependency>--><!--MybatisPlus起步依赖--><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus</artifactId></dependency>
</dependencies>

3. 引导类配置文件

新建 src/main/resources/application.yml 文件:

//启动类
@SpringBootApplication
public class AppServerApplication {public static void main(String[] args) {SpringApplication.run(AppServerApplication.class,args);}
}

4. Lombok

lombok 提供了简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 java 代码,尤其是针对pojo。

Lombok官网: https://projectlombok.org/

导入依赖:

<!--简化代码的工具包-->
<dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional>
</dependency>

安装IDEA插件:
在这里插入图片描述


5. 常用注解

  • @Data: 注解在类上;提供类所有属性的 getting 和 setting 方法,此外还提供了equals、canEqual、hashCode、toString 方法
  • @Setter: 注解在属性上;为属性提供 setting 方法
  • @Getter: 注解在属性上;为属性提供 getting 方法
  • @Slf4j: 注解在类上;为类提供一个 属性名为log 的 slf4j日志对象
  • @NoArgsConstructor: 注解在类上;为类提供一个无参的构造方法
  • @AllArgsConstructor: 注解在类上;为类提供一个全参的构造方法
  • @Builder: 使用Builder模式构建对象

⑴. @Data注解

在这里插入图片描述

⑵. @Slf4j注解

在这里插入图片描述

在这里插入图片描述


⑶. @AllArgsConstructor、@NoArgsConstructor注解

在这里插入图片描述


⑷. @Builder

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_9890.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ElasticSearch 命令总结

目录0&#xff0c;ES 与关系型数据库类比1&#xff0c;查看集群信息2&#xff0c;查看索引信息3&#xff0c;创建索引1&#xff0c;创建索引2&#xff0c;重建索引4&#xff0c;文档相关操作1&#xff0c;查看文档2&#xff0c;写入文档3&#xff0c;更新文档4&#xff0c;删除…

上海亚商投顾:A股持续调整 券商成做空主力

上海亚商投顾前言&#xff1a;无惧大盘大跌&#xff0c;解密龙虎榜资金&#xff0c;跟踪一线游资和机构资金动向&#xff0c;识别短期热点和强势个股。 市场情绪三大指数今日低开低走&#xff0c;午后均跌超2%&#xff0c;证券、房地产、煤炭等板块跌幅居前。券商股全线下挫&am…

centos8升级宝塔导致的openssl系列问题

故事的发生是这样的&#xff0c;从前有座山 这个问题很古怪&#xff0c;起先是我把宝塔面板从7.9.3升级到7.9.4&#xff0c;结果升级后宝塔弹出 libk5crypto.so.3: undefined symbol: EVP_KDF_ctrl, version OPENSSL_1_1_1b 再后来就是重启的话&#xff0c;连ssh都进不去&…

第137篇 荷兰拍卖

介绍荷兰拍卖,并通过简化版Azuki荷兰拍卖代码,讲解如何通过荷兰拍卖发售 ERC721标准的NFT。 1.荷兰拍卖 荷兰拍卖(Dutch Auction)是一种特殊的拍卖形式。 亦称“减价拍卖”,它是指拍卖标的的竞价由高到低依次递减直到第一个竞买人应价(达到或超过底价)时击槌成交的一种…

05-Java面向对象

文章目录初识面向对象面向过程&面向对象回顾方法及加深对象的创建分析创建与初始化对象构造器详解构造器-无参&#xff08;默认&#xff09;构造器-有参创建对象内存分析(简易)面向对象的三大特征封装封装的作用封装演示继承继承示例SuperSuper注意点super VS this方法重写…

Linux 虚拟地址空间

目录 1、一段代码引出一个问题 运行结果&#xff1a; 讨论&#xff1a; 2、Linux下进程虚拟地址空间分布 3、什么是虚拟地址空间&#xff1f; 4、虚拟地址出现之前&#xff1a;进程直接访问物理内存 5、再述虚拟地址空间 虚拟地址空间结构体是如何进行区域划分的呢&…

HTTP1.x协议详解和HTTP2.0笔记

http协议的作用就是指定两个web应用&#xff0c;之间的一种规则&#xff0c;各种特点&#xff0c;管道化&#xff0c;io多路复用&#xff0c;缓存&#xff0c;状态码&#xff0c;都是基于协议之间的字段&#xff0c;和io之间的调度来实现 HTTP的诞生 1989 年 3 月 CERN&#x…

Linux运维笔记[2]-宝塔面板

宝塔面板 宝塔Linux面板是提升运维效率的服务器管理软件,支持一键LAMP/LNMP/集群/监控/网站/FTP/数据库/JAVA等100多项服务器管理功能。 有30个人的专业团队研发及维护,经过200多个版本的迭代,功能全,少出错且足够安全,已获得全球百万用户认可安装。 openEuler安装宝塔面板…

ElasticSearch(九)【SpringBoot整合】

九、SpringBoot整合Elasticsearch 9.1 基本环境配置 创建一个springboot工程springboot-elasticsearch在pom.xml导入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-elasticsearch</artifac…

Kafka3.1简介及Kafka3.1部署、原理和API开发使用介绍

Kafka3.1简介及Kafka3.1部署、原理和API开发使用介绍第1章-kafka简介 1-1.消息队列简介 什么是消息队列 “消息队列”是在消息的传输过程中保存消息的容器。“消息”是在两台计算机间传送的数据单位。 英文名&#xff1a;Message Queue&#xff0c;经常缩写为MQ 可以简单理…

ElasticSearch之Kibana安装及使用

文章目录1. 安装1.11.2 上传安装包并解压1.3 生成证书1.3 修改配置1.4 修改目录拥有者1.5 启动软件1.6 使用Kibana官方介绍&#xff1a;Kibana 是一个免费且开放的用户界面&#xff0c;能够让您对 Elasticsearch 数据进行可视化&#xff0c;并让您在 Elastic Stack 中进行导航。…

[极客大挑战 2020]

[极客大挑战 2020]Roamphp1-Welcome 已进入页面&#xff0c;以为是这道题的环境不对&#xff0c;可是查看f12竟然有东西&#xff0c;然后查一下405 请求方式有误&#xff0c;比如应该用GET请求方式的资源&#xff0c;用了POST 改为post请求方式&#xff0c;出现源码&#xff…

django的settings配置详解

1.介绍 BASE_DIR 默认值&#xff1a;os.path.dirname(os.path.dirname(os.path.abspath(__file__)))。 这个是Django项目文件夹所在目录得绝对路径DEBUG DEBUG 默认值是True。 在本地开发测试环境下设置DEBUGTrue可以显示bug信息&#xff0c;便于开发者找出代码错误所在。 当…

微服务介绍以及远程调用

简介 什么是微服务 微服务是对传统单体服务进行业务拆分&#xff0c;拆分成多个独立的服务。微服务包括服务集群、服务网关、注册中心、配置中心、消息队列、分布式日志服务、系统监控和链路追踪、分布式缓存、分布式搜索、数据库、 Jenkins持续集成服务器以及Docker web自动打…

ECCV2022细粒度图像检索SEMICON代码学习记录

代码链接&#xff1a;GitHub - aassxun/SEMICON 环境配置 # 创建&激活虚拟环境 conda create -n semicon python3.8.5 conda activate semicon# 安装相关依赖包 (该 pytorch 为无 gpu 版本) conda install pytorch1.10.0 torchvision0.11.1 torchaudio0.10.0 cpuonly -c …

你还不会判定表和因果图法的概念及运用?一篇文章教会你

文章末尾给大家准备了大量福利 前言 等价类边界值分析法大家应该都比较熟悉&#xff0c;这两种方法主要针对单个输入类条件的测试&#xff0c;对于输入条件存在关联组合的情况则无法覆盖。如果需要对输入条件进行组合测试&#xff0c;那么就得好好来了解下判定表和因果图法了…

SouthMap平台版省去了安装CAD的诸多麻烦,集成在国产ZWCAD2022平台解决了此瓶颈!!!

SouthMap for ZWCAD2022OEM授权&#xff0c;提取码&#xff1a;6666https://pan.baidu.com/s/1HL-KeGg06Yu7mMFq39QS_A 我们在安装一些行业软件的时候&#xff0c;包括安装和使用过SouthMap时&#xff0c;遇到的第一个拦路虎就是安装AutoCAD&#xff01;虽然AutoCAD功能强大&a…

yolov5 create_dataloader原码及解析

创建数据集的调用关系 create_dataloader&#xff08;…&#xff09;----->LoadImagesAndLabels&#xff08;…&#xff09; create_dataloader part 1 : 参数 def create_dataloader(path,imgsz,batch_size,stride,single_clsFalse,hypNone,augmentFalse,cacheFalse,pad…

编程挑战赛第六期我带我的小侄子来了【赛题解析】

CSDN编程竞赛报名地址&#xff1a;https://edu.csdn.net/contest/detail/16 &#xff08;请不要删掉此地址&#xff09; 努力是为了让自己不平庸&#xff0c; 我被我小侄子拉来参加了CSDN编程竞赛啦&#xff01; 一、前言/背景 前情提要&#xff0c;我家小侄子今年刚上大一&am…

计算机毕业设计之java+SSM酒店客房预定管理系统

计算机毕业设计之javaSSM酒店客房预定管理系统 项目介绍 系统权限按管理员和用户这两类涉及用户划分。 (a) 管理员&#xff1a;管理员使用本系统涉到的功能主要有&#xff1a;个人中心,用户管理,客房类型管理,酒店客房管理,客房预定管理,开房记录管理,退房结账管理,系统管理等功…