2 Star 2 Fork 4

alinesno-infrastructure / alinesno-infra-common

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
Apache-2.0

alinesno-infra-common

集成的进度情况

通过此工程集成公共包验证和示例,用于更好的调试核心包的功能并用于对外服务,集成下面的功能进度情况,同时提供出对应的公共接口验证和调试

父类集成

父类通过可配置的变量进行集成管理,即通过传递参数变量来进行各个环境之前的转换区分

序号 分类 功能 说明 进度 备注
1 集成能力 Nexus仓库集成 将Nexus仓库集成到系统中,用于管理和存储软件包、依赖项等。
2 集成revision统一版本号 在系统中集成revision统一版本号功能,确保软件包和依赖项的版本号一致性。
3 集成镜像仓库一键打成容器镜像 将系统集成到镜像仓库中,并提供一键打包成容器镜像的功能。,方便部署和扩展。
4 集成非root账号运行 非root账号运行可以降低系统受到攻击的风险,并限制对系统资源的访问权限。

配置中心

core基础功能

以下是对每个模块的功能和说明的补充:

序号 模块 功能 说明 进度 备注
1 能用能力 分布式框架 结合微服务框架,使用合适的身份验证机制。
2 公共依赖包(配置/公共代码) 包含配置文件和公共代码,供其他模块使用。
3 服务容器化 将服务容器化,使其能够在容器环境中运行。
4 代码生成器 自动生成代码,提高开发效率。
5 MyBatis操作集成 集成MyBatis框架,方便数据库操作。
6 按钮权限 根据用户权限控制按钮的显示与隐藏。
7 单点登录 实现用户在多个系统中只需登录一次即可访问其他系统。
8 租户集成 支持多租户的系统架构,使不同租户的数据相互隔离。
9 多服务集成 将多个服务集成到一个系统中,实现功能的整合和共享。
10 前端集成 将前端代码集成到后端系统中,实现前后端的协同开发。
11 多平台发布集成 支持在多个平台上发布系统,如Web、移动端等。
12 本地调试 提供本地调试环境,方便开发人员进行调试和测试。
13 异常处理 统一处理系统中的异常,提高系统的健壮性和容错性。
14 日志处理 记录系统运行时的日志信息,便于故障排查和系统监控。
15 页面搜索 实现对系统中各个页面的搜索功能,方便用户查找信息。
16 Redis缓存使用 使用Redis作为缓存,提高系统的性能和响应速度。
17 分布式Redis缓存使用 在分布式环境下使用Redis作为缓存,支持多个节点之间的数据同步和共享。
18 系统日志 记录系统的操作日志和事件日志,用于审计和追踪系统行为。
19 消息使用 实现系统内部的消息传递和通信,支持异步处理和解耦。
20 日志埋点 在系统中埋点记录关键操作和事件,用于分析统计和业务监控。
21 SwaggerUI文档 使用SwaggerUI生成接口文档,方便开发人员查看和调试接口。
22 多数据库源 支持连接多个不同类型的数据库,实现对多个数据库的操作。
23 配置加密 对敏感配置信息进行加密处理,保护系统的安全性。
24 表单提交校验 对用户提交的表单数据进行校验,确保数据的合法性和完整性。
25 Excel导入/导出 支持将数据导入到系统或从系统导出数据到Excel文件。
26 文件上传 实现用户上传文件的功能,存储和管理用户上传的文件。
27 XSS攻击防护 防止系统受到跨站脚本攻击,保护用户的信息安全。
28 多数据源分库分表(读写分离) 支持将数据分布在多个数据库中,实现读写分离和数据的水平扩展。
29 多数据源动态加载卸载 支持动态加载和卸载数据源,方便系统对多个数据源的管理和切换。
30 多数据源事务( jta atomikos) 支持在多数据源的情况下进行事务管理,保证数据的一致性和完整性。
31 CDN配置 配置CDN加速服务,提高系统的访问速度和稳定性。
32 多种环境部署 支持在不同的环境中部署系统,如开发环境、测试环境和生产环境等。
33 分布式ID 生成分布式环境下唯一的ID,用于标识和区分不同的数据和实体。
34 基类能力 通用API 提供通用的API接口,供其他模块进行调用和扩展。
35 通用CURD 实现通用的增删改查操作,简化数据操作的代码编写。
36 通用Service 提供通用的业务逻辑处理功能,减少重复代码的编写。
37 通用Mapper 提供通用的数据库操作方法,简化数据库操作的代码编写。
38 Junit基础类 提供基础的Junit测试类,方便进行单元测试和集成测试。
39 ORM基础类 封装ORM框架的基础类,简化数据库操作的代码编写。
40 Entity基础类 定义实体类的基础结构和属性,用于数据的存储和传输。
41 PO基础类 定义持久化对象的基础结构和属性,用于与数据库进行交互。
42 VO基础类 定义视图对象的基础结构和属性,用于展示数据给用户。
43 Exception基础类 定义异常类的基础结构,用于系统中的异常处理和错误提示。
44 Service基础类 定义业务逻辑处理类的基础结构,提供通用的业务处理方法。
45 Mapper基础类 定义数据库操作类的基础结构,提供通用的数据库操作方法。
46 分页基础类 封装分页查询的基础类,方便进行分页查询操作。
47 日志基础类 定义日志记录类的基础结构,用于记录系统运行时的日志信息。
48 基础通用常量 定义系统中使用的常量,提高代码的可读性和可维护性。
49 获取Context上下文 提供获取系统上下文信息的方法,方便在代码中获取和使用上下文信息。

