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

项目(今日指数)

一 项目架构


1.1 今日指数技术选型

【1】前端技术

【2】后端技术栈

【3】整体概览

3.2 核心业务介绍

1】业务结构预览

【2】业务功能简介

1.定时任务调度服务XXL-JOB通过RestTemplate+多线程动态拉去股票接口数据,刷入数据库;
2.国内指数服务
3.板块指数服务
4.涨幅榜展示功能
5.涨停跌停数展示功能
6.成交量对比展示功能
7.个股涨停服务展示功能
8.个股详情展示功能包含分时行情、日k线、周K线图等
9.个股描述服务;
10.报表导出服务

二 后端开发环境搭建


开发工具版本要求:

2.1 数据库环境搭建

【1】表结构介绍

注意事项:后期股票相关的数据量非常庞大,表与表之间尽量不要构建外键约束(提升数据库性能),同时也为后期分库分表准备!

【2】数据导入

因为我边的CentOS7连接不上 所以在这里面 用本地(windoms)运行

数据库可视化选用 SQLyog - 64 bit mysql用的是5.7.24

5.2后端工程搭建

【1】构建stock_parent父工程

创建stock_parent  maven工程:

接下来 复制以下maven到pom.xml

 <packaging>pom</packaging><properties><!--工程构建的代码格式为UTF-8--><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><!--编译--><maven.compiler.encoding>UTF-8</maven.compiler.encoding><!--编译原文件--><maven.compiler.source>8</maven.compiler.source><!--生成的编译目录--><maven.compiler.target>8</maven.compiler.target><!--打包时跳过测试--><maven.test.skip>true</maven.test.skip><!--mybatis整合spring-boot场景依赖--><mybatis-spring-boot-starter.version>2.1.4</mybatis-spring-boot-starter.version><!--pagehelper版本--><pagehelper-spring-boot-starter.version>1.2.12</pagehelper-spring-boot-starter.version><!--mysql驱动包--><mysql-driver.version>5.1.49</mysql-driver.version><!--fastjson工具--><fastjson.version>1.2.71</fastjson.version><!--依赖的版本--><springfox-swagger2.version>2.9.2</springfox-swagger2.version><!--druid的场景依赖--><druid-spring-boot-starter.version>1.1.22</druid-spring-boot-starter.version><!--druid的核心依赖--><druid-core-version>1.2.8</druid-core-version><!--分库分表对应的版本--><sharding-jdbc.version>4.0.0-RC1</sharding-jdbc.version><!--jwt--><jjwt.version>0.9.1</jjwt.version><!--easyExcel  报表导入导出--><easyExcel.version>3.0.4</easyExcel.version><!--xxl-job--><xxl-job-core.version>2.3.0</xxl-job-core.version><!--spring-boot版本--><spring-boot.version>2.5.3</spring-boot.version><!--日期小插件--><joda-time.version>2.10.5</joda-time.version><!--google.guava--><google.guava.version>30.0-jre</google.guava.version></properties><!--定义依赖版本锁定--><dependencyManagement><dependencies><!--引入springboot依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>${spring-boot.version}</version><type>pom</type><scope>import</scope></dependency><!--引入mybatis场景依赖--><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>${mybatis-spring-boot-starter.version}</version></dependency><!--pageHelper场景依赖--><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>${pagehelper-spring-boot-starter.version}</version></dependency><!--mysql驱动包--><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>${mysql-driver.version}</version></dependency><!--shardingjdbc分库分表--><dependency><groupId>org.apache.shardingsphere</groupId><artifactId>sharding-jdbc-spring-boot-starter</artifactId><version>${sharding-jdbc.version}</version></dependency><!--json工具包--><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>${fastjson.version}</version></dependency><!--druid-boot依赖--><dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>${druid-spring-boot-starter.version}</version></dependency><!--druid core--><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>${druid-core-version}</version></dependency><!--swagger文档依赖--><dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>${springfox-swagger2.version}</version></dependency><dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger-ui</artifactId><version>${springfox-swagger2.version}</version></dependency><!--引入jwt依赖--><dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt</artifactId><version>${jjwt.version}</version></dependency><!-- 导出 excel --><dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>${easyExcel.version}</version></dependency><!--xxl-job定义任务框架支持--><dependency><groupId>com.xuxueli</groupId><artifactId>xxl-job-core</artifactId><version>${xxl-job-core.version}</version></dependency><!--时间小工具--><dependency><groupId>joda-time</groupId><artifactId>joda-time</artifactId><version>${joda-time.version}</version></dependency><!--引入google的工具集--><dependency><groupId>com.google.guava</groupId><artifactId>guava</artifactId><version>${google.guava.version}</version></dependency></dependencies></dependencyManagement><build><pluginManagement><plugins><!--Springboot核心插件--><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>${spring-boot.version}</version><configuration><excludes><!--插件运行时排除依赖--><exclude><groupId>org.springframework.boot</groupId><artifactId>spring-boot-configuration-processor</artifactId></exclude></excludes></configuration></plugin><!--打包跳过test --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-surefire-plugin</artifactId><configuration><skip>${maven.test.skip}</skip></configuration></plugin></plugins></pluginManagement></build>

