研究生日常技术
日常踩坑
小吴同学GOGOGO
一只怀揣梦想的阿柴;五角场某高校同学、某大厂打工人;兴趣方向:OLAP基础架构、大数据存储和计算引擎;「计算机小屋」
展开
-
0到1帮你入门 强大的 curl 工具
curl命令(client url客户端url请求工具)是一个利用URL规则在命令行下工作的文件传输工具。它支持文件的上传和下载,所以是综合传输工具,但按传统,习惯称curl为下载工具。作为一款强力工具,curl支持包括HTTP、HTTPS、ftp等众多协议,还支持POST、cookies、认证、从指定偏移处下载部分文件、用户代理字符串、限速、文件大小、进度条等特征。做网页处理流程和数据检索自动化,curl可以祝一臂之力。原创 2023-12-15 12:22:39 · 487 阅读 · 0 评论 -
JAVA代码规范-阿里
java 代码规范原创 2023-02-17 13:53:37 · 166 阅读 · 0 评论 -
纯手工模拟Vue中的数据劫持和代理
通过Object.defineProperty() 函数实现了数据的劫持和代理原创 2023-01-20 12:13:48 · 782 阅读 · 0 评论 -
详解微信小程序开发中的“数据绑定”和代码样例
微信小程序开发原创 2023-01-19 14:24:56 · 1610 阅读 · 0 评论 -
RPC框架-thrift小试牛刀
thrift 小试牛刀原创 2022-10-13 21:44:54 · 547 阅读 · 0 评论 -
google的轻量级DI框架guice的简单示例代码
guice 简单使用原创 2022-08-04 18:19:29 · 220 阅读 · 0 评论 -
Java 的多线程单例中,为啥需要双重校验锁?
Java 多线程单例的双重校验锁原创 2022-07-19 23:51:59 · 292 阅读 · 0 评论 -
xshell 连接 wsl (首次)
装上ubuntu wsl之后,如果想要用xshell连接wsl并传输文件的话,将会非常方便,所以本文力求解决xshell连接wsl的问题。1 写在ssh serversudo apt-get remove openssh-server2 安装ssh serversudo apt-get install openssh-server3 修改ssh server配置sudo vim /etc/ssh/sshd_config需要修改以下几项配置:Port 2222 #默认原创 2022-05-09 02:18:38 · 4262 阅读 · 4 评论 -
postgresql将查询到的json字符串转为jsonb格式并且转为Integer格式进行计算的语法
问题:如果你存在数据库中的某个字段的值为varchar格式,不过是json标准字符串格式,比如:{"zLen":"2438.4","yLen":"15049.9996086053","xLen":"26101.272018522"}, 那么,在查询的时候就可以转换为Jsonb格式。解决:1、首先查看是否支持json格式:SELECT '""'::json;如果结果出现json,那么就表示OK2、查询并转换语句:SELECT cast(bounding_box as jsonb) ->&g原创 2021-09-09 21:48:36 · 6809 阅读 · 0 评论 -
基于rocksdb的开发API分享
rocksdb是一个基于LSM-Tree的kv存储引擎,通过官方api文档,可以进行一些开发,其网址为:https://rocksdb.org.cn/doc/Basic-Operations.html原创 2021-08-13 16:09:21 · 560 阅读 · 0 评论 -
基于C语言和利用visual studio 2017 开发postgre-extension 的一波操作【实际体验了酸爽之后的分享】
写在前面:因为科研需要,需要使用vs来开发一个postgre-extension,查了很多了资料,翻遍了postgresql的官方文档,只了解到有关开发extension 的一些C语言相关知识,不过对于具体操作细节还是知之甚少,后来通过参考大神的博文,和很多次心累的尝试之后,终于实现了一个小的demo,现在分享出来给有需要的童鞋们,希望可以避免大家走太多的弯路。环境准备 : visual studio 2017, C/C++开发环境(VS自带即可),postgresql 9.6, navicat(psql原创 2021-07-21 17:15:42 · 389 阅读 · 1 评论 -
基于pyqt5和qtdesigner生成系统界面并建立信号和槽的演示demo
基于pyqt5和qtdesigner生成系统界面并建立信号和槽的演示demo1、环境:pycharm, qtdesiner, pyqt5, pyuic2、过程如下所示:2.1 建立普通的python项目,然后导入pyqt, pyqt5-tools,然后再Pycharm中添加qtdesigner和pyuic两个外部工具包。2.2 设计界面右击项目,选择external tools, qtdesigner,即可进入界面设计页面,选择默认的Main Window即可,然后拖拽控件到主界面上,为每个控件定原创 2021-07-15 14:10:30 · 651 阅读 · 1 评论 -
Ubuntu 安装docker官方教程
点这里,查看官方教程原创 2021-07-06 21:24:47 · 124 阅读 · 0 评论 -
数据库顶会
SOSP: Symposium on Operating Systems PrinciplesICDE:35th IEEE International Conference on Data Engineering (ICDE 2019)OSDI:Operating Systems Design and ImplementationSIGMOD: Special Interest Group on Management of DataVLDB:Very Large Data Bases (VLDB)原创 2021-06-25 16:38:23 · 435 阅读 · 0 评论 -
IEEE会议模板
此为常用的IEEE会议模板,可用于日常论文书写,打个链接,备忘:IEEE会议模板原创 2021-06-25 14:52:09 · 989 阅读 · 0 评论 -
React前端开发所需技术
1、搭建本地react脚手架:React脚手架官方文档链接2、react 路由:react-route-dom或者参考:react-route3、配合UI设计组件:ant-design4、和后台交互的工具http库 : axios原创 2021-04-16 10:42:55 · 190 阅读 · 0 评论 -
分享一个包含一些前端技术官方文档的网页-印记中文
当我们需要查找一写前端框架的官方文档的时候,可以在这个网址里面查找,同时还提供中文文档,学习起来能够节约时间。(ps:最好的学习资料还是原版英文文档)。印记中文:https://docschina.org/...原创 2021-04-15 16:06:16 · 211 阅读 · 0 评论 -
Spring boot项目中使用lombok的注解@Data的时候出现stackOverFlow错误解决方法
首先看看报的错是啥:console那里面报的是stackOverFlow,然后提示某一个类的.hashCode,最后定位到一个类的@Data注解上面。查了资料之后才知道:@Data : 注在类上,提供类的get、set、equals、hashCode、canEqual、toString方法会产生hashCode码,如果遍历list,如果list中还有list,就会在单线程的情况下对每一个元素产生hashCode,所以在单线程的情况下就会产生栈溢出,所以,为了避免这种情况,在只使用setter和get原创 2021-04-10 20:29:58 · 762 阅读 · 0 评论 -
SpringBoot项目遇到AopAutoConfiguration matched: - @ConditionalOnProperty (spring.aop.auto=true)错误
启动Spring boot项目的时候,出现如下错误:CONDITIONS EVALUATION REPORTPositive matches:AopAutoConfiguration matched:- @ConditionalOnProperty (spring.aop.auto=true) matched (OnPropertyCondition)AopAutoConfiguration.AspectJAutoProxyingConfiguration matched:- @Conditio原创 2021-03-15 10:19:07 · 9683 阅读 · 1 评论 -
postman根据请求内容生成对应的代码(包含java,javascript。。。等其他代码)
当使用postman模拟请求的时候,如何知道底层请求的原理,也就是通过生成对应的代码来进行分析。这里介绍使用postman生成对应的java代码。1、输入网址2、选择对应的请求方式3、输入对应的请求内容,包括header和body4、点击提交5、如果响应码是200,表示请求正确,接下来就可以查看对应的代码了。6、点击这个即可:在这里便可以生成对应的代码了。总结:。。。卡了一天的Bug,如果早点遇到这个软件就好了,感谢本科室友大佬!!!yyds...原创 2021-01-30 21:23:56 · 2122 阅读 · 1 评论 -
Java网络编程,访问URL的时候,出现no protocol错误
为了这一个bug,调了一下午,最后才找到原因。先来逐步分析一下。首先,这个错误肯定是因为这个URL的问题,也就是报这句话的错误:那么也就可以确定是我们传入的URL的问题了。所以我们应该去检查url的格式。但是我打印出来也是对的,所以也想了很久。最后找到原因。因为我这个URL是从另一个网站获取的值,也就是如下:所以,我们需要检查responseResult的值,最后发现,因为EntityUtils.toString方法调用之后,会将双引号也会包含在responseResult当中,所以传给URL原创 2021-01-28 19:46:09 · 9612 阅读 · 0 评论 -
maven查找自己需要的依赖包便捷网站
在使用maven的使用,最常用的就是查找自己需要的各种依赖,提供一个网站,更加便捷的查找自己需要的依赖包: https://www.webjars.org/原创 2021-01-24 13:35:45 · 602 阅读 · 0 评论 -
Overleaf使用ORCID进行注册和登录
overleaf是一款优秀的排版工具,那么在国内如何进行注册和登录呢?我们首先进入Overleaf官网:https://www.overleaf.com/点击注册。这里选择ORCID进行注册:然后再新建一个标签页,进入:https://orcid.org/ 注册orcid账号:如实填写,最后注册成功接下来,在overleaf中使用orcid进行注册:使用之前的邮箱和密码进行注册登录即可,最后便可直接使用ORCID进行登录overleaf了。大功告成,开始愉快的科研之旅原创 2021-01-21 17:29:43 · 8274 阅读 · 5 评论 -
Java开发设计模式-工厂模式-Factory
1、工厂模式简介工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。优点: 1、一个调用者想创建一个对象,只要知道其名称就可以了。 2、扩展性高,如果想增加一个产品,只要扩展一个工厂类就可以。 3、屏蔽产品的具体实现,调用者只关心产品的接口。缺点:每次增加一个产品时,都需要增加一个具体类和对象实现工厂,使原创 2020-12-29 21:28:07 · 406 阅读 · 0 评论 -
如何检测ubuntu中是否已经配置好cuda
如果已经安装好cuda ,如何确认系统已经配置好cuda?检测方法如下:首先进入cuda 的安装目录:执行 $ cd /usr/local/cuda/samples ,$ cd ./1_utilities ,$ cd ./deviceQuery然后编译:make;如果编译成功,执行make ; 如果编译成功,执行make;如果编译成功,执行 sudo ./deviceQuery ; 则会出现:如果编译失败,执行上述命令后出现:no sunch file,那么就需要安装G++;使用:sud原创 2020-12-16 16:45:54 · 4589 阅读 · 0 评论 -
Docker的安装和基本使用
https://www.runoob.com/docker/docker-image-usage.html很有用的学习网址:http://www.ruanyifeng.com/blog/2018/02/docker-tutorial.html1、什么是docker:Docker 属于 Linux 容器的一种封装,提供简单易用的容器使用接口。它是目前最流行的 Linux 容器解决方案。Docker 将应用程序与该程序的依赖,打包在一个文件里面。运行这个文件,就会生成一个虚拟容器。程序在这个虚拟容器原创 2020-12-16 15:01:30 · 145 阅读 · 1 评论 -
复旦大学函数式编程(typescript)课程个人简单代码实现
关于函数式编程的部分类容,主要使用typescript实现,github代码如下:github_project有需要的可以下下来看看,有的内容需要自己上网查找资料,希望对你有所帮助。原创 2020-12-13 11:17:15 · 420 阅读 · 0 评论 -
解决在win10上安装postgresql出现An error occured executing the Microsoft VC++ runtime installer的方法
问题描述Windows安装PostgreSQL时,报错:There has been an error.An error occured executing the Microsoft VC++ runtime installer。安装环境系统版本:Windows 10 专业版 64位软件版本:PostgreSQL 9.6.17解决方法进入cmd,切换到安装包目录,输入安装包名和–install_runtimes 0,在这里我输入postgresql-9.6.17-1-windows-x64原创 2020-12-09 18:54:37 · 2686 阅读 · 2 评论 -
解决卸载postgresql 不干净,且卸载程序闪退的方法
当我们想要彻底卸载postgresql时,有时可能会出现很多问题,推荐一个软件:添加链接描述通过下载free版本的zip包,解压之后即可进行软件卸载任务,并且会删除注册表和相关服务。原创 2020-12-09 18:25:17 · 2554 阅读 · 0 评论 -
如何解决postgresql10安装第一次打开pgadmin卡在初始化界面
当安装Postgresql10之后第一次通过pgadmin打开数据库时候,界面卡在初始化界面,解决方法:1:cmd打开regedit打开注册表2:找到计算机\HKEY_CLASSES_ROOT.js3:点击.js,看到:将其content type修改为:text/javascript即可:然后关闭postgresql服务器,再重新打开即可!...原创 2020-12-09 16:59:56 · 661 阅读 · 0 评论 -
解决centos 7 安装、检查和配置源为aliyun解决方案
折腾了一天,终于在centos中安装了yum ,同时配置了aliyun的源,和大家一起分享几篇优质的博客,避免大家走弯路:前提:linux必须要联网安装yum:http://www.cppcns.com/os/linux/288091.html检查yum是否安装成功:https://zhidao.baidu.com/question/244504419.html配置yum源为aliyun:https://blog.csdn.net/weixin_41756573/article/details/10原创 2020-12-03 16:46:54 · 437 阅读 · 0 评论 -
typescript中的laziness函数
本文主要简述ts中的lazy函数的简单思想惰性函数是js函数式编程的另一个应用,惰性函数表示函数执行的分支只会在函数第一次调用的时候执行,他的应用情景在于当我们遇到一个需要判断场景去调用不同的方法时,避免重复进入函数内的if判断,也就是说if判断只进行一次,之后函数就会被分支里的代码替换掉。比如有下面代码://该函数返回第一次调用的时间var t = nullfunction test(){ if(t){ return t; } t= new Date(原创 2020-10-31 15:16:46 · 331 阅读 · 0 评论 -
typescript中的curry(柯里化)学习笔记
ts中的curry :柯里化,实际上就是把接收多个参数的函数变换成接收一个单一参数(最初函数的第一个参数)的函数,如果其他的参数是必要的,返回接收余下的参数且返回结果。第一个例子:实现加法的柯里化/*前端使用柯里化的用途主要是简化代码结构,提高系统的维护性,一个方法,只有一个参数,强调了功能的单一性,很自然就做到了功能内聚,降低耦合优点:降低代码的重复,提高代码的适应性*/var Add = (x:number, y:number) => { return x+y;}原创 2020-10-18 21:52:36 · 1625 阅读 · 3 评论 -
typescript 的函数:compose案例详解
函数组合(compose)是函数式编程里面比较常见的一种方法,他的主要思想就是:通过组合各种函数来进行连续复杂运算。比如:我们希望将前段获得的字符串进行空格的清除,然后进行大小写转换,那么应该如何做呢,当然是要调用两次函数,那么我们可以通过函数组合,实现一次调用。举个栗子:var toUpper = (str) => { return str.toUpperCase();}var trim= (str) => { const reg = /\s+/g; ret原创 2020-10-18 21:41:48 · 560 阅读 · 0 评论 -
学习笔记:神经网络中的激活函数sigmoid函数如何避免overstack
1,首先贴出sigmoid原始函数:# def sigmoid(x):# return 1 / (1 + np.exp(-x))问题:因为当x为正整数的时候,exp(-x)很小,当x是一个非常小的负数时,exp(-x)会过大,导致溢出。所以我们可以这样优化:对于负数,我们上下同时乘以exp(x)即可。优化后的函数为:def sigmoid(x): if np.all(x) >= 0: return 1 / (1 + np.exp(-x)) else:原创 2020-09-30 10:12:16 · 594 阅读 · 0 评论 -
ts学习笔记:箭头函数
//箭头函数//es5setTimeout(function(){console.log(‘time’, 1);},1000);//箭头函数里面的this指向上下文//ts 箭头:=>setTimeout(()=>{console.log(‘箭头函数’, ‘这就是箭头函数,省略了函数名,多加了箭头’);},1000);...原创 2020-09-26 17:44:48 · 2606 阅读 · 0 评论 -
ts学习笔记:基础语法-2
//es5:1.函数名定义法// function run(){// return "run";// }//2.匿名函数// var run2 = function(){// return "run";// }//ts中定义函数的方法//1。:函数声明法function run():string{ return "run";//只可以返回string类型}//匿名函数法var fun2 = function():number{ return..原创 2020-09-26 16:22:03 · 235 阅读 · 0 评论 -
ts学习笔记:基础语法-1
console.log("你好!")//tsc进行编译//boolean 类型//定义变量var flag:boolean = true ;// flag = "str" 错误;不可再将定义好的类型数据变为其他类型flag = false;//number 数字类型var a:number = 123;// console.log(a)//没有对整形和浮点型进行区分,只有number a = 12.3;// console.log(a)//字符串类型:stringva原创 2020-09-26 16:21:12 · 275 阅读 · 0 评论 -
windows下载和配置typescript运行环境方法
1、安装npm,可以先安装node.js,然后即可自动安装npm:https://www.runoob.com/nodejs/nodejs-install-setup.html2、检查node.js和npm是否已经配置完毕:node --versionnpm -v3、npm安装typescriptnpm install -g typescript4、使用tsc 命令来执行Typescript相关代码,以下是查看版本号:tsc -v5、书写typescript 程序:一、新建一个test.ts原创 2020-09-18 16:03:44 · 988 阅读 · 0 评论