web集成

包含公共组件集成

序号 类型 功能 说明 进度 备注
1 通用集成 普通JWT前后端登录 确保只有经过身份验证和授权的用户才能访问敏感接口API。使用合适的身份验证机制。
2 单点登录 实现用户在多个系统中的统一登录,避免重复登录的问题。
3 菜单权限集成 将菜单权限与用户角色关联,控制用户在系统中的菜单访问权限。
4 权限注解 通过在方法或类上添加注解,实现对接口或方法的权限控制。
5 数据权限 控制用户对数据的访问权限,确保用户只能访问其具备权限的数据。
6 参数和代码集成 对参数进行验证和处理,确保参数的合法性和安全性。
7 CORS集成 实现跨域资源共享,允许不同域名下的前端应用访问后端接口。
8 黑白名单路径请求 根据请求路径进行黑名单或白名单的过滤,限制或允许特定的请求。
9 安全验证码集成 集成验证码功能,用于防止恶意机器人或自动化攻击。
10 前端异常 捕获和处理前端应用的异常,提供友好的错误提示和日志记录。
11 公共前端返回对象 定义和封装前端应用的公共返回对象,统一的数据结构和格式。
12 数据请求分页 对数据查询请求进行分页处理,返回分页结果给前端应用。
13 代码过滤转换 对请求或响应的代码进行过滤和转换,确保安全性和合规性。
14 会话管理 管理用户的会话状态,实现用户登录状态的保持和管理。
15 公共API 提供一些通用的API接口,如文件上传、短信发送等功能。
1 模块集成 代码转换插件机制 提供代码转换的插件机制,用于在编译或运行时对代码进行转换和增强。
2 获取当前用户注解制 提供注解方式获取当前登录用户的信息,方便在代码中获取用户上下文。
3 存储接口集成 集成存储接口,用于对数据进行持久化存储和访问。
4 非存储接口集成 集成非存储接口,用于与外部系统进行交互和通信。
5 通知组件集成 集成通知组件,用于发送和接收系统内部或外部的通知消息。
6 分布式ID集成 集成分布式ID生成器,确保在分布式环境下生成唯一的ID。

安全过滤

