项目介绍
友情提示
UJava(架构设计)持续更新中~
📚简介
UJava
是一个功能丰富且易用的Java架构设计工具,意在帮助开发者快速、便捷地使用各类设计完成开发任务,以满足各类业务需求。
🎁UJava名称的由来
UJava = U + Java,是基于设计经验的开源库,“U”是You的表示,Java表示语言。UJava谐音“你的语言”,简洁易懂。
🍺UJava理念
UJava
既是一个工具集,也是一个知识库,我们从不自诩代码原创,大多数工具类都是搬运而来,因此:
- 你可以引入使用,也可以拷贝和修改使用,而不必标注任何信息,只是希望能把bug及时反馈回来。
- 我们努力健全中文注释,为源码学习者提供良好地学习环境,争取做到人人都能看得懂。
🛠️包含组件
提供以下组件:
模块 | 介绍 |
---|---|
ujava-common | 通用组件 |
ujava-design | 设计模式 |
ujava-script | 脚本 |
ujava-web | WEB组件 |
可以根据需求对每个模块单独引入,也可以通过引入ujava-all
方式引入所有模块。
📝文档
🪙支持UJava
💳捐赠
如果你觉得UJava不错,可以捐赠请维护者吃包辣条~,在此表示感谢_。
📦安装
🍊Maven
在项目的pom.xml的dependencies中加入以下内容:
<dependency>
<groupId>cn.ujava</groupId>
<artifactId>ujava-all</artifactId>
<version>7.0.0</version>
</dependency>
🍐Gradle
implementation 'cn.ujava:ujava-all:7.0.0'
📥下载jar
点击以下链接,下载ujava-all-X.X.X.jar
即可:
🔔️注意
UJava 3.x支持JDK8+。
🚽编译安装
访问UJava的Gitee主页:https://gitee.com/yangchunjian/ujava 下载整个项目源码(v7-main或v7-dev分支都可)然后进入UJava项目目录执行:
./ujava.sh --install
然后就可以使用Maven引入了。
🏗️添砖加瓦
🎋分支说明
UJava的源码分为两个分支,功能如下:
分支 | 作用 |
---|---|
v7-main | 主分支,release版本使用的分支,与中央库提交的jar一致,不接收任何pr或修改 |
v7-dev | 开发分支,默认为下个版本的SNAPSHOT版本,接受修改或pr |
🐞提供bug反馈或建议
提交问题反馈请说明正在使用的JDK版本呢、UJava版本和相关依赖库版本。
🧬贡献代码的步骤
- 在Gitee或者Github上fork项目到自己的repo
- 把fork过去的项目也就是你的项目clone到你的本地
- 修改代码(记得一定要修改v7-dev分支)
- commit后push到自己的库(v7-dev分支)
- 登录Gitee或Github在你首页可以看到一个 pull request 按钮,点击它,填写一些说明信息,然后提交即可。
- 等待维护者合并
📐PR遵照的原则
UJava欢迎任何人为UJava添砖加瓦,贡献代码,不过维护者是一个强迫症患者,为了照顾病人,需要提交的pr(pull request)符合一些规范,规范如下:
- 注释完备,尤其每个新增的方法应按照Java文档规范标明方法说明、参数说明、返回值说明等信息,必要时请添加单元测试,如果愿意,也可以加上你的大名。
- 新加的方法不要使用第三方库的方法,UJava遵循无依赖原则(除非在extra模块中加方法工具)。
- 请pull request到
v7-dev
分支。UJava在7.x版本后使用了新的分支:v7-main
是主分支,表示已经发布中央库的版本,这个分支不允许pr,也不允许修改。 - 我们如果关闭了你的issue或pr,请不要诧异,这是我们保持问题处理整洁的一种方式,你依旧可以继续讨论,当有讨论结果时我们会重新打开。
⭐Star UJava
📚 Brief Introduction
UJava
is a feature rich and easy to use the best Java architecture design tool **, designed to help developers quickly and easily use various types of design to complete development tasks to meet various business needs.
🎁 The Origin of UJava Names
UJava=U+Java, is an open-source library based on design experience, where "U" represents You and Java represents the language. UJava sounds like "your language", simple and easy to understand.
🍺 UJava philosophy
UJava
is not only a toolset but also a knowledge base. We never claim to be original code, and most tool classes are ported. Therefore:
- You can introduce and use it, as well as copy and modify it, without marking any information, just hoping to provide timely feedback on bugs.
- We strive to improve Chinese annotations and provide a good learning environment for source code learners, striving to make it understandable to everyone.
🛠️ Including components
Provide the following components:
Module | Introduction |
---|---|
UJava common | General components |
UJava design | Design pattern |
UJava script | Script |
UJava web | Web components |
Each module can be introduced separately according to requirements, or all modules can be introduced through the 'uJava all' method. |
📝 Document
📘 Chinese document
📙 Reference API
📦 Install
🍊 Maven
Add the following content to the dependencies of pom.xml in the project:
<dependency>
<groupId>cn.ujava</groupId>
<artifactId>ujava-all</artifactId>
<version>7.0.0</version>
</dependency>
🍐 Gradle
implementation 'cn.ujava:ujava-all:7.0.0'
📥 Download jar
Click on the following link to download 'ujava-all-X.X.X.jar':
-Maven Central Library
🔔 Attention
UJava 3. x supports JDK8+.
🚽 Compile and install
Visit UJava's Gitee homepage: https://gitee.com/yangchunjian/ujava Download the entire project source code (either v7-main or v7-dev branch) and then enter the UJava project directory to execute:
./ujava. sh -- install
Then you can use Maven to introduce it.
🏗 Add bricks and tiles
🎋 Branch Description
The source code of UJava is divided into two branches, with the following functions:
Branch | Function |
---|---|
Main | Main branch, the branch used in the release version, consistent with the jar submitted by the central repository, does not accept any PR or modifications |
Dev | Development branch, defaults to the next version of SNAPSHOT, accepts modifications or pr |
🐞 Provide bug feedback or suggestions
Please provide feedback on the JDK version, UJava version, and related dependency library versions being used.
-Gitee issue
-Github issue
🧬Steps to contribute code
- Fork the project to your own repo on Gitee or Github
- Clone forked past projects, which are also your projects, to your local location
- Modify the code (remember to modify the v7-dev branch)
- After commit, push to your own library (v7-dev branch)
- Log in to Gitee or Github and you will see a pull request button on your homepage. Click on it, fill in some explanatory information, and then submit it.
- Waiting for maintainers to merge
📐 Principles followed by PR
UJava welcomes anyone to contribute code and contribute to it, but the maintainer is an OCD patient. In order to take care of the patient, the PR (pull request) that needs to be submitted meets some standards, as follows:
- The comments should be complete, especially for each newly added method, which should be marked with method description, parameter description, return value description, and other information according to Java documentation specifications. If necessary, please add unit tests, and if desired, you can also add your name.
- Do not use methods from third-party libraries for newly added methods. UJava follows the principle of no dependencies (unless method tools are added in the extra module).
- Please pull the request to the 'v7-dev' branch. UJava has used a new branch after version 7. x: 'v7-main' is the main branch, indicating that a version of the central repository has already been released. This branch does not allow PR or modification.
- If we close your issue or PR, please don't be surprised. This is one way for us to keep the problem handling clean. You can still continue the discussion, and we will reopen it when there are discussion results.