- 博客(35)
- 资源 (2)
- 收藏
- 关注
原创 golang context包详解
Context 是Go 语言独有功能之一,用于上下文控制,可以在 goroutine 中进行传递。在 Go context 用法中,我们常常将其与 select 关键字结合使用,用于监听其是否结束、取消等context接口} }Deadline:获取当前 context 的截止时间。Done:获取一个只读的 channel,类型为结构体。可用于识别当前 channel 是否已经被关闭,其原因可能是到期,也可能是被取消了。Err:获取当前 context 被关闭的原因。
2022-10-31 16:54:19 359 1
原创 beego项目中的jwt使用方法
当我们跳转到一个页面,或者说我们过了一会重新打开这个网页,我们只需要验证tonken是否存在,存在就能正常访问,不存在就需要重新登录。其中_, err := jwtutils.GetTokenByAuthorization(auth)就是token的一个验证。在用户登录的时候我们就要生成token,并且把这个token返回给前端。当返回的token没问题是我们就可以访问这个借口了。生成之后返回给前段,怎么使用呢这个时候就需要了。首先来说,什么时候生成token。首先我们要生成token。
2022-09-30 11:03:57 710
原创 本地存储minio的安装与使用
最近学习了阿里云的oss存储,也了解到了minio存储,最近也在联系一个项目,就想着把使用oss换成了本地的minio,使用go语言写的。进来之后要再bukets创建实例,就比如我创建的gliot。输入就可以启动了,启动之后我们登录到界面。我资源里有个就是只需要解压就好了。写的有什么问题,大家可以出来。创建好之后就可以使用了。希望可以对大家有所帮助。minio的安装方式。
2022-09-30 10:36:28 454
原创 Java 构建websocket客户端,构建wss客户端,使用wss连接,并发送数据到服务器端,接收服务器端消息
Java 构建websocket客户端,构建wss客户端,使用wss连接,并发送数据到服务器端,接收服务器端消息。
2022-09-29 16:22:06 4509
原创 go websockets客户端不断接收服务器端消息
go websockets客户端不断接收服务器端消息。我这里的连接是wss,ws的在我的其他文章写了。首先是要连接websockests客户端。
2022-09-29 16:11:54 362
原创 go使用wss连接websocket服务器端,并发送数据,和接收服务器端不断传进来的消息
连接格式为:wss://127.0.0.1:8100。使用wss连接而不是ws连接客户端。
2022-09-29 16:05:32 2785
原创 go的slice详解
一个slice是一个数组某个部分的引用。在内存中,它是一个包含3个域的结构体:指向slice中第一个元素的指针,slice的长度,以及slice的容量。长度是下标操作的上界,如x[i]中i必须小于长度。容量是分割操作的上界,如x[i:j]中j不能大于容量。数组的slice并不会实际复制一份数据,它只是创建一个新的数据结构,包含了另外的一个指针,一个长度和一个容量数据。如同分割一个字符串,分割数组也不涉及复制操作:它只是新建了一个结构来放置一个不同的指针,长度和容量。在例子中,对[]int{2,3,5,7
2022-07-12 15:41:05 690
原创 公司中怎么使用beego搭建项目(一)
新建项目大家在自己的项目目录下使用bee new XXXX命令新建项目项目格式如图:我为大家介绍下各个包下是干啥的main:程序的入口,就是一个房子的大门,config:配置文件,房子的各个结构的配置controllers:就是接口类似于我们房子里的各个小房间custom:一般用来存放配置文件,我建议大家使用ini文件来设置配置文件,比较高效log:主要是日志功能帮助我们记录程序的问题models:一般存放的就是与controllers对应的对数据库进行增删改查的操作,说的简单一点,如果
2022-05-19 10:04:34 1490
原创 beego连接MySQL数据库对数据库进行增删改查
首先来说其实前面讲配置文件的时候讲过了怎么连接数据库并操作,在这详细说下连接数据库首先读取配置文件初始化数据库连接// InitDatabase Mysql initfunc InitDatabase(url, username, password, dbname, timezone string, name string) error { dsn := username + ":" + password + "@(" + url + ")/" + dbname + "?charset=utf8"
2022-05-06 11:30:10 869
原创 使用beego框架,高效读取配置文件
公司的项目一般都是这种,然后config是接收配置文件,custom的ini文件是配置文件,config如下`package configimport ( "fmt" "os" "github.com/tobyzxj/uuid" "github.com/unknwon/com" "gopkg.in/ini.v1")type Config struct { AppName string `ini:"name"` // app name UU.
2022-05-06 11:20:24 704
原创 go切片的底层详解与原理
切片是go中比较特殊的的数据结构,这种数据结构更便于使用和管理数据集合简单来说,切片就是一种简化版的动态数组。大家记得时候可以把切片当做动态数组理解,因为动态数组的长度不固定,所以切片的长度自然也就不能是类型的组成部分了。切片是围绕动态数组的概念构建的,是对数组的抽象。数组虽然有适用的地方,但是数组的类型和操作都不够灵活,因此在 Go 代码中数组使用的并不是很多,而切片则使用的相当广泛,理解切片的原理和用法相当重要。由切片的结构定义可知,切片的结构由三个信息组成:指针,指向底层数组中切片指定的开始位置
2022-04-06 09:24:26 619
原创 Redis面试题
.Redis 是一个基于内存的高性能key-value数据库。2.Redis相比memcached有哪些优势:memcached所有的值均是简单的字符串,redis作为其替代者,支持更为丰富的数据类型redis的速度比memcached快很多redis可以持久化其数据3.Redis是单线程redis利用队列技术将并发访问变为串行访问,消除了传统数据库串行控制的开销4.Reids常用5种数据类型string,list,set,sorted set,hash6.Reids6种淘汰策略:noe
2022-03-30 16:06:57 144
原创 Java基础学习方法,方法重载,递归,面向对象,类,封装,继承,super,方法重写,多态,抽象类,抽象方法,接口
方法方法是用来完成功能的代码片段方法是有方法头加方法体构成的即//public 修饰符//void 为空返回值类型,可以为 int 等类型//hello方法名 //string a 传入的参数类型及名称public void hello(string a){} 方法的重载放的重载是方法名称相同,参数不同,返回值类型可以相同也可以不同public class Demo { public static void main(String[] args) { s
2022-03-30 11:44:31 499
原创 cron定时任务
Cron 表达式,是应用在 Unix 和类 Unix 操作系统之中,让脚本、任务定时进行周期性重复的执行。Cron 表达式有差丰富的表达能力,能够适应各种时间表达需求。本页整理了一些基本语法和常用样例具体https://zhuanlan.zhihu.com/p/400657663go中实现func CronInit() { time.Sleep(30 * time.Second) hello() go func() { c := cron.New() c.AddFunc("0 5,35
2022-03-29 15:44:14 368
原创 go基础 数据类型转换 strconv包
//Parse类函数用于转换字符串为给定类型的值:ParseBool()、ParseFloat()、ParseInt()、ParseUint()。b, err := strconv.ParseBool("true")f, err := strconv.ParseFloat("3.1415", 64)i, err := strconv.ParseInt("-2", 10, 64)u, err := strconv.ParseUint("2", 10, 64)//Format系列函数实现了将给定类型数
2022-03-29 15:38:16 96
原创 Spring Boot常用注解
1、@SpringBootApplication替代 @SpringBootConfiguration、@EnableAutoConfiguration、@ComponentScan2、@ImportAutoConfiguration导入配置类,一般做测试的时候使用,正常优先使用@EnableAutoConfiguration3、@SpringBootConfiguration替代@Configuration4、@ImportResource将资源导入容器5、@PropertySource
2022-02-18 09:25:09 256
原创 JWT全面解读、详细使用步骤
什么是JWTJson web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519).该token被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景。JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外的其它业务逻辑所必须的声明信息,该token也可直接被用于认证,也可被加密。JWT的构成第一部分我们称它为头部(header),第二部分我们称其为载荷(paylo
2022-02-17 09:53:51 222
原创 Redis知识点
目录学习计划学习笔记百问redis在什么情况下会变慢?单线程的redis,如何知道要运行定时任务?学习计划Redis的介绍、优缺点、使用场景Linux中的安装常用命令Redis各个数据类型及其使用场景Redis字符串(String)Redis哈希(Hash)Redis列表(List)Redis集合(Set)Redis有序集合(sorted set)Redis - 瑞士军刀慢查询pipeline流水线发布订阅bitmapHyperLogLog算法GEORedis持
2022-02-16 17:04:43 308
原创 Redis面试题
1.Redis 是一个基于内存的高性能key-value数据库。2.Redis相比memcached有哪些优势:memcached所有的值均是简单的字符串,redis作为其替代者,支持更为丰富的数据类型redis的速度比memcached快很多redis可以持久化其数据3.Redis是单线程redis利用队列技术将并发访问变为串行访问,消除了传统数据库串行控制的开销4.Reids常用5种数据类型string,list,set,sorted set,hash6.Reids6种淘汰策略:no
2022-02-16 17:03:52 444
原创 k近邻算法分类
k近邻算法分类X= l[[‘PM2.5’,‘PM10’,‘CO’,‘NO2’,‘O3’,‘SO2’]] #选取列名为x1,x2,x3的列作为Xy= l[[‘AQI’]] #选取列名为y的作为Y.from sklearn.neighbors import KNeighborsRegressorfrom sklearn.metrics import r2_score,mean_absolute_errorimport numpy as npX_train=X.valuesy_train=y.
2022-02-16 16:59:36 730
原创 Python神经网络模型和预测
from sklearn.neural_network import MLPRegressorhidden_layer_sizes :隐含层尺寸,例如hidden_layer_size=(30,20,20)activation:激活函数,常用"identity",“logistic”,“tanh”,“relu”solver:模型优化的方法 ,常用三种:"lbfgs"牛顿法,适合小样本、“sgd”,随机梯度下降法,、"adam"adaptive自适应动量法(默认方法),适合大样本alpha:正则
2022-02-16 16:56:52 2580
原创 随机森林模型训练和预测
from sklearn.ensemble import RandomForestRegressorfrom sklearn.metrics import mean_absolute_errorfrom sklearn.model_selection import train_test_splitmodel =RandomForestRegressor(n_estimators=2900,min_samples_leaf=1,max_features="sqrt")X_train,X_test,
2022-02-16 16:54:17 1469
原创 FFmpeg 任意格式转mp4格式
命令格式:ffmpeg -i [输入文件名] [参数选项] -f [格式] [输出文件]1、参数选项:(1) -an: 去掉音频(2) -acodec: 音频选项, 一般后面加copy表示拷贝(3) -vcodec:视频选项,一般后面加copy表示拷贝2、格式:(1) h264: 表示输出的是h264的视频裸流(2) mp4: 表示输出的是mp4的视频(3)mpegts: 表示ts视频流刚开始百度的`ffmpeg -i "车载录像20150320.dav" -vcodec copy -
2022-02-14 13:40:19 11869
原创 Redis学习心得体会
Redis:高性能的keyvalue数据库,分布式数据库特点:是非关系性数据库,是基于内存的,分布式的,可选持久性的key-value键值对的存储数据库有五种数据结构,String字符串,Hashlist集合set集合sortedset集合,因为我也是刚接触项目,所以对于Redis的哨兵等还不是很了解,以后我懂了我会更新的...
2022-02-11 09:49:36 865
原创 http/HTTPS协议
http协议:超文本传输协议是一种无状态协议对于http我主要通过书进行学习的安全性:通信使用的是明文,不加密,内容会被窃听不验证通信方身份,可能遭遇伪装无法验证报文的完整性,内容可能遭到篡改。HTTP+加密+认证+完整性约束=HTTPShttps是披着ssl协议的http大家可以看下...
2022-02-11 09:44:20 1060
原创 go后端开发学习路线
本人从2021年开始学习go学习了3个月的学习之路,供大家参考一下这个是我自己画的,学的东西也都是公司大佬安排的,仅供大家参考,大家学习的时候要有目的性学习,带着疑问去学习,例如这东西是什么,干什么用,有没有和他一样的,为什么选他,他有啥优缺点...
2022-02-11 09:31:42 929
原创 Git学习
最近整理下自己2个多月的学习go的心得,本人小白,还在实习,加油git学习之路1,什么是GitGit(读音为/gɪt/)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 [1] 也是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。我自己的理解就是Git是代码管理工具,就是用来管理代码的东西2,Git的大致流程以前手写的笔记,很清晰的3当时写的心得1,四个工作区域:工作区 Working Director
2022-02-11 09:27:39 130
原创 Excel导入数据到postgres数据库
使用Excel导入数据到postgres1.首先根据Excel的字段在postgres里面创建表创建表大家应该都会,网上都有2,你要把Excel存入为CSV文件把CSV文件用记事本打开CSV文件utf-8类型最后使用copy recent_geo from 'C:\recent_geo.csv' WITH CSV HEADER;即copy 表名 from 文件位置 with CSV header,就成功了...
2022-02-10 10:04:23 1393
原创 go 创建Excel表格,设置表格格式
第一种方法:使用"github.com/tealeg/xlsx"库type DeviceRealTimeCityGeo struct { Id string Name string At string sex string }func createExcel(records []*DeviceRealTimeCityGeo) error { var file *xlsx.File var sheet *xlsx.
2022-02-10 09:49:33 1589
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人