自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(68)
  • 收藏
  • 关注

原创 高效工具甄选

更新常用的工具选择 1、markdown

2024-01-04 07:27:16 414

原创 通学智能合约系列(二十二)--乞丐版众筹项目实践

智能合约众筹项目实战首先要给大家说声抱歉,最近太太太忙了。之前老早说的要进行一个智能合约总结,一直没有都没有时间,今天终于能抽出来点时间,做一个收尾工作。无论做任何事,我都喜欢善始善终。要做就要做彻底。在这里,我们就跟着建勋老师的步伐,一起来实现我们这个乞丐版的灾情众筹项目吧。当下正值台风“烟花”的侵袭,郑州的父老乡亲们身处水深泥流之中,我们大家也都是忧心忡忡,想给我们的同胞尽一份心,尽一份力。生活在我们当下这个时空,各种天灾频发,各种人祸也是经常让大家吃瓜吃的津津有味,例如,某某H十字又中饱私囊了多

2021-07-21 23:54:57 4493 5

原创 通学人工智能一

3、系统都是都是英文的,中文可以使用微软小冰。1、可以自己做出自动电商网站。1、收集灵感,整理成文案。1、全球语言无障碍转换。2、数字人真实化处理。1、软装设计 进行设计。1、一键自动生成网站。

2024-09-07 18:57:27 336

原创 Learning English<1>

1、vedioPeppa PIGBluey2、bookArthur2、bookMatiodafriendsGlee2、bookSherlockCrown2、bookthe officeMadman2、book。

2024-08-25 22:32:07 392

原创 Invalid value undefined for HardhatConfig.networks.goerli.url - Expected a value of type string.

测试合约代码的时候报错如下,你们谁遇到了么,怎么解决的呢?

2024-02-15 21:22:05 318 1

原创 从传统机械到互联网到web3.0,我到底经历了什么

从传统机械到互联网到web3.0 我到底经历了什么?hello,铁子们,好久没有发声了,你们都快把我忘了吧。通学技术,学通技术,相约元宇宙。今天随便聊聊,你有空的话,也可以随便看看。我的目标貌似一直在变化,毕竟这个世界只有一小部分人能到达宇宙的尽头,要么体制内,要么“黄袍”加身(注意:这里是调侃的预期,防止有些杠精和我杠。)而我们的大多数人终将是fomo一生。这不,我就是那个一直在fomo的人。web0.0你说你一个二本毕业,成绩一般,想法还多得不行,干个机械项目也挺成功的,你担心啥?这是我在问

2022-04-16 22:34:43 6475 3

原创 通学智能合约系列(二十一)--结构体<下>