序号 类型 功能 说明 进度 备注
1 接口安全 接口API数据加密和解密 对接口API的数据进行加密和解密,确保数据在传输和存储过程中的安全性。
2 接口API的限流配置 针对接口API的请求量进行限制,防止恶意请求和过载情况对系统造成影响。
3 接口API的文件上传安全限制 对接口API的文件上传进行安全限制,包括文件类型、大小、文件名等的验证和限制。
4 接口API的防重复提交 防止接口API被重复提交,避免重复操作和数据不一致的问题。
5 接口API的防SQL注入/防XSS攻击 针对接口API的输入进行过滤和验证,防止SQL注入和跨站脚本攻击。
6 接口API的全加密交互 对接口API的请求和响应进行全程加密,确保数据在传输过程中的机密性和完整性。
7 接口API防越权配置 控制用户对接口API的访问权限,防止越权访问和未授权操作。
8 身份验证和授权 确保只有经过身份验证和授权的用户才能访问敏感接口API。使用合适的身份验证机制。
9 强化密码策略 对于涉及用户密码的接口API,实施强密码策略,包括密码复杂性要求。
10 输入验证和过滤 对于接收用户输入的接口API,确保进行输入验证和过滤,以防止恶意输入和攻击。
11 安全漏洞扫描 定期进行安全漏洞扫描和代码审查,以发现和修复潜在的安全漏洞和弱点。
12 异常处理和错误信息 在接口API中,避免向用户返回具体的错误信息,以防止信息泄露和攻击者利用这些信息。
1 数据安全 数据存储安全,包括数据库字段和数据显示 对数据库中的数据进行安全存储,包括对敏感字段的加密和对数据的安全显示。
2 数据审计(对账) 对数据进行审计和对账,确保数据的完整性和一致性,并监测潜在的安全问题。
3 数据敏感词过滤 对数据进行敏感词过滤,防止敏感信息的泄露和不当使用。
4 数据范围(数据权限) 控制用户对数据的访问权限,确保用户只能访问其具备权限的数据。
5 表结构自动维护 自动维护数据库表结构的变更,包括新增、修改、删除表字段等操作。
6 字段数据绑定(字典回写) 将数据字段与字典进行绑定,实现数据的字典回写和显示。
7 虚拟属性绑定 将虚拟属性与数据字段进行绑定,实现数据的动态计算和展示。
8 字段加密解密 对字段进行加密和解密操作,确保敏感数据在存储和传输过程中的安全性。
9 字段脱敏 对字段进行脱敏处理,隐藏敏感信息的具体内容,保护用户隐私。
10 字段加密解密 对字段进行加密和解密操作,确保敏感数据在存储和传输过程中的安全性。
11 字段脱敏 对字段进行脱敏处理,隐藏敏感信息的具体内容,保护用户隐私。
1 其它 日志输出打印安全,主要包括加密和数据配置 对系统日志进行安全处理,包括加密敏感信息和配置适当的日志级别。
2 日志和监控 记录和监控接口API的访问日志,包括请求和响应数据,以便追踪和分析潜在的安全问题。
3 双因子认证安全,主要集成TOPT安全 实现双因子认证的安全机制,提供额外的身份验证保护。

前端ui核心包

此为登陆前端框架默认集成功能(同时配置后台实现)

