- 实践指南:构建一个零知识证明 DApp [译]
扣3039046426
区块链
实践指南:构建一个零知识证明DApp[译]零知识证明DAppcircomsnarkjs本文将构建一个zk-dApp(零知识证明DApp),以证明用户是否属于某个特定组,而无需透露用户具体是谁。阅读本文前,最好先对以下内容有所了解:public-keycryptographycircom及snarkjs使用truffle使用ethers连接合约前言在过去的几个月中,我在以太坊eth上利用了零知识证明
- NFT数字藏品平台app软件开发
星星网络科技开发
区块链
NFT(非同质化代币)数字藏品平台APP的开发源码搭建是一个涉及多个技术层面的复杂过程。以下是对其的简要解释:技术准备:区块链技术:NFT的核心技术是区块链,特别是以太坊等支持智能合约的区块链平台。开发者需要熟悉这些平台及其开发工具,如Solidity(智能合约编程语言)和Truffle(开发框架)等。前后端开发:APP的前端负责用户界面和交互,后端则负责数据处理和与区块链的交互。前后端开发需要熟
- [以太坊] OpenZeppelin 使用笔记
ytxing
拆箱(Unbox)模板应用新建空目录mkdiroz-workspacecdoz-workspace拆箱模板truffleunboxtutorialtoken安装OpenZeppelinnpminstallopenzeppelin-solidity创建合约可以说合约所需代码,已经非常非常精简了,例子还把构造参数全部写到了代码里,方便部署。pragmasolidity^0.4.24;import"op
- truffle 创建测试合约并部署到测试网络
不与天斗8866
web3区块链truffle
1、npm安装trufflenpminstall-gtruffle2、创建truffle项目mkdirimooc-on-blockchain-truffle&&cdimooc-on-blockchain-truffle3、初始化truffle目录,会生成如下几个目录contracts存放.sol合约文件migrations部署脚本目录test测试文件目录truffle-config.jstruff
- npm后Truffle找不到命令(ubantu20系统)
柒拾柒_L
区块链node.jslinux
Truffle找不到命令方法1方法2方法1#编辑.profilevim~/.profile#在.profile末尾把nodejs的解压路径添加到$PATH环境变量中PATH="$HOME/bin:$HOME/.local/bin:路径:$PATH"source文件方法2#ls-l在nodejs的bin目录下查看truffle链接的脚本文件truffle->../lib/node_modules/t
- Polka链的宠物项目1浏览器--by Skyh0710
skyh25
波卡官方教程有一系列的tutorial项目,就像truffle框架简化了以太坊开发流程,简单学学可以由浅入深进入波卡开发,就在substrate的一级子菜单image.png进入第一个,还友善的给你语言选择,这里就选择中文开始吧image.png1.安装测试这里有快速安装并测试,如果做了昨天全部安装安装步骤可以忽略#快速安装curlhttps://getsubstrate.io-sSf|bash-
- Web3:B站chainlink课程Lesson5:安装ganache
落幕之前
Web3web3
下载地址:https://trufflesuite.com/ganache/网址是这个,但是网站最顶端说这个项目已经要废弃了,但是反正没用过,试一试。塞个百度网盘的。链接:https://pan.baidu.com/s/1wB0ZyyyCxWkzrTIs5CYHzw提取码:dc96下完之后按照这个文章说的装。网址:https://blog.csdn.net/weixin_43725548/arti
- truffle入门(一)--【区块链】
晚风皆是过客.
fisco-bcos区块链linux运维
1、下载安装nodejs通过nvm方式可以将nodejs版本下载为16版本#安装nvmcurl-o-https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh|bash#若出现因网络问题导致长时间下载失败,可尝试以下命令curl-o-https://gitee.com/mirrors/nvm/raw/v0.33.2/ins
- Ubuntu20.04安装区块链项目所需的nodejs、go、truffle、solidity、geth
朽月初二
区块链项目实战区块链golang开发语言
目录0、最开始需要更新atp库1、安装nodejs2、安装truffle3、安装solidity4、安装go5、安装aptitude:6、安装git7、下载geth0、最开始需要更新atp库命令如下:sudoapt-getupdate需要的时间比较长,但是后续下载不需要再更新(我也不确定,但是我后续更新是完全没用,如果使用apt命令报错,可以再更新一下)1、安装nodejs输入命令:sudoapt
- 以太坊入门之搭建truffle框架(一)
大胡子的机器人
一、truffle介绍Truffle是最流行的开发框架,能够在本地编译、部署智能合约,使命是让开发更容易。Truffle需要以太坊客户端支持,需要支持标准的JSONRPCAPI。有许多的以太坊客户端可以选择。我们推荐在开发和部署时使用不同客户端。适用开发的客户端EtherumJSTestRPC适用正式发布的客户端Geth(go-ethereum)当开发基于Truffle的应用时,推荐使用Ether
- 以太坊solidity学习记录(一)remix编译器的使用
H_Roger
智能合约学习java
1.浏览器输入Remix-EthereumIDE2.编译界面:3.运行界面:2.代码:pragmasolidity^0.4.0;表明向上兼容,不能被低于0.4.0版本的编译器编译。3.contract意味着声明新的合同。具体的形式如下:contractHelloWorld{//此处增加代码}4.对合约的状态进行更新时要支付gas,即燃料费。而不对合约状态进行更改的操作则不需要消耗燃料费。消耗燃料费
- 基于web3+solidity的众筹项目
发呆...
web3世界web3智能合约区块链
基本配置:`node`、`npm`、`yarn`,安装`ganache`,`chrome`,`chrome`安装插件`MetaMask`,主要功能:目的是实现一个简单的众筹平台,允许用户发起筹款项目、捐款、提出使用资金请求以及证明人证明。部分合约:1.首先打开ganache软件,进行如下配置,2.然后通过私钥在metamask内添加两个账户。3.输入:`trufflecompile`4.输入:`t
- 区块链技术开发之以太坊开发入门教程——一个去中心化DApp应用投票系统。
落叶无声9
以太坊以太坊开发以太坊入门以太坊教程DApp
第一节课程概述本课程面向初学者,内容涵盖以太坊开发相关的基本概念,并将手把手地教大家如何构建一个基于以太坊的完整去中心化应用——区块链投票系统。通过本课程的学习,你将掌握:以太坊区块链的基本知识开发和部署以太坊合约所需的软件环境使用高级语言(solidity)编写以太坊合约使用NodeJS编译、部署合约并与之交互使用Truffle框架开发分布式应用使用控制台或网页与合约进行交互前序知识要求为了顺利
- 以太坊DApp开发入门教程——Node.js和truffle框架打造区块链投票系统
落叶无声9
以太坊开发区块链以太坊区块链开发以太坊开发以太坊入门
第一节课程概述本课程面向初学者,内容涵盖以太坊开发相关的基本概念,并将手把手地教大家如何构建一个基于以太坊的完整去中心化应用——区块链投票系统。通过本课程的学习,你将掌握:以太坊区块链的基本知识开发和部署以太坊合约所需的软件环境使用高级语言(solidity)编写以太坊合约使用NodeJS编译、部署合约并与之交互使用Truffle框架开发分布式应用使用控制台或网页与合约进行交互前序知识要求为了顺利
- 以太坊 DApp 开发入门实战! 用Node.js和truffle框架搭建——区块链投票系统!
cookie0002
第一节课程概述本课程面向初学者,内容涵盖以太坊开发相关的基本概念,并将手把手地教大家如何构建一个基于以太坊的完整去中心化应用——区块链投票系统。通过本课程的学习,你将掌握:以太坊区块链的基本知识开发和部署以太坊合约所需的软件环境使用高级语言(solidity)编写以太坊合约使用NodeJS编译、部署合约并与之交互使用Truffle框架开发分布式应用使用控制台或网页与合约进行交互前序知识要求为了顺利
- 2018-03-27 智能合约truffle初体验 -by skyh
skyh25
0.准备,安装node,npm安装brew,brew是mac平台软件安装工具ruby-e"$(curl-fsSLhttps://raw.githubusercontent.com/Homebrew/install/master/install)"通过brew安装node,node自带npm包管理工具,可管理js模块#sudo取得根权限安装,防止出错sudobrewinstallnodenpm默认试
- Truffle中JS测试小技巧
旧时的荣耀
solidity是以太坊上首选的智能合约开发语言,有很多人都用它进行智能合约的学习与开发;而truffle是以太坊上最流行的开发框架,深受大家的喜爱。在开发过程中,不可避免的需要对solidity代码进行测试。因为能够按需定制、灵活、方便的原因,大部分人选择的都是基于JS来书写测试代码,因此以下的小技巧都是基于JS测试中遇到的一些困惑之处,总结一下与大家共勉。编码风格的选择:.THEN与ASYNC
- 区块链技术与应用 【全国职业院校技能大赛国赛题目解析】第五套智能合约安全漏洞测试
已久依依
区块链职业技能大赛赛题解析区块链智能合约js
第五套题的智能合约安全漏洞测试题目环境:ubuntu20Trufflev5.8.3(core:5.8.3)Ganachev7.8.0Solidityv0.8.3Nodev18.16.0Web3.jsv1.8.2前言请在测试的时候开启ganache打开,并且在truffle的配置文件配好ganache,之前两个帖子忘说了/(ㄒoㄒ)/~~truffle-config.jsdevelopment:{h
- LEARNING_CRYPTO|搭建个人以太坊测试网络+测试Solidity部署(Ganache+truffle)
当然我依旧爱你
ETH以太坊网络区块链
前言:最近在看这本书:《精通以太坊:开发智能合约和去中心化应用》在看书和找资料的过程中发现了一个问题,我的这本书代码有点旧,C语言可能二三十年之前的书都可以看,这本书出版才没几年,Solidity就已经从0.4----->0.8,其中的生态更是蓬勃发展,也勿需我多言。这几年发生了很多很多以前没发生过的事情,就像那句老话说的:看书你只能知道以前发生过的,看semiproject你知道正在发生的,和p
- FISCOBCOS入门(十)Truffle自定义测试helloworld
发呆...
FISCOBCOS基础区块链ruffle测试FISCOBCOS测试用例功能测试
在windos终端内安装trufflenpminstall-gtruffletruffle--version出现上图情况也没问题下面就可以进行我们的操作了创建一个文件truffle创建一个空工程truffleinit在contracts内加入HelloWorld合约//SPDX-License-Identifier:MITpragmasolidity^0.8.0;contractHelloWorl
- web3 React dapp进行事件订阅
跟 耿瑞 卷出一片天
web3react.js前端
好啊,上文web3ReactDapp书写订单买入/取消操作我们已经写好了填充和取消订单这就已经是非常大的突破了但是留下了一个问题那就是我们执行完之后订单的数据没有直接更新每次都需要我们手动刷新才能看到结果那么今天我们就来看解决这个问题的事件订阅我们下启动一下环境ganache环境终端运行ganache-d登录一下MetaMask运行我们的dapp发布一下合约trufflemigrate--rese
- web3 前端dapp从redux过滤出 (我创建与别人创建)正在执行的订单 并展示在Table上
跟 耿瑞 卷出一片天
区块链
上文web3从redux中拿出所有已完成订单并渲染到对应的Table列表中我们从redux中取出并渲染了已完成的订单那么我们继续万里长征就快看到尽头了呀我们先起一下环境ganache终端输入ganache-d然后登一下MetaMask然后打开我们的项目发布一下合约trufflemigrate--reset然后执行一次测试脚本发布一下订单并转让交易所ETH和Tokentruffleexec.\scr
- web3 React Dapp书写订单 买入/取消操作
跟 耿瑞 卷出一片天
web3react.js前端
好上文web3前端dapp从redux过滤出(我创建与别人创建)正在执行的订单并展示在Table上中我们过滤出了我创建的与别人创建的且未完成未取消的订单数据这边我们起一下ganache环境ganache-d然后我们项目发布一下智能合约trufflemigrate--reset然后登录一下MetaMask在运行一下测试脚本truffleexec.\scripts\test.js然后打开我们的项目在根
- 【Truffle】四、通过Ganache部署连接
奈何不吃鱼
Truffle区块链智能合约合约测试ganachetruffle
目录一、下载安装Ganache:二、在本地部署truffle三、配置ganache连接truffle四、交易发送除了用TruffleDevelop,还可以选择使用Ganache,这是一个桌面应用,他同样会创建一个个人模拟的区块链。对于刚接触以太坊的同学来说,Ganache会更容易理解,因为他把所有的信息,都输在前端的界面。而不像TruffleDevelop把链和控制台集成在一起,使用Ganache
- web3 React dapp项目通过事件从区块链中拿到 已取消 已完成 和所有的订单数据 并存入redux中
跟 耿瑞 卷出一片天
web3react.js区块链
好上文web3通过antd在Reactdapp中构建订单组件基本结构我们算是把一个基本的订单组件展示做出来了然后我们继续起一下环境先ganache终端运行ganache-dMetaMask登录一下然后打开项目发布一下合约trufflemigrate--reset然后运行一下测试脚本转入交易所ETH和grToken还创建两个订单truffleexec.\scripts\test.js然后运行起dap
- web3 从redux中拿出所有已完成订单 并渲染到对应的Table列表中
跟 耿瑞 卷出一片天
web3
上文web3Reactdapp项目通过事件从区块链中拿到已取消已完成和所有的订单数据并存入redux中中我们已经从区块中拿到了自己的订单然后我们恢复一下上文的环境ganacheganache-d然后登一下MetaMask然后用我们的项目发布一下合约trufflemigrate--reset然后我们运行一下测试脚本创建订单和转让交易所ETH与tokentruffleexec.\scripts\tes
- web3通过antd 在React dapp中构建订单组件基本结构
跟 耿瑞 卷出一片天
web3react.js前端
上文web3dappReact项目引入antd对balance用户token信息组件进行样式改造中我们导入antd组件算是比较完整的编写了用户资产组件那么今天开始我们就要说订单组件了这个就会比之前的复杂很多我们还是先开环境ganache终端执行ganache-d然后将合约发布到区块链上项目终端执行trufflemigrate--reset然后我们执行一下我们之前写的测试文件向交易所转入一些ETH和
- web3 dapp React项目引入 antd 对 balance 用户token信息组件进行样式改造
跟 耿瑞 卷出一片天
web3react.js前端
好上文web3Reactdapp中编写balance组件从redux取出并展示用户资产我们简单处理了用户资产的展示那么我们继续先启动ganache环境终端输入ganache-d然后打开我们的项目将合约发布到区块链上trufflemigrate--reset然后我们启动项目确认一切正常还原到上文结束时的样子即可然后我们前端项目开发现在不用个UI框架都会被别人看不起的这里react我们当然还是选择大家
- 【Truffle】二、自定义合约测试
奈何不吃鱼
Truffle区块链智能合约合约测试truffle测试工具压力测试
一、准备测试上期我们自己安装部署了truffle,并且体验了测试用例的整个测试流程,实际开发中,我们可以对自己的合约进行测试。我们首先先明白自定义合约测试需要几个文件合约文件:既然要测试合约,肯定要有合约的源码文件,以.sol后缀结尾部署文件:测试合约要写一份部署文件,用于在测试中部署合约,以.js后缀结尾测试文件:测试合约的流程文件,用于对合约的方法流程进行测试,以.js后缀结尾合约文件的话,我
- 【Truffle】三、可视化测试报告的生成
奈何不吃鱼
Truffle区块链智能合约合约测试truffle测试工具压力测试
在truffle中,我们可以引入第三方插件,对truffle的测试进行更好的提升,这里介绍两个插件,分别是mocha-junit-reporter和mochawesome两个插件。一、mocha-junit-reporter插件mocha-junit-reporter是一个用于Truffle测试框架的插件,它允许将Mocha测试结果以JUnitXML格式输出。Truffle是一个用于以太坊区块链开
- Java实现的简单双向Map,支持重复Value
superlxw1234
java双向map
关键字:Java双向Map、DualHashBidiMap
有个需求,需要根据即时修改Map结构中的Value值,比如,将Map中所有value=V1的记录改成value=V2,key保持不变。
数据量比较大,遍历Map性能太差,这就需要根据Value先找到Key,然后去修改。
即:既要根据Key找Value,又要根据Value
- PL/SQL触发器基础及例子
百合不是茶
oracle数据库触发器PL/SQL编程
触发器的简介;
触发器的定义就是说某个条件成立的时候,触发器里面所定义的语句就会被自动的执行。因此触发器不需要人为的去调用,也不能调用。触发器和过程函数类似 过程函数必须要调用,
一个表中最多只能有12个触发器类型的,触发器和过程函数相似 触发器不需要调用直接执行,
触发时间:指明触发器何时执行,该值可取:
before:表示在数据库动作之前触发
- [时空与探索]穿越时空的一些问题
comsci
问题
我们还没有进行过任何数学形式上的证明,仅仅是一个猜想.....
这个猜想就是; 任何有质量的物体(哪怕只有一微克)都不可能穿越时空,该物体强行穿越时空的时候,物体的质量会与时空粒子产生反应,物体会变成暗物质,也就是说,任何物体穿越时空会变成暗物质..(暗物质就我的理
- easy ui datagrid上移下移一行
商人shang
js上移下移easyuidatagrid
/**
* 向上移动一行
*
* @param dg
* @param row
*/
function moveupRow(dg, row) {
var datagrid = $(dg);
var index = datagrid.datagrid("getRowIndex", row);
if (isFirstRow(dg, row)) {
- Java反射
oloz
反射
本人菜鸟,今天恰好有时间,写写博客,总结复习一下java反射方面的知识,欢迎大家探讨交流学习指教
首先看看java中的Class
package demo;
public class ClassTest {
/*先了解java中的Class*/
public static void main(String[] args) {
//任何一个类都
- springMVC 使用JSR-303 Validation验证
杨白白
springmvc
JSR-303是一个数据验证的规范,但是spring并没有对其进行实现,Hibernate Validator是实现了这一规范的,通过此这个实现来讲SpringMVC对JSR-303的支持。
JSR-303的校验是基于注解的,首先要把这些注解标记在需要验证的实体类的属性上或是其对应的get方法上。
登录需要验证类
public class Login {
@NotEmpty
- log4j
香水浓
log4j
log4j.rootCategory=DEBUG, STDOUT, DAILYFILE, HTML, DATABASE
#log4j.rootCategory=DEBUG, STDOUT, DAILYFILE, ROLLINGFILE, HTML
#console
log4j.appender.STDOUT=org.apache.log4j.ConsoleAppender
log4
- 使用ajax和history.pushState无刷新改变页面URL
agevs
jquery框架Ajaxhtml5chrome
表现
如果你使用chrome或者firefox等浏览器访问本博客、github.com、plus.google.com等网站时,细心的你会发现页面之间的点击是通过ajax异步请求的,同时页面的URL发生了了改变。并且能够很好的支持浏览器前进和后退。
是什么有这么强大的功能呢?
HTML5里引用了新的API,history.pushState和history.replaceState,就是通过
- centos中文乱码
AILIKES
centosOSssh
一、CentOS系统访问 g.cn ,发现中文乱码。
于是用以前的方式:yum -y install fonts-chinese
CentOS系统安装后,还是不能显示中文字体。我使用 gedit 编辑源码,其中文注释也为乱码。
后来,终于找到以下方法可以解决,需要两个中文支持的包:
fonts-chinese-3.02-12.
- 触发器
baalwolf
触发器
触发器(trigger):监视某种情况,并触发某种操作。
触发器创建语法四要素:1.监视地点(table) 2.监视事件(insert/update/delete) 3.触发时间(after/before) 4.触发事件(insert/update/delete)
语法:
create trigger triggerName
after/before 
- JS正则表达式的i m g
bijian1013
JavaScript正则表达式
g:表示全局(global)模式,即模式将被应用于所有字符串,而非在发现第一个匹配项时立即停止。 i:表示不区分大小写(case-insensitive)模式,即在确定匹配项时忽略模式与字符串的大小写。 m:表示
- HTML5模式和Hashbang模式
bijian1013
JavaScriptAngularJSHashbang模式HTML5模式
我们可以用$locationProvider来配置$location服务(可以采用注入的方式,就像AngularJS中其他所有东西一样)。这里provider的两个参数很有意思,介绍如下。
html5Mode
一个布尔值,标识$location服务是否运行在HTML5模式下。
ha
- [Maven学习笔记六]Maven生命周期
bit1129
maven
从mvn test的输出开始说起
当我们在user-core中执行mvn test时,执行的输出如下:
/software/devsoftware/jdk1.7.0_55/bin/java -Dmaven.home=/software/devsoftware/apache-maven-3.2.1 -Dclassworlds.conf=/software/devs
- 【Hadoop七】基于Yarn的Hadoop Map Reduce容错
bit1129
hadoop
运行于Yarn的Map Reduce作业,可能发生失败的点包括
Task Failure
Application Master Failure
Node Manager Failure
Resource Manager Failure
1. Task Failure
任务执行过程中产生的异常和JVM的意外终止会汇报给Application Master。僵死的任务也会被A
- 记一次数据推送的异常解决端口解决
ronin47
记一次数据推送的异常解决
需求:从db获取数据然后推送到B
程序开发完成,上jboss,刚开始报了很多错,逐一解决,可最后显示连接不到数据库。机房的同事说可以ping 通。
自已画了个图,逐一排除,把linux 防火墙 和 setenforce 设置最低。
service iptables stop
- 巧用视错觉-UI更有趣
brotherlamp
UIui视频ui教程ui自学ui资料
我们每个人在生活中都曾感受过视错觉(optical illusion)的魅力。
视错觉现象是双眼跟我们开的一个玩笑,而我们往往还心甘情愿地接受我们看到的假象。其实不止如此,视觉错现象的背后还有一个重要的科学原理——格式塔原理。
格式塔原理解释了人们如何以视觉方式感觉物体,以及图像的结构,视角,大小等要素是如何影响我们的视觉的。
在下面这篇文章中,我们首先会简单介绍一下格式塔原理中的基本概念,
- 线段树-poj1177-N个矩形求边长(离散化+扫描线)
bylijinnan
数据结构算法线段树
package com.ljn.base;
import java.util.Arrays;
import java.util.Comparator;
import java.util.Set;
import java.util.TreeSet;
/**
* POJ 1177 (线段树+离散化+扫描线),题目链接为http://poj.org/problem?id=1177
- HTTP协议详解
chicony
http协议
引言
- Scala设计模式
chenchao051
设计模式scala
Scala设计模式
我的话: 在国外网站上看到一篇文章,里面详细描述了很多设计模式,并且用Java及Scala两种语言描述,清晰的让我们看到各种常规的设计模式,在Scala中是如何在语言特性层面直接支持的。基于文章很nice,我利用今天的空闲时间将其翻译,希望大家能一起学习,讨论。翻译
- 安装mysql
daizj
mysql安装
安装mysql
(1)删除linux上已经安装的mysql相关库信息。rpm -e xxxxxxx --nodeps (强制删除)
执行命令rpm -qa |grep mysql 检查是否删除干净
(2)执行命令 rpm -i MySQL-server-5.5.31-2.el
- HTTP状态码大全
dcj3sjt126com
http状态码
完整的 HTTP 1.1规范说明书来自于RFC 2616,你可以在http://www.talentdigger.cn/home/link.php?url=d3d3LnJmYy1lZGl0b3Iub3JnLw%3D%3D在线查阅。HTTP 1.1的状态码被标记为新特性,因为许多浏览器只支持 HTTP 1.0。你应只把状态码发送给支持 HTTP 1.1的客户端,支持协议版本可以通过调用request
- asihttprequest上传图片
dcj3sjt126com
ASIHTTPRequest
NSURL *url =@"yourURL";
ASIFormDataRequest*currentRequest =[ASIFormDataRequest requestWithURL:url];
[currentRequest setPostFormat:ASIMultipartFormDataPostFormat];[currentRequest se
- C语言中,关键字static的作用
e200702084
C++cC#
在C语言中,关键字static有三个明显的作用:
1)在函数体,局部的static变量。生存期为程序的整个生命周期,(它存活多长时间);作用域却在函数体内(它在什么地方能被访问(空间))。
一个被声明为静态的变量在这一函数被调用过程中维持其值不变。因为它分配在静态存储区,函数调用结束后并不释放单元,但是在其它的作用域的无法访问。当再次调用这个函数时,这个局部的静态变量还存活,而且用在它的访
- win7/8使用curl
geeksun
win7
1. WIN7/8下要使用curl,需要下载curl-7.20.0-win64-ssl-sspi.zip和Win64OpenSSL_Light-1_0_2d.exe。 下载地址:
http://curl.haxx.se/download.html 请选择不带SSL的版本,否则还需要安装SSL的支持包 2. 可以给Windows增加c
- Creating a Shared Repository; Users Sharing The Repository
hongtoushizi
git
转载自:
http://www.gitguys.com/topics/creating-a-shared-repository-users-sharing-the-repository/ Commands discussed in this section:
git init –bare
git clone
git remote
git pull
git p
- Java实现字符串反转的8种或9种方法
Josh_Persistence
异或反转递归反转二分交换反转java字符串反转栈反转
注:对于第7种使用异或的方式来实现字符串的反转,如果不太看得明白的,可以参照另一篇博客:
http://josh-persistence.iteye.com/blog/2205768
/**
*
*/
package com.wsheng.aggregator.algorithm.string;
import java.util.Stack;
/**
- 代码实现任意容量倒水问题
home198979
PHP算法倒水
形象化设计模式实战 HELLO!架构 redis命令源码解析
倒水问题:有两个杯子,一个A升,一个B升,水有无限多,现要求利用这两杯子装C
- Druid datasource
zhb8015
druid
推荐大家使用数据库连接池 DruidDataSource. http://code.alibabatech.com/wiki/display/Druid/DruidDataSource DruidDataSource经过阿里巴巴数百个应用一年多生产环境运行验证,稳定可靠。 它最重要的特点是:监控、扩展和性能。 下载和Maven配置看这里: http
- 两种启动监听器ApplicationListener和ServletContextListener
spjich
javaspring框架
引言:有时候需要在项目初始化的时候进行一系列工作,比如初始化一个线程池,初始化配置文件,初始化缓存等等,这时候就需要用到启动监听器,下面分别介绍一下两种常用的项目启动监听器
ServletContextListener
特点: 依赖于sevlet容器,需要配置web.xml
使用方法:
public class StartListener implements
- JavaScript Rounding Methods of the Math object
何不笑
JavaScriptMath
The next group of methods has to do with rounding decimal values into integers. Three methods — Math.ceil(), Math.floor(), and Math.round() — handle rounding in differen