大家好,通学技术,学通技术,让我们一起继续来看看智能合约结构体memory和storage类型转换吧~6、结构体storage转storage详解hello,大家好,我们紧接着上节内容来看看,结构体关于storage和memory类型的转换。我们先来看一个例子:pragma solidity ^0.4.16;contract StructTest{ struct Student{ string name; string grade; }

2021-07-07 00:34:39 2225

原创 通学智能合约系列(二十)--结构体<上>

hello,大家好,欢迎继续坚持学习智能合约。这们这节来看看solidity结构体.3、结构体定义与初始化在solidity的世界中,同样定义了结构体来表示复杂的对象类型,我们一起看看他是怎么来定义和初始化的吧~pragma solidity ^0.4.16;contract StructTest{ // 定义一个结构体 struct Student{ string name; uint grade; } function

2021-06-30 08:02:53 1592 1

原创 通学智能合约系列(十九)--memory与storage

Solidity-内存、引用与持久化存储1、 内存与区块链——storage与memory原理在前面的学习当中,我们知道了,合约中的一个被public修饰的成员变量,会默认生成一个供外部调用的函数,而这个函数是存储在区块链自身的数据结果里的。对于函数内部的局部变量,仅存在与内存当中。我们看如下例子:pragma solidity ^0.4.16;contract MemoryTest{ function add(uint num) view returns(uint){

2021-06-28 22:47:46 1968 5

原创 通学区块链系列-从go开始之面向对象(四)

通学技术,面向区块链编程oop1、自定义结构体package mainimport "fmt"/* oop--面向对象 自定义结构 现代编程,都讲究面向对象编程 作为一门比较潮的go语言来说 面向对象自然也是支持的 而面向对象的三要素分别是 封装、继承、多态 然我们来看看go是怎么玩转他们的吧 */// 首先我们的go 忽略了class的概念 转而用结构体来声明对象/* 说明: Go语言作为一门基于包管理的开发语言如果想将自己的结构体作为公共包被其他包导入,需要将结构.

2021-06-27 22:17:07 437 2

原创 通学区块链系列-从go开始容器篇(三)

通学技术,面向区块链编程9、容器之数组package mainimport "fmt"/**容器 --可分为 数组 切片 map*/// 数组func main() { // 整型 未初始化赋值0 var a1 [5]int = [5]int{1, 2, 3, 4} fmt.Println(a1) // 赋值 a1[4] = 6 fmt.Println(a1) // 字符串类型赋值空 s1 := [4]string{"1", "2", "3"} fmt.Pri.

2021-06-27 22:11:14 298

原创 通学区块链系列-从go开始之函数篇(二)

通学技术,面向区块链编程6、函数package mainimport "fmt"//函数 举例 数字互换func main(){ a,b := 1,2 swap1(a,b) fmt.Println(a,b) swap2(&a,&b) fmt.Println(a,b) swap3(a,b) fmt.Println(a,b)}// swap内部对参数进行的修改 并不会影响到swap调用时传入的a和b本身。func swap1(a,b int) {.

2021-06-27 22:04:39 523

原创 通学区块链系列-从go开始之数据类型与定义(一)

通学技术,学通技术,面向区块链编程,构建可信社会。1、自增长常量package main// 自增长常量import "fmt"const ( // iota = 0 login = iota logout user = iota + 1 account = iota + 3)func main(){ fmt.Println(login) fmt.Println(logout) fmt.Println(user) fmt.Println(account)}2、.

2021-06-27 21:59:50 499

原创 通学智能合约系列(十八)--函数的重写与自我销毁

hello,大家好,通学智能合约系列文档已经出栏了,关注微信公众号号【通学技术】,回复{智能合约}即可获取,大家快来领取吧~~~~~~~~~~~~~~~~~~~~~~~~~~~~~··19、继承中函数的重载重写在这节内容中,视频中的老师讲的有点问题,此处应当是重写,而不是重载。相信学过java或者其他面向对象的小伙伴们都清楚,重载和重写的区别吧。我们来看看solidity的例子一吧pragma solidity ^0.4.16;contract Father{ uint m

2021-06-18 23:28:32 774

原创 通学智能合约系列(十七)--函数与Getter

大家好,这里是通学技术,承接上节,我们一起继续来学习智能合约系列。16、函数小结前面我们花费了巨多的篇幅来介绍函数,可见函数是多么的重要。不过当然也是,在面向对象的思想里,属性和行为构成了对象,正是因为我们千姿百态的行为,才构建了我们丰富多彩的世界。这里我们针对我们所学的函数做一个小结吧。首先,还是先请出我们的函数通用写法。function functionName(<parameter types>) {private|internal|external|public} [pur

2021-06-16 23:17:07 467

原创 通学智能合约系列(十六)--合约的继承

大家好,这里是通学技术,欢迎大家继续跟我一起学习智能合约系列。13、面向对象–合约的继承相信能看到这里的人,想必都是有经验的开发人员了,坚持不懈,耐得住寂寞。solidity作为一种图灵完备的面向对象的编程语言,必然同其他面向对象的语言一样,拥有继承这一特性。我们就主要来看看它是怎么来表示继承的吧!pragma solidity ^0.4.16;contract Father{ uint money = 10000; function noSmoking(

2021-06-16 23:08:20 1893

原创 linux 系统 查日志

linux系统中,利用grep打印匹配的上下几行://打印匹配行的前后50行$grep -50 'parttern' all.log//打印匹配行的前后50行$grep -C 50 'parttern' all.log//打印匹配行的后50行$grep -A 50 'parttern' all.log //打印匹配行的前50行$grep -B 50 'parttern' all.log ...

2021-06-10 14:38:59 206

原创 IDEA中merge分支时提示refusing to merged unrelated histories

IDEA中merge分支时提示refusing to merged unrelated histories解决方案:在这里插入代码片

2021-06-09 12:35:22 8940

原创 通学智能合约系列(十五)--函数修改器modifier

大家好,真的是我,我又来啦。通学技术,学通技术,欢迎大家继续跟我一起学习智能合约系列。.函数modifire的强大功能(上)在solidity的世界里,为我们提供了一种类似于spring切面的操作。可以在我们函数的任意位置插入一个函数方法,我们称之为函数修改器。下面就让我们来看看他是怎么写的吧~pragma solidity ^0.4.16;contract modifireTest{ address public ower; uint public num

2021-06-06 23:55:18 1496 11

原创 通学智能合约系列(十四)--函数2

大家好,我是up通,通学技术,学通技术,欢迎大家继续跟我一起学习智能合约系列。5.external权限修饰符详解external和internal除 public 和 private 属性之外,Solidity 还使用了另外两个描述函数可见性的修饰词:internal(内部) 和 external(外部)。internal 和 private 类似,不过, 如果某个合约继承自其父合约,这个合约即可以访问父合约中定义的“内部”函数。(有点类似于java 中的protect)external 与pu

2021-06-01 22:20:07 1261 6

原创 通学智能合约系列(十三)--函数1

大家好,我是up通,通学技术,学通技术,欢迎大家继续跟我一起学习智能合约系列。Solidity–实战篇在实战篇当中,我们将重点介绍solidiy函数的特性。solidity学了这么久,我们会发现其实和java这种面向对象的语言还是很类似的,java类对应solidity合约。而合约的属性及函数正对应了我们java的成员变量及成员方法。编程玩的是逻辑,而逻辑的体现则是行为,行为的数字描述则是函数。我们将花费巨量的篇幅来说明solidty的函数,一起加油吧。solidity函数的标准形式我们可以概括如下

2021-05-31 08:16:06 1157 3

原创 通学智能合约系列(十二)--地址交易<下>

大家好,通学技术,学通技术,欢迎大家继续跟我一起学习智能合约系列。5.以太坊中的全局属性上节内容的最后,我们提出了一个问题,msg.value是什么?不多卖关子,在solidity中,我们称之为全局变量,这里与我们java,python等语言中全局变量不同,更像是以太坊系统提供给我们的一种系统变量,以方便我们更好地进行转账交易或查询区块链信息等操作。这里我们重点介绍几个比较重要的以太坊全局变量。pragma solidity ^0.4.16;contract globleTest{ f

2021-05-30 15:32:46 943 1

原创 通学智能合约系列(十一)--地址交易<上>

Solidity–地址交易篇兄弟们,真的是我,我又回来了。经历了懒散与加班的日子,让我们一起继续智能合约的征程吧。废话不多说,直接上干货。1.以太坊地址的本质在以太坊中,有两种类型的账户:一种是外部账户(EOAs,Externally Owned Accounts),另一种是合约账户(Contracts Accounts)。当我们提到账户这个术语的时候,我们通常指的是外部账户(EOA),当提到合约账户的时候我们通常称其为“合约”。而以太坊的地址分为两种,普通地址和合约地址**普通地址:**普通账

2021-05-26 22:37:17 3228 6

原创 MongoDB数据库常用SQL命令

MongoDB数据库常用SQL命令 — MongoDB可视化工具Robo 3T1、db.collection.updateMany() 修改集合中的多个文档。db.getCollection('user').find({"pId":"3332a512df604a74a72f267cf246"}).updateMany({"pId":"c8018dd802a644a19517790336f"})2、模糊查询db.getCollection('user').find({name:{$regex:"AA

2021-04-02 17:03:49 834

原创 通学智能合约系列(十)--二维数组

二维数组在几何的世界里,一维为线,二维为面;而在程序的的世界中,一维为列表,二维为表;[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7TdOG4nN-1613576067441)(C:\Users\49178\AppData\Roaming\Typora\typora-user-images\image-20210215115526108.png)]类似于上图,我们就可以看做是一个表结构,我们可以用行和列来确定其中的元素,那么在solidity中怎么表示呢?pragm

2021-02-17 23:38:31 962

原创 通学智能合约(九)--数组

固定数组首先我们来看看固定数组的默认值。pragma solidity ^0.4.16;contract FixArray{ uint[5] arr; function getDefaultArrContent() view returns(uint[5]){ return arr; } }编译执行后,我们可以看到,固定数组初始值都为0.函数对固定数组初始值进行修改:pragma solidity ^0.4.16;contract

2021-02-14 22:07:01 885

原创 通学智能合约系列(八)--字节数组转换

固定长度字节数组转化我们之前也学习了那么多的数组了,那么这些数组类型是否可以相互转换呢?答案是肯定的。我们先来看看固定长度字节数组各bytes之间是怎么转换的吧~pragma solidity ^0.4.16;contract DynamicString{ bytes12 name = 0x7a68656e676a69616e78756e; function changeBytes1() view returns(bytes1){ return

2021-02-14 21:56:39 597

原创 通学智能合约系列(七)--字符串

字符串我们都知道字符串在其他编程语言中,都是出场率相当高的一个角色,重要程度不言而喻。在solidity中也不例外。在上节我们学习了动态字节数组,而我们的字符串,可不可以按照动态字节的数组去获取他的长度和其中的元素呢?我们写一个例子来看看吧。pragma solidity ^0.4.16;contract DynamicString{ string name = "tongxuejava"; function getLength() returns(uint){

2021-02-14 21:37:10 1557 4

原创 easyexcel 导出 文件名为横线 (震惊!!!)

easyexcel 导出 文件名为横线 (震惊!!!)解决办法,按照以下方式设置响应头即可: String fileName = URLEncoder.encode("XXX.xlsx", "UTF-8"); response.setCharacterEncoding("utf-8"); response.setContentType("application/octet-stream"); response.setHeader("Content-disposition", "attachment

2021-02-08 10:53:17 2186 5

原创 通学智能合约系列(六)--字节数组

5.数组固定长度字节数组关键字有:bytes1,bytes2mbytes3,…,bytes32(以步长1递增)。byte代表bytes1。pragma solidity ^0.4.16;​contract ByteArray{ bytes1 public num1 = 0x7a; bytes2 public num2 = 0x7a68; bytes12 public num3 = 0x7a68656e676a69616e78756e;}固

2021-02-05 22:32:39 459

原创 通学智能合约系列(五)--整型溢出

3.整型溢出及异常处理在上节中,如果你认真去码了一遍运算案例,可能小伙伴已经感觉到了隐隐的不安,因为这种算术操作,一旦超出所占位数后,就会变的不可控。所以我们要了错于心,防患于未然。要掌控的溢出下面我们来看一个例子:pragma solidity ^0.4.16;contract Math{ function flow() view public returns(uint8){ uint8 mm = 255; mm++; ret

2021-02-05 22:21:45 460 2

原创 通学智能合约系列(四)--整型运算

2.整型与算术运算在solidity中,基本的整型有int(有符号整型,有正有负)和uint(无符号整型,无负数)。并且他们以8位为区间,int支持int8,int16,int24至int256,uint同理。int默认为int256,uint默认为uint256.思考一下,为什么solidity要搞这么多整型类型,还分的这么细致呢?而他们支持的算术操作有以下等:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yQbc1Hgk-1612448413885)(C:\Use

2021-02-04 22:21:44 718

原创 通学智能合约系列(三)--语法概览

Solidity语法这里我先上一张图,以森见木,方能了然于心。从上图可以看出,我们主要从两方面来说明Solidity的语法即数据类型与运算,比较复杂的部分就是我们的数组部分。至于这部分,我们暂且按下不表,待我娓娓道来。1.真假与或非废话不多说,我们直接上代码:pragma solidity ^0.4.16;contract BoolTest{ bool a; function getBoolDefault() returns(bool){

2021-02-04 22:19:16 572 2

原创 通学智能合约系列(二)--你的第一个智能合约

HelloWorld带你进入Solidity的世界在线Remix编辑器: http://remix.hubwiz.com/我们学习任何一门编程语言的时候,都是从helloWorld开始的,当然,Solidity也不例外。正所谓工欲善其事,必先利其器。要学习这门语言,我们需要先找一个容易上手的环境。这里Remix便已经为我们准备好了。打开在线编辑器后,我们会看到如上图三大块,接下来就可以编写我们的第一个智能合约HelloWord.sol了。helloWorld我们编辑如下程序://声明版本

2021-02-01 22:25:20 655 1

原创 通学智能合约系列(一)--智能合约简介

通学智能合约大家好,本文档来自B站无私奉献up主伟大的沉欢分享的《基于以太坊的只能合约开发教程【Solidity】》。整理人【通】,个人公众号【通学java】。部分内容为网络资源(主要引用来自中文维基百科),如有不对的地方,希望能够及时指正,鄙人会统一修改。正文开始:以太坊以太坊(英语:Ethereum)是一个开源的有智能合约功能的公共区块链平台。通过其专用加密货币以太币(Ether,又称“以太币”)提供去中心化的虚拟机(称为“以太虚拟机”Ethereum Virtual Machine)来处理

2021-01-31 22:53:15 2249

转载 linux 查看日志

第一种:查看实时变化的日志(比较吃内存)最常用的:tail -f filename  (默认最后10行,相当于增加参数 -n 10)Ctrl+c 是退出tail命令其他情况:tail -n 20 filename  (显示filename最后20行)tail -n +5 filename  (从第5行开始显示文件)第二种:搜索关键字附近的日志最常用的:cat -n filename |grep “关键字”其他情况:cat filename | grep -C 5 ‘关键字’   (显

2021-01-11 14:30:49 4903

原创 DB2 数据库总结

一、存储过程1、造测试数据BEGIN DECLARE i INT DEFAULT 1; WHILE i<=100000 DO INSERT INTO T_FORM (XXX,XYZ) SELECT cast(cast(XXX as BIGINT) + 1 as varchar(64)),cast(cast(XYZ as BIGINT) + 1 as varchar(32)) FROM T_FORM ORDER BY id DESC fetch first

2020-12-31 14:53:58 775

转载 DB2数据库添加 更改字段

db2 表基本添加字段操作1.添加字段alter table [table_name] add [column_name] [column_type]2.更改字段类型alter table [table_name] alter column [column_name] set data type [column_type]注意: 更改字段类型是有限制的,如将字段改为比之前类型长度大的可以,如果要改小或者修改小数点长度,必须先drop掉原来的column,然后再重新添加.例如我要将一个Va

2020-12-31 12:48:25 2238

转载 HTTP常见状态码(404、400、500)等错误

一些常见的状态码为:200 - 服务器成功返回网页404 - 请求的网页不存在503 - 服务不可用详细分解:1xx(临时响应)表示临时响应并需要请求者继续执行操作的状态代码。代码 说明100 (继续) 请求者应当继续提出请求。服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。101 (切换协议) 请求者已要求服务器切换协议,服务器已确认并准备切换。2xx (成功)表示成功处理了请求的状态代码。代码 说明200 (成功) 服务器已成功处理了请求。通常,这表示服务器提供了请

2020-12-09 09:27:19 511

转载 使用HttpClient MultipartEntityBuilder 上传文件,并解决中文文件名乱码问题

写在前面遇到一种业务场景,前端上传的文件需要经过java服务转发至文件服务。期间遇到了原生HttpClient怎么使用的问题、怎么把MultipartFile怎么重新组装成Http请求发送出去的问题、文件中文名乱码问题。最后都解决了,先上代码,再讲遇到的坑正文@Slf4j@Servicepublic class FileServiceImpl implements IFileService { @Value("${FileService.putUrl}") private Str

2020-12-01 10:27:15 1799 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除