序号 类型 功能 说明 进度 备注
1 桌面端组件 界面布局 统一界面布局管理和配置
2 文件上传 提供用户上传文件的功能
3 菜单列表 显示可用的菜单选项供用户选择
4 切换缓存 允许用户切换缓存以提高系统性能
5 自定义主题 允许用户自定义系统的界面主题
6 临时锁屏 提供临时锁屏功能,保护用户的数据安全
7 图片查看 允许用户查看图片文件
8 分页列表 显示分页列表,方便用户浏览和导航大量数据
9 服务支持列表 显示可用的服务支持选项供用户选择
10 平台功能介绍 显示平台的功能介绍信息
1 账号密码登陆 允许用户使用账号密码进行登陆
2 验证码开关 允许用户开启或关闭验证码功能
3 通知公告 提供通知公告功能,向用户发送重要信息
4 平台教程列表 显示平台的教程列表,帮助用户了解和使用系统
5 登陆次数限制 对用户的登陆次数进行限制
6 登陆次数限制时间 设置用户登陆次数限制的时间间隔
7 登陆IP限制 对用户的登陆IP进行限制
8 登陆IP限制时间 设置用户登陆IP限制的时间间隔
9 自定义登陆域名 允许用户自定义登陆页面的域名
10 手机验证码登陆 允许用户使用手机验证码进行登陆
11 微信绑定登陆 允许用户使用微信账号进行登陆
12 自定义logo 允许用户自定义系统的logo
13 自定义banner 允许用户自定义系统的banner
14 自定义企业信息 允许用户自定义系统中显示的企业信息
15 自定义企业说明 允许用户自定义系统中显示的企业说明
16 自定义版权信息 允许用户自定义系统中显示的版权信息
17 自定义团队信息 允许用户自定义系统中显示的团队信息
18 自定义登陆标题 允许用户自定义登陆页面的标题
19 获取系统配置 获取系统的配置信息
20 获取参数字典 获取系统中定义的参数字典
21 获取当前用户 获取当前登陆用户的信息
22 异常处理 处理系统中发生的异常情况
23 内容复制 提供复制内容的功能
24 使用图标 使用图标来增加系统界面的美观和易用性
25 权限使用 根据用户的权限控制系统中的功能访问
26 多级目录 支持多级目录结构,方便用户组织和管理系统功能
27 Request工具类 提供封装的HTTP请求工具类,简化前端与后端的数据交互
28 SessionStorage工具类 提供封装的SessionStorage操作工具类,方便前端存储和读取数据
29 Cookie工具类 提供封装的Cookie操作工具类,方便前端存储和读取Cookie数据
30 LocalStorage工具类 提供封装的LocalStorage操作工具类,方便前端存储和读取本地数据
31 用户信息编辑 允许用户编辑和更新自己的个人信息
32 用户头像修改上传 允许用户修改和上传自己的头像图片
33 登陆日志 记录用户的登陆日志,方便管理员查看登陆历史记录
34 在线会话管理 管理用户的在线会话,包括查看和终止用户的会话
35 异常登陆拦截 拦截异常的登陆行为,保护系统的安全
36 踢人下线 强制将指定用户下线,保护系统的安全
37 最大登陆会话 设置用户最大允许的同时登陆会话数
38 最长登陆时间 设置用户登陆会话的最长有效时间
39 单点登陆 支持单点登陆,用户只需登陆一次即可访问多个相关系统
40 单点退出 支持单点退出,用户退出一个系统后同时退出其他相关系统
41 登陆条款编辑 允许管理员编辑和更新登陆条款
42 登陆隐私政策编辑 允许管理员编辑和更新登陆隐私政策
43 登陆隐私政策编辑 允许管理员编辑和更新登陆隐私政策
44 邮件二次登陆 允许用户通过邮件进行二次登陆
45 令牌二次认证 允许用户使用令牌进行二次认证
46 登陆数据加密 对用户的登陆数据进行加密保护
47 记住我安全加密 对“记住我”功能中的用户信息进行安全加密
48 钉钉/微信扫描登陆 允许用户使用钉钉或微信扫描二维码进行登陆

其它

鸣谢

  • 集成alinesno-cloud-service核心工程结构
  • 构建代码参考了dubbo代码
  • 集成ruoyi-vue/ruoyi-vue-plus核心工程包模块
  • ......
Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright [yyyy] [name of copyright owner] Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

简介

核心框架集成公共和通用的公共包能力,达到核心框架包可拆分可依赖,可集成的目的,通过集成核心框架,形成基础的核心能力。 展开 收起
Java 等 2 种语言
Apache-2.0
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/alinesno-infrastructure/alinesno-infra-common.git
git@gitee.com:alinesno-infrastructure/alinesno-infra-common.git
alinesno-infrastructure
alinesno-infra-common
alinesno-infra-common
main

搜索帮助

344bd9b3 5694891 D2dac590 5694891