{"id":19725076,"url":"https://github.com/ran-2012/blockchain-prototype","last_synced_at":"2025-06-20T06:05:20.532Z","repository":{"id":210914849,"uuid":"708260873","full_name":"ran-2012/blockchain-prototype","owner":"ran-2012","description":null,"archived":false,"fork":false,"pushed_at":"2023-12-05T13:06:18.000Z","size":251,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-28T01:18:43.543Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ran-2012.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-10-22T02:28:15.000Z","updated_at":"2023-12-05T13:06:54.000Z","dependencies_parsed_at":"2023-12-05T15:31:37.004Z","dependency_job_id":"dd50c91b-11bf-4af5-837f-bb4d4e315c4a","html_url":"https://github.com/ran-2012/blockchain-prototype","commit_stats":null,"previous_names":["ran-2012/blockchain-prototype"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ran-2012/blockchain-prototype","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ran-2012%2Fblockchain-prototype","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ran-2012%2Fblockchain-prototype/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ran-2012%2Fblockchain-prototype/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ran-2012%2Fblockchain-prototype/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ran-2012","download_url":"https://codeload.github.com/ran-2012/blockchain-prototype/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ran-2012%2Fblockchain-prototype/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260891087,"owners_count":23077906,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-11T23:28:05.361Z","updated_at":"2025-06-20T06:05:15.520Z","avatar_url":"https://github.com/ran-2012.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\r\n## 参考\r\n\r\n- Awesome Java\r\n  https://github.com/akullpp/awesome-java\r\n- Javalin\r\n  https://javalin.io/\r\n\r\n## 外部依赖\r\n\r\n### MongoDB\r\n\r\n- 7.0.2\r\n- https://www.mongodb.com/try/download/community\r\n\r\n### Redis\r\n\r\n- 6.0.16\r\n- https://redis.io/docs/getting-started/installation/install-redis-on-windows\r\n- 注：官方不支持Windows，可以安装在WSL下，或使用社区的Windows build版本。\r\n\r\n## 说明\r\n\r\n- 使用Java 17\r\n- 记得加日志`blockchain.utility.Log`\r\n  - ERROR: 错误\r\n  - WARN：可解决的错误\r\n  - INFO： 重要信息\r\n  - DEBUG： 调试信息\r\n- 函数、变量命名用camelCase.\r\n- 文档注释可以写也可以不写\r\n\r\n### Data\r\n\r\n数据类要求：\r\n- 所有字段必须有默认值，最好不为空\r\n- 所有字段必须能够通过构造函数初始化\r\n- 所有字段需要有相应的getter和setter\r\n- 需要有无参构造函数\r\n- 使用列表时需要用`ArrayList`\r\n\r\n否则在进行数据库存储时会非常麻烦\r\n\r\n## 模块\r\n\r\n### data\r\n\r\n各个模块之前交互需要的数据定义\r\n\r\n### mining\r\n\r\nMiner/transaction相关\r\n\r\n### network\r\n\r\n网络\r\n\r\n### storage\r\n\r\n存储\r\n\r\n### utility\r\n\r\n通用模块\r\n\r\n### wallet\r\n\r\n钱包\r\n\r\n\r\n## 运行\r\n\r\n### 启动节点\r\n\r\n`java -jar main.jar`\r\n\r\n可以设置启动的节点数量和矿工数量：\r\n\r\n`java -jar main.jar 6 2`，6个节点2个矿工\r\n\r\n### 钱包\r\n\r\n显示帮助：\r\n\r\n`java -jar wallet.jar`\r\n\r\n转账：\r\n\r\n`java -jar wallet.jar transfer-idx 0 1 1000`，从账户0转1000到账户1\r\n\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fran-2012%2Fblockchain-prototype","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fran-2012%2Fblockchain-prototype","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fran-2012%2Fblockchain-prototype/lists"}