注意事项:

1.打包方式:pom
2.通过dependencyManagement、pluginManagement锁定开发中的依赖和插件的版本;

接下来 删除父工程的src

【2】构建stock_backend基础工程

创建stock_parent的maven子工程stock_backend:

【2.1】引入依赖

stock_backend工程被stock_parent父工程聚合,pom配置如下:

<packaging>jar</packaging><artifactId>stock_backend</artifactId><properties><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target></properties><dependencies><!-- 基本依赖   web的场景依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!--日志--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-aop</artifactId></dependency><!--mysql--><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></dependency><!--单元测试--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><!--lombok--><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency><!--mybatis整合spring-boot--><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId></dependency><!--分页--><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId></dependency><!--druid--><dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId></dependency><!--配置提示--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-configuration-processor</artifactId><optional>true</optional></dependency><!--时间小工具--><dependency><groupId>joda-time</groupId><artifactId>joda-time</artifactId></dependency></dependencies><build><!--打包名称--><finalName>${project.artifactId}</finalName><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin><!-- 打包跳过test --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-surefire-plugin</artifactId></plugin></plugins></build>
【2.2】创建公共包结构

找到资料中的公共包结构

复制com

进入到项目的物理路径(IntelliJ IDEA 2020.1.3 x64)

不同的idea进行项目物理环境的选项不同

把刚才复制过来的com复制到main/java下面

这样就能得到目录结构(里面为空目录) 这样做的目的是不能一次次创建目录结构

【2.3】快速生成yml和main启动类的插件JBL SpringbootAppGen

安装

使用

生成效果

