精华内容
下载资源
问答
  • 导读:在本篇文章中,我们将区块链剥离到基本部分,并使用Java中的POJO创建一个区块链,我们一起来看一看吧。相信你我都听说过加密货币和区块链,以及它们是如何相互关联的,这是真实的情况。但它们实际上是互相区别...

    导读:在本篇文章中,我们将区块链剥离到基本部分,并使用Java中的POJO创建一个区块链,我们一起来看一看吧。

    ce3cfd7210be27f409ce66b37ca1e88a.png

    相信你我都听说过加密货币和区块链,以及它们是如何相互关联的,这是真实的情况。但它们实际上是互相区别并可以独立存在。加密货币更多的是一种产品,而区块链是一种促进无信任团体间交易的技术

    完整的生产型区块链应用非常庞大且复杂,但它的核心是很简单且功能强大的实现。区块链可以包含一个或多个交易的区块集合。每个块被哈希(散列)化,然后哈希配对,哈希再次配对,并再次哈希,直到单个哈希被保留,形成Merkle根。

    每个块存储前一个块的哈希,并将区块链接在一起。这可确保所有的区块无法被修改块。

    下面我们就用Java,开发最简单的(Hello World)区块链。

    这是Java中的简单块表示(POJO)。它将数据保存为一个字符串,但它可以是任何你可以想象到的,包括以太坊风格的智能合约。代码如下:

    package org.demo;import lombok.Getter;import lombok.ToString;import java.util.Arrays;@Getter@ToStringpublic class Block { private int previousHash; private String data; private int hash; public Block(String data, int previousHash) { this.data = data; this.previousHash = previousHash; // Mix the content of this block with previous hash to create the hash of this new block // and that's what makes it block chain this.hash = Arrays.hashCode(new Integer[]{data.hashCode(), previousHash}); }}

    下面是一个简单的区块链实现,具备基本的验证功能。代码如下:

    package org.demo;import java.util.ArrayList;import java.util.List;public class BlockChain { public static void main(String[] args) { ListblockChainList = new ArrayList<>(); Block genesis = new Block("BlockChain", 0); blockChainList.add(genesis); Block helloBlock = new Block("Hello", blockChainList.get(blockChainList.size()-1).getHash()); blockChainList.add(helloBlock); Block worldBlock = new Block("World", blockChainList.get(blockChainList.size()-1).getHash()); blockChainList.add(worldBlock); Block dZoneBlock = new Block("DZone", blockChainList.get(blockChainList.size()-1).getHash()); blockChainList.add(dZoneBlock); System.out.println("---------------------"); System.out.println("- BlockChain -"); System.out.println("---------------------"); blockChainList.forEach(System.out::println); System.out.println("---------------------"); System.out.println("Is valid?: " + validate(blockChainList)); System.out.println("---------------------"); // corrupt block chain by modifying one of the block Block hiBlock = new Block("Hi", genesis.getHash()); int index = blockChainList.indexOf(helloBlock); blockChainList.remove(index); blockChainList.add(index, hiBlock); System.out.println("Corrupted block chain by replacing 'Hello' block with 'Hi' Block"); System.out.println("---------------------"); System.out.println("- BlockChain -"); System.out.println("---------------------"); blockChainList.forEach(System.out::println); System.out.println("---------------------"); System.out.println("Is valid?: " + validate(blockChainList)); System.out.println("---------------------"); } private static boolean validate(ListblockChain) { boolean result = true; Block lastBlock = null; for(int i = blockChain.size() -1; i >= 0; i--) { if(lastBlock == null) { lastBlock = blockChain.get(i); } else { Block current = blockChain.get(i); if(lastBlock.getPreviousHash() != current.getHash()) { result = false; break; } lastBlock = current; } } return result; }}

    免责声明:本文转载仅作分享,版权归原作者所有。如侵权请联系我们删除!

    展开全文
  • 作为软件行业,尤其是程序员,Mac上都不得不安装一些必备的MAC软件开发工具软件,下面给大家分享一些必装的MAC软件开发工具软件...iOS/Mac 开发众所周知,iOS 和 Mac OS X 的软件开发只能 OS X 系统,就是说如果你...

    087cf023abd0db2b2497660df886f377.png

    作为软件行业,尤其是程序员,Mac上都不得不安装一些必备的MAC软件开发工具软件,下面给大家分享一些必装的MAC软件开发工具软件,以备日后之需,有备无患。

    其中,包含各种语言的主流 IDE、开发辅助、原型工具等,推荐程序员、前端开发、产品经理、架构师们查看,如有不足,欢迎大家留言交流,一起讨论。

    iOS/Mac 开发

    众所周知,iOS 和 Mac OS X 的软件开发只能用 OS X 系统,就是说如果你要成为一个 iOS 开发者或 OS X 开发者,你要有一台 Mac。

    1.Xcode:iOS 和 Mac OS X 开发的"唯一" IDE,功能很强大,支持IOS 8开发。

    2.AppCode:JetBrain出品,除了 Xcode 外另一款比较出名的 iOS 开发 IDE,但似乎没有什么理由不用 Xcode 而用 AppCode,Mac上优秀的OS X 和 iOS开发工具。

    3.PaintCode:iOS矢量绘图编程软件,能够节约大量的编程时间,Mac上优秀的iOS矢量绘图编程软件。

    4.Particle Designer、PhysicsEditor、GlyphDesigner、TexturePacker Pro:这四款工具是 iOS Cocos2D 游戏开发必备的辅助工具

    Cocos2D游戏开发必备的物理编辑工具

    Cocos2D游戏开发必备的粒子效果编辑工具

    Mac上优秀的字体位图生成工具

    程序员必备的纹理地图集工具

    Java 开发

    在 Java 开发中,有三大 IDE:Eclipse、 Netbeans、IntelliJ IDEA,三者都有一定数量的使用者。
    1.MyEclipse: Eclipse自身是免费的,但MyEclipse是基于Eclipse的收费工具,具有更为强大的 Java Web 开发功能,Mac上强大的 Java 集成开发工具。

    2.IntelliJ IDEA: JetBrain出品的 Java IDE,Mac上优秀的 Java 集成开发工具。

    3.Netbeans:Oracle 官方出品的免费Java IDE,大家可到Netbeans官网下载。

    4.JDK:可到 Oracle 官网下载,具体安装可看

    PHP 开发

    1.PhpStorm:JetBrains 出品的一款 PHP 开发工具,Mac上强大的php开发工具。

    2.ZendStudio:Mac上优秀的 php 集成开发环境,另一款很出名的 PHP IDE,不知道二者谁的使用人数更多一些....

    前端开发

    这个前端主要是指 HTML、CSS、JavaScript 了
    1.Dreamweaver:当年的网页三剑客之一

    2.WebStorm:JetBrains出品的JavaScript开发工具,十分强大,(发现JetBrains的开发工具真是多。。。)

    3.CodeKit:Mac上强大的 web 前端开发工具

    版本控制和文件比较

    1.Tower Git:一款优秀的 Git 客户端
    2.Cornerstone、Versions:两款优秀的 SVN 客户端

    4.Kaleidoscope:Mac上强大的图片和文本比较工具

    其他工具

    1.Sublime Text 3:你可以用它编辑各种语言,强大的代码编辑神奇

    2.MAMP Pro:一键安装Apache、MySQL、PHP、Postfix等服务器软件,Mac上专业的本地服务器环境快速搭建工具

    3.Navicat:最好用的数据库客户端

    4.Axure RP:最优秀的网站原型工具

    5.Balsamiq Mockups:很不错的原型草图工具,可以和Axure搭配使用,Mac上优秀的网站和移动原型设计软件

    6.Briefs:最优秀的移动应用原型工具,Mac上强大的移动应用APP原型设计工具

    7.MindManager:最出名的思维导图软件,很经典

    8.OmniGraffle:Omni 出品的文档绘图软件

    9.Dash:API文档管理和代码片段收藏工具,支持Yosemite/iOS 8

    很多正版软件都是要收费的,官网是几十到几百美元不等,建议可以在网上寻找资源,比较齐全丰富,有些是免费的。比如一个资源网站:风云社区SCOEE(http://www.scoee.com),包括各类软件资源,十分齐全。

    展开全文
  • 作为一名Java程序员,日常开发的过程中,我们需要借助很多工具来进行编码。好的工具可以极大的提升程序员的工作效率,今天我们来认识下大多数程序员喜欢的10款软件。持不同意见或有想要补充的小伙伴,欢迎评论区交流...

    作为一名Java程序员,日常开发的过程中,我们需要借助很多工具来进行编码。好的工具可以极大的提升程序员的工作效率,今天我们来认识下大多数程序员喜欢的10款软件。持不同意见或有想要补充的小伙伴,欢迎评论区交流哦~

    VSCODE

    不管你是前端程序员,还是后端程序员,不管你是写JAVASCRIPT,PHP,还是PYTHON等,vscode都是你的绝佳伴侣。在vscode之前,很多人都喜欢sublime,一方面是因为它的极致启动速度,一方面是它的丰富的插件极致,而随着vscode的出现,虽然启动速度相比较sublime少许一筹,但是相比其它IDE可以说还是非常强大的,而且它的插件市场已经超过了sublime。

    ceabdd904f7ed873eb7ef339fbdbd78c.png

    ZEAL / DASH

    zeal和dash是离线API文档,dash是mac专属的离线文档API,而zeal则是windows上的离线文档API。互联网带给我们丰富的咨询的同时,也带给了我们许多扰人的咨询。但你想要断网开发一个软件的时候,ZEAL绝对值得你拥有。它快速模糊匹配的检索功能,可以很方便帮你找到自己想要的文档知识。

    Mockoon

    这是一款提供模拟数据的API接口服务器,可以说开发接口,或者接口测试的时候,它绝对是你不能离开的工具。我们都知道mock.js可以帮助我们拦截ajax生成随机数据,但是毕竟不如直接访问接口简单,有了mockoon,我们可以轻松生成返回数据并提供API接口服务,可以说这才是接近真实的模拟。

    aedeadb5dd34c64519fce9481017fc6e.png

    GitNote

    云笔记有太多了,但是作为程序员,我还是强烈推荐gitnote,从它的名字就能知道,它是基于git的笔记,也就是说我们写笔记可以像代码一样,可以任意还原,而且它支持各个git服务器厂家,无论是国外的github,还是国内的gitee都可以和它结合,有了它,我们再也不需要收费的云笔记了。

    5915be335154d543bf8c71284c34d278.png

    Chrome

    这里没有否定firefox的意思,只是作为程序员,或者说前端工程师,chrome给我们带来的方便简直太赞了。无论是它的丰富的插件,还是它丰富的性能测试,js调试,有了它我们都可以轻松应对。如果说电脑上只能安装一个浏览器的话,那么我的建议一定是chrome。

    8ee4f8162362a70dd8cf3f60187ca461.png

    Everything / Listary

    程序员是最讲究效率的一类人,如何高效率快速地查找文件,答案就是使用everything和listary这两个软件,有了它们,无论你的硬盘文件多么多,多么乱,都可以轻松找到它们,可以说,有了它们windows自带的搜索可以卸载不用了。

    Git

    只要是写代码的人,都应该有一款版本管理工具,而相对于svn,我更推荐使用git,历史已经证明,git绝对是最好用的版本管理工具,如果作为程序员你没使用过git,我是很怀疑你是程序员的身份。

    2879b53bddc88063758d6a1f39081105.png

    Chocolatey / Homebrew

    linux上安装软件非常方便,因为它有自己的仓库,一行命令就可以轻松安装一个软件。那么window和mac上有好用的开发软件仓库吗?答案是肯定的,它们就是chocolately和homebrew,这两个一个是windows上的包管理工具,一个是mac上的包管理工具,平时我们需要的开发工具,都可以轻松从这里下载,而且不在需要担心病毒的问题。

    a0619819e1fd330f42cc154ec56c5c58.png

    vagrant / docker

    容器可以说是目前非常火的技术,我们非常希望我们本地的环境可以服务器的环境一致,非常希望我们本地开发的应用,可以非常便捷,并且非常迅速地部署到服务器上,这个时候,容器的出现就为我们解决了这个问题,而vagrant和docker就是非常好用的容器。

    vim / emacs

    容器可以说是目前非常火的技术,我们非常希望我们本地的环境可以服务器的环境一致,非常希望我们本地开发的应用,可以非常便捷,并且非常迅速地部署到服务器上,这个时候,容器的出现就为我们解决了这个问题,而vagrant和docker就是非常好用的容器。

    6f91d803ba01ef6b53916093109b16aa.png

    好了,以上就是今天分享的使用软件的相关介绍了,希望能给大家带来一定帮助!

    转发+关注后私信我回复【架构资料】即可免费领取全套架构师学习资料

    展开全文
  • Java开发必备要想顺利的开发Java程序,有2个必须要安装的软件:JDK、JRE。JDK(Java Development Kit):Java开发工具包提供了开发中要用到的各种常用工具JRE(Java Runtime Environment):Java运行环境将开发完的Java...

    Java开发必备

    要想顺利的开发Java程序,有2个必须要安装的软件:JDK、JRE。

    JDK(Java Development Kit):Java开发工具包

    提供了开发中要用到的各种常用工具

    JRE(Java Runtime Environment):Java运行环境

    将开发完的Java程序运行到JVM(虚拟机)上。

    5acdfc735ea5

    image.png

    JDK的下载

    JDK中已经包含了JRE,所以不需要单独下载JRE,只下载JDK即可(这里选择JDK8)

    下载地址

    根据自己的操作系统选择对应的版本下载

    5acdfc735ea5

    image.png

    安装须知:

    1、JDK的安装路径不建议包含中文、空格等特殊符号

    2、JDK中已经包含了JRE,因此【公共JRE】是可以不安装的,取消即可。

    JDK安装

    Windows安装

    双击下载好的JDK exe执行文件,去除公共JRE选项,并选择安装到的目标目录,然后点击下一步。

    5acdfc735ea5

    image.png

    配置环境变量

    右击我的电脑 -> 属性 -> 高级系统设置 -> 环境变量 -> 用户变量

    5acdfc735ea5

    image.png

    2.1 新建变量名为:JAVA_HOME,变量值为:JDK的安装目录。

    5acdfc735ea5

    image.png

    2.2 在变量名为Path中,添加JDK的bin目录,%JAVA_HOME%\bin。

    5acdfc735ea5

    image.png

    2.3 确认环境配置成功

    cmd打开ternimal(终端),在控制台分别输入java,javac,java -version 命令,出现JDK的编译器信息,包括修改命令的语法和参数选项等信息,说明环境搭建成功。

    若出现如下提示,则说明环境搭建失败,需检查安装目录和环境变量配置是否正确。

    5acdfc735ea5

    image.png

    Mac安装

    双击下载好的JDK dmg安装文件,再次双击JDK 8 update.pkg 包。点击继续,直到弹出输入电脑密码的输入框,输入密码,并确认,安装完成。

    5acdfc735ea5

    image.png

    确认安装成功

    打开ternimal(终端),在控制台分别输入java,javac,java -version 命令,出现JDK的编译器信息,包括修改命令的语法和参数选项等信息,说明环境搭建成功。

    开发工具安装

    常见的Java开发工具有:NetBeans、Eclipse、MyEclipse、IntelliJ IDEA

    目前企业中用得最多的Java IDE是Eclipse、IntelliJ IDEA

    Eclipse安装

    最新版的Eclipse已经不支持32bit,旧版本的Eclipse才支持32bit

    最新版下载地址

    旧版32bit下载地址

    JavaSE阶段,选择【Eclipse IDE for Java Developers】版本即可

    5acdfc735ea5

    image.png

    安装须知:

    1、Eclipse的解压路径不建议包含中文、空格等特殊符号

    2、可以考虑跟JDK放在同一目录

    Windows

    下载完毕后,Eclipse是个zip压缩包,直接解压即可使用。

    Mac

    下载完毕后,直接双击,然后一直点Next安装,即可。

    展开全文
  • 该楼层疑似违规已被系统折叠隐藏此楼查看此楼用mac开发java 数据库用oracle 11G在mac用工具(sqldeveloper)连接oracle没有问题,但用java程序就报错ache.commons.dbcp.SQLNestedException: Cannot create ...
  • java开发mac基础

    2019-09-16 16:31:20
    换了mac,到现在还的不是很习惯,今天又整了很久配置。...1, macjava开发神器intellij idea,运行速度相当流畅,秒杀eclipse。 command+, 修改各种设置。mac下大部分软件都是这个快捷键。 修改...
  • 前言本篇文章介绍在mac系统下如何搭建java开发环境,有了java的开发环境,我们就可以做Java相关的开发了,因为java程序需要JVM(虚拟机)才能运行,而编写一个java程序需要JDK。希望可以给用mac的开发人员一些帮助。1...
  • 系统:macbook pro 10.10.2 OS X Yosemite1.JDK我使用的1.7.79(2)设置环境变量1) 打开终端,sudo vi /etc/profile vim打开 etc下的profile文件2) i键进入编辑模式文件属部加入MAVEN_HOME=/Users/taoyutong/...
  • 用Mac进行开发之前,建议浏览以下几个概念。 1. 几个基础概念 - 计算机  计算机(computer)俗称电脑,发明者是约翰·冯·诺依曼,计算机是现代一种用于高速计算的电子计算机器,可以进行数值计算,又可以...
  • 2 mac中jdk1.7的默认位置:/Library/Java/JavaVirtualMachines/jdk1.7.0_40.jdk/Contents/Home配置JAVA_HOME:用户目录下opne .bash_profile 如果没有这个文件可以自己创建一个可以了解下mac下的配置文件./etc/...
  • 今天介绍一下Java相关的配置 Java官网下载:http://www.oracle.com/technetwork/java/javase/downloads/index.html 我这儿下载的是Java SE 8u101 ,记得选macOS的dmg格式 Tomcat官网下载:http:...
  • Macjava开发工具

    千次阅读 2019-05-18 00:31:09
    换了新工作,东家提供MacBook,告别Windows开启Mac开发生涯,了2月发现Mac确实更适合开发。 1.运行更快。 2.文件结构和Linux相同,更贴近服务器部署,熟练命令的使用。 古人说已有能勿自私,独乐不如众乐乐,所以...
  • Mac Java开发环境配置

    2020-12-20 14:44:16
    对于新Mac用来开发,我们还是要先对其进行一些配置,方便我们使用和提高效率 开发环境 brew 由于一些原因,官方的命令我们无法执行,可以下面这个进行安装,该命令同时还会配置源 /bin/zsh -c "$(curl -fsSL ...
  • 本人平日以后端开发为主业,最近对移动的应用层开发有些兴趣,尝试一下,记录于此。欢迎批评指正。1、下载Android SDK各平台各版本的SDK下载地址:http://developer.android.com/sdk/index.html2、安装Eclipse各平台...
  • 一.Java开发,mac、pro要什么配置好?一般为13寸定制16g256,外接显示器,方便携带又兼顾性能,至于散热,放心,因为散热好,所以摸着才热。如果你不想外接,就15寸吧,程序开发标准版就够。二.macbook pro下配置...
  • Mac配置java开发环境

    千次阅读 2019-04-27 23:16:39
    周说这辈子一定要体验一下Mac系统,所以就买了,想看一下是不是真的这么好用。 对于没用过苹果系统的我来说还是比较陌生的。和window操作系统有很大的差异, 之前一直不能理解周说触控板多么好用。了一天感受...
  • 今天介绍一下Java相关的配置 Java官网下载:http://www.oracle.com/technetwork/java/javase/downloads/index.html 我这儿下载的是Java SE 8u101 ,记得选macOS的dmg格式 Tomcat官网下载:http:...
  • 之前一直是windows搞android开发,但windows这个性能也真是让人醉了,终于一狠心,砸锅卖铁买了Mac。然后就开始在Mac上搭建android开发环境,其实也不麻烦,关键是找准下载地址就行了,今天特意记录下来搭建过程,...
  • Mac下 配置sublime java开发环境

    千次阅读 2016-11-20 17:28:57
    Mac下 配置sublime java开发环境配置前 先安装sublime,java,7zip打开sublime 目录 找到Java.sublime-packagecd /Applications/Sublime Text.app/Contents/MacOS/Packages 创建一个目录 来临时编译文件mkdir java ...
  • 之所以选择kepler版本是因为发现这个版本下写C++程序没有报错,我一开始的是juno的C++版本,写一个HelloWorld程序发现using namespace std,cout和endl总是报错,但是并不影响运行和调试,但是kepler版本就没有...
  • 一.Eclipse的下载找到“Eclipse IDE for java Developers”此处右上角会根据你当前使用的系统自动选择,Mac下就会自动选择位“Mac OS X(Cocoa)”然后点击右边的“Mac OS X 64bit”(这里我的Pro是i5处理器可以64位...
  • https://www.jianshu.com/p/53afed9941e9http://www.java1234.com/javaxuexiluxiantu.htmltomcat 安装和配置参考:https://www.cnblogs.com/ostrich-sunshine/p/8414691.html从未接触过java, 第一尝试用mac 端的...
  • JAVA言语编程读取MAC地址的完成本文引见如何在WindowXP/NT/2000环境中,编写纯Java程序,执行外部命令IPCONFIG,并经过剖析该命令的输入流而获得本机的MAC地址的编程方法。1 引言用Java编写的程序,可能很方便地...
  • mac java开发环境配置

    千次阅读 2015-07-17 15:29:39
    系统:macbook pro 10.10.2 OS X Yosemite 1.JDK (1) http://www.oracle.com/technetwork/java/javase/archive-139210.html 我使用的1.7.79 ... 1) 打开终端,sudo vi /etc/profile vim打开 etc下的profi
  • 1 引言用Java编写的程序,可以很方便地运行在各种平台的环境。但在实际的开发过程中,有时不得不...正是针对该问题,提出一种直接Java语言,读去MAC地址的编程方法。我们知道,在每一个Java应用程序中都存在着...
  • //Java获得CPU序列号和网卡Mac地址/*利用Runtime call操作系统的命令,具体的命令取决于不同的操作系统,注意不要调用Runtime.getRuntime().exec(String)接口,要Runtime.getRuntime().exec(String[])这个接口,...
  • 找到“Eclipse IDE for java Developers”此处右上角会根据你当前使用的系统自动选择,Mac下就会自动选择位“Mac OS X(Cocoa)”2.然后点击右边的“Mac OS X 64bit”(这里我的Pro是i5处理器可以64位的),根据你的...
  • 1.JDK:java开发工具 2.JRE:java运行时环境 3.JVM:java虚拟机 JDK中已包含了JRE与JVM,因此只需要安装JDK即可。 MAC端JAVA环境搭载 下载JDK8(较为主流版本)官网下载地址,选择MAC版本下载,需要注...
  • 关于压测工具,之前了解过loadrunner、jmeter,因为设备是mac,loadrunner有一些不支持,jmeter起来比较简洁些,以后可能会需要写java脚本的。 所以就先再熟悉熟悉java吧,为什么“再”字,大学时候有这门课程...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,026
精华内容 410
关键字:

java开发用mac

java 订阅