【2.4】配置yml
# web定义
server:port: 8081   #指定当前端口号spring:# 配置mysql数据源datasource:druid:username: rootpassword: rooturl: jdbc:mysql://127.0.0.1:3306/stock_db?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&useSSL=false&serverTimezone=Asia/Shanghaidriver-class-name: com.mysql.jdbc.Driver# 初始化时建立物理连接的个数。初始化发生在显示调用 init 方法,或者第一次 getConnection 时initialSize: 6# 最小连接池数量minIdle: 2# 最大连接池数量maxActive: 20# 获取连接时最大等待时间,单位毫秒。配置了 maxWait 之后,缺省启用公平锁,# 并发效率会有所下降,如果需要可以通过配置 useUnfairLock 属性为 true 使用非公平锁。maxWait: 60000# 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒timeBetweenEvictionRunsMillis: 60000# 配置一个连接在池中最小生存的时间,单位是毫秒minEvictableIdleTimeMillis: 300000# 用来检测连接是否有效的 sql 因数据库方言而差, 例如 oracle 应该写成 SELECT 1 FROM DUALvalidationQuery: SELECT 1 FROM DUAL# 建议配置为 true,不影响性能,并且保证安全性。申请连接的时候检测,# 如果空闲时间大于 timeBetweenEvictionRunsMillis,执行 validationQuery 检测连接是否有效。testWhileIdle: true# 申请连接时执行 validationQuery 检测连接是否有效,做了这个配置会降低性能。testOnBorrow: false# 归还连接时执行 validationQuery 检测连接是否有效,做了这个配置会降低性能。testOnReturn: false# 是否自动回收超时连接poolPreparedStatements: truemaxPoolPreparedStatementPerConnectionSize: 20# 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙filters: stat,wall# 通过connectProperties属性来打开mergeSql功能;慢SQL记录connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000# 配置mybatis
mybatis:type-aliases-package: com.itheima.stock.pojo   #指定的包下类名取别名mapper-locations: classpath:mapper/*.xmlconfiguration:map-underscore-to-camel-case: true   #开启驼峰映射cache-enabled: false #使全局的映射器启用或禁用缓存。lazy-loading-enabled: false #全局启用或禁用延迟加载。当禁用时,所有关联对象都会即时加载。aggressive-lazy-loading: true #当启用时,有延迟加载属性的对象在被调用时将会完全加载任意属性。否则,每种属性将会按需要加载。# pagehelper配置
pagehelper:helper-dialect: mysql #指定分页数据库类型(方言)reasonable: true #合理查询超过最大也,则查询最后一页support-methods-arguments: true # 支持通过Mapper接口参数来传递分页参数,默认falseparams: pacount=countSql # POJO或者Map中发现了countSql属性,就会作为count参数使用returnPageInfo: check # always总是返回PageInfo类型,check检查返回类型是否为PageInfo,none返回Page

因为上面配置了少了一个mapper 所以我们现 在创建这个包

注意:

第一点

url: jdbc:mysql://127.0.0.1:3306/stock_db?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&useSSL=false&serverTimezone=Asia/Shanghai

这里面的url 如果是连接的是linux的 刚要写成Linux上的Ip 如果连接的是本地(win)则url 刚要写成

jdbc:mysql:///数据库名称或jdbc:mysql://localhost:3306/数据库名称jdbc:mysql://127.0.0.1:3306/数据库名称

第二点 本项目用到的mysql为5.7 不是8.0 所以把

driver-class-name: com.mysql.cj.jdbc.Driver   把cj删除

补充知识

driver-class-name: com.mysql.cj.jdbc.Driver   mysql8.0
driver-class-name: com.mysql.jdbc.Driver    mysql5.7

第三点 接口扫描

IntelliJ IDEA 2020.1.3 x64版本复制路径写法

视频中的idea版本复制路径写法

然后把复制过来的路径给放在下图所示

【2.5】定义main启动类
package com.itheima.stock;import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
@MapperScan("com.itheima.stock.mapper")
public class StockApp {public static void main(String[] args) {SpringApplication.run(StockApp.class, args);}
}
【2.6】定义web测试接口
package com.itheima.stock.controller;import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
@RequestMapping("/api")
public class UserController {@GetMapping("/test")public String getName(){return "itheima";}}

启动:

注意:这里面启动时 要注意你连接的mysql是linux的还是本地的 要注意他们的账户和密码否正确

启动成功

在浏览器上测试能够获取到

在做接口调试的时候 在这里面建议用postman 因为用浏览器只能用到git

演示使用课程资料中的------股票API接口测试.json

至此,工程基础环境搭建完毕!

5.3 快速构建mybatis业务开发环境

安装插件mybatisX工具

我们可借助mybatisX工具生成基础代码,步骤如下:

第一步:通过idea自带的database组件连接数据库:

全选11张表 点击第一张表 按住Shist 在点击最后一张表

右击

第二步:配置pojo实体类选项

2】集成mybatis的工程结构

【3】环境整体测试

目的:我们通过一个简单的web接口访问数据库,验证工程搭建情况
接口功能说明:查询所有上市公司主营业务数据
接口url:/api/quot/stock/business/all
【3.1】定义mapper接口方法

StockBusinessMapper接口和xml定义查询所有股票业务信息的接口方法:

   List<StockBusiness> findall();

  <select id="findall" resultMap="BaseResultMap">select<include refid="Base_Column_List" />from stock_business</select>
【3.2】定义服务接口及实现

定义服务接口:

package com.itheima.stock.service;import com.itheima.stock.pojo.StockBusiness;
import java.util.List;/*定义股票服务接口*/
public interface StockService {/*查询所有主营业务信息*/List<StockBusiness> findAll();}

定义服务接口实现:

Alt+Enter

package com.itheima.stock.service.impl;import com.itheima.stock.mapper.StockBusinessMapper;
import com.itheima.stock.pojo.StockBusiness;
import com.itheima.stock.service.StockService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;import java.util.List;@Service("stockService")
public class StockServiceImpl implements StockService {@Autowiredprivate StockBusinessMapper stockBusinessMapper;@Overridepublic List<StockBusiness> findAll() {return stockBusinessMapper.findAll();}
}
【3.3】定义web访问接口

package com.itheima.stock.controller;import com.itheima.stock.pojo.StockBusiness;
import com.itheima.stock.service.StockService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import java.util.List;@RestController
@RequestMapping("/api/quot")
public class StockController {@Autowiredprivate StockService stockService;@GetMapping("/stock/business/all")public List<StockBusiness> findAllBusiness(){return stockService.findAll();}}

【3.4】启动项目测试

成功启动

至此,后台基本开发环境构建完毕!

6.前端开发环境搭建


6.1 前端环境准备

【1】node安装

前端node版本:

详见资料:

相关文章:

项目(今日指数)

一 项目架构1.1 今日指数技术选型【1】前端技术【2】后端技术栈【3】整体概览3.2 核心业务介绍1】业务结构预览【2】业务功能简介1.定时任务调度服务XXL-JOB通过RestTemplate多线程动态拉去股票接口数据&#xff0c;刷入数据库&#xff1b; 2.国内指数服务 3.板块指数服务 4.涨…...

适配器模式(Adapter Pattern)

1.什么是适配器模式&#xff1f; 适配器模式&#xff08;Adapter Pattern&#xff09;是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式&#xff0c;它结合了两个独立接口的功能。 这种模式涉及到一个单一的类&#xff0c;该类负责加入独立的或不兼容的接…...

网易一面:select分页要调优100倍,说说你的思路? (内含Mysql的36军规)

背景说明&#xff1a; Mysql调优&#xff0c;是大家日常常见的调优工作。所以Mysql调优是一个非常、非常核心的面试知识点。 在40岁老架构师 尼恩的读者交流群(50)中&#xff0c;其相关面试题是一个非常、非常高频的交流话题。 近段时间&#xff0c;有小伙伴面试网易&#x…...

二叉树的遍历 (2023-02-11)

二叉树的遍历 二叉树的遍历分为&#xff1a;先序遍历、中序遍历、后序遍历和层次遍历。 1.先序遍历&#xff08;根左右&#xff09; &#xff08;1&#xff09;访问根节点 &#xff08;2&#xff09;左子树按根左右遍历 &#xff08;3&#xff09;右子树按根左右遍历 2.中序…...

string的深浅拷贝问题

深浅拷贝问题引入浅拷贝深拷贝总结问题引入 对于一个普通的string类&#xff1a; class String { public:String(const char* str ""){//构造函数if (nullptr str)str "";_str new char[strlen(str) 1];strcpy(_str, str);}~String(){//析构函数if …...

C++中的万能头文件

目录一、什么是万能头文件&#xff1f;二、源码三、编译器找不到 bits/stdc.h一、什么是万能头文件&#xff1f; C的万能头文件是&#xff1a; #include <bits/stdc.h>它是一个包含了每一个标准库的头文件。 优点&#xff1a; 在算法竞赛中节约时间&#xff1b;减少了…...

Java 8 Lambda 表达式 Stream

lambda表达式和Stream流是JDK8新增加的新特性&#xff0c;研究本文内容或者运行本文中的demo示例必须安装并使用JDK8以上的JDK版本。demo地址&#xff1a;https://gitee.com/huannzi/bigdataframework/tree/master/src/main/java/com/orkasgb/java 文章目录1、什么是Lambda表达…...

【VictoriaMetrics】VictoriaMetrics单机版部署(二进制版)

1、下载安装包git路径,本文基于1.87.1版本 进入git地址 :https://github.com/VictoriaMetrics/VictoriaMetrics/tags 2、下载其中linux下的 amd64架构...

SCI论文阅读-使用基于图像的机器学习模型对FTIR光谱进行功能组识别

期刊&#xff1a; Analytical Chemistry中科院最新分区&#xff08;2022年12月最新版&#xff09;&#xff1a;1区(TOP)影响因子&#xff08;2021-2022&#xff09;&#xff1a;8.008第一作者&#xff1a;Abigail A. Enders通讯作者&#xff1a;Heather C. Allen 原文链接&…...

双11大型互动游戏“喵果总动员” 质量保障方案总结

推荐语&#xff1a;互动游戏是一个系统化工程&#xff0c;在笔者的“喵果总动员”质量方案中&#xff0c;可以看到为保障用户体验&#xff0c;我们在各个难点的解决方案&#xff0c; 例如&#xff1a;用线上压测能力支持业务及时调整各服务容量、通过强化学习覆盖游戏行业的测试…...

剑指Offer专项突击版题解一

1.整数除法 思想&#xff1a;不能用除法、乘法、取余&#xff0c;那么可以用减法完成除法的操作&#xff0c;但是在减去被除数的时候&#xff0c;可以考虑被除数<<1扩大一倍在进行减少&#xff0c;加快减的速率。 2.二进制加法 思想&#xff1a;从末尾向前遍历&#xff0…...

Django框架之模型

模型 当前项目的开发, 都是数据驱动的。 以下为书籍信息管理的数据关系&#xff1a;书籍和人物是 &#xff1a;一对多关系 要先分析出项目中所需要的数据, 然后设计数据库表. 书籍信息表 字段名字段类型字段说明idAutoField主键nameCharField书名 idname1西游记2三国演义…...

OSACN-Net:使用深度学习和Gabor心电图信号谱图进行睡眠呼吸暂停分类

这篇文章在之前读过一次&#xff0c;其主要的思路就是利用Gabor变换&#xff0c;将心电信号转变为光谱图进行识别研究&#xff0c;总体来讲&#xff0c;不同于其他的利用心电信号分类的算法&#xff0c;该论文将心电信号转换为光谱图&#xff0c;在此基础上&#xff0c;分类问题…...

使用开源实时监控系统 HertzBeat 5分钟搞定 Mysql 数据库监控告警

使用开源实时监控系统 HertzBeat 对 Mysql 数据库监控告警实践&#xff0c;5分钟搞定&#xff01; Mysql 数据库介绍 MySQL是一个开源关系型数据库管理系统&#xff0c;由瑞典MySQL AB 公司开发&#xff0c;属于 Oracle 旗下产品。MySQL 是最流行的开源关系型数据库管理系统之…...

插件 sortablejs:HTML元素可拖动排序

插件 sortablejs 用于可重新排序拖放列表的JavaScript库&#xff1b;关键链接&#xff1a;npm 地址 Github 地址 安装 npm i sortablejs引入 import Sortable from "sortablejs"HTML <ul id"items"><li>item 1</li><li>item …...

libVLC 视频裁剪

作者: 一去、二三里 个人微信号: iwaleon 微信公众号: 高效程序员 裁剪是指去除图像的外部部分,也就是从图像的左,右,顶部和/或底部移除一些东西。通常在视频中,裁剪是一种通过剪切不需要的部分来改变宽高比的特殊方式。 尤其是在做视频墙时,往往需要处理多个 vlc 实例…...

LAMP架构介绍及配置

LAMP架构介绍及配置一、LAMP简介与概述1、LAMP平台概述2、LAMP各组件主要作用3、构建LAMP平台二、编译安装Apache htpd服务1、将所需软件包上传到/opt目录下2、解压以下文件3、移动两个文件并改名4、安装所需工具5、编译安装6、做软连接&#xff0c;使文件可执行7、优化配置文件…...

Android图形显示流程简介

注&#xff1a;本文缩写说明本文代码都是基于Android S一、概述本文将对从App画出一帧画面到这帧画面是如何到达屏幕并最终被人眼看到的这一过程进行简要分析&#xff0c;并将这其中涉及到的各个流程与其在systrace上的体现对应起来&#xff0c;期望最终能够让读者对Android系统…...

4.5.3 ArrayList

文章目录1.特点2. 练习:ArrayList测试3.ArrayList扩容1.特点 存在java.util包中内部是用数组结构存放数据,封装数组的操作,每个对象都有下标内部数组默认的初始容量是10,如果不够会以1.5倍的容量增长查询快,增删数据效率会低 2. 练习:ArrayList测试 package partThree;import…...

十二、Linux文件 - fseek函数讲解

目录 一、fseek函数讲解 二、fseek函数实战 一、fseek函数讲解 重定向文件内部的指针 注&#xff1a;光标 ---- 文件内部的指针 函数原型&#xff1a; int fseek(FILE *stream,long offset,int framewhere) 参数&#xff1a; stream&#xff1a;文件指针offset&#xff1a;…...

label-studio的使用教程(导入本地路径)

文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...

DockerHub与私有镜像仓库在容器化中的应用与管理

哈喽&#xff0c;大家好&#xff0c;我是左手python&#xff01; Docker Hub的应用与管理 Docker Hub的基本概念与使用方法 Docker Hub是Docker官方提供的一个公共镜像仓库&#xff0c;用户可以在其中找到各种操作系统、软件和应用的镜像。开发者可以通过Docker Hub轻松获取所…...

【入坑系列】TiDB 强制索引在不同库下不生效问题

文章目录 背景SQL 优化情况线上SQL运行情况分析怀疑1:执行计划绑定问题?尝试:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 写法Hint 不生效问题排查解决参考背景 项目中使用 TiDB 数据库,并对 SQL 进行优化了,添加了强制索引。 UAT 环境已经生效,但 PROD 环境强制索…...

python/java环境配置

环境变量放一起 python&#xff1a; 1.首先下载Python Python下载地址&#xff1a;Download Python | Python.org downloads ---windows -- 64 2.安装Python 下面两个&#xff0c;然后自定义&#xff0c;全选 可以把前4个选上 3.环境配置 1&#xff09;搜高级系统设置 2…...

dedecms 织梦自定义表单留言增加ajax验证码功能

增加ajax功能模块&#xff0c;用户不点击提交按钮&#xff0c;只要输入框失去焦点&#xff0c;就会提前提示验证码是否正确。 一&#xff0c;模板上增加验证码 <input name"vdcode"id"vdcode" placeholder"请输入验证码" type"text&quo…...

【C语言练习】080. 使用C语言实现简单的数据库操作

080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...

拉力测试cuda pytorch 把 4070显卡拉满

import torch import timedef stress_test_gpu(matrix_size16384, duration300):"""对GPU进行压力测试&#xff0c;通过持续的矩阵乘法来最大化GPU利用率参数:matrix_size: 矩阵维度大小&#xff0c;增大可提高计算复杂度duration: 测试持续时间&#xff08;秒&…...

网络编程(UDP编程)

思维导图 UDP基础编程&#xff08;单播&#xff09; 1.流程图 服务器&#xff1a;短信的接收方 创建套接字 (socket)-----------------------------------------》有手机指定网络信息-----------------------------------------------》有号码绑定套接字 (bind)--------------…...

AGain DB和倍数增益的关系

我在设置一款索尼CMOS芯片时&#xff0c;Again增益0db变化为6DB&#xff0c;画面的变化只有2倍DN的增益&#xff0c;比如10变为20。 这与dB和线性增益的关系以及传感器处理流程有关。以下是具体原因分析&#xff1a; 1. dB与线性增益的换算关系 6dB对应的理论线性增益应为&…...

R语言速释制剂QBD解决方案之三

本文是《Quality by Design for ANDAs: An Example for Immediate-Release Dosage Forms》第一个处方的R语言解决方案。 第一个处方研究评估原料药粒径分布、MCC/Lactose比例、崩解剂用量对制剂CQAs的影响。 第二处方研究用于理解颗粒外加硬脂酸镁和滑石粉对片剂质量和可生产…...