# helios
**Repository Path**: physoon/helios
## Basic Information
- **Project Name**: helios
- **Description**: Java后端框架
此框架是在之前pallas框架基础上,加上servlet异步执行机制,并对框架做了拆分(tool+common+core)三大部分组合而成。拆分后框架,减少框架工具类等耦合,借助工具类,可以实现插件扩展。
使用此框架项目:亚马逊广告V1.1
- **Primary Language**: Java
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 3
- **Forks**: 1
- **Created**: 2021-08-13
- **Last Updated**: 2023-07-26
## Categories & Tags
**Categories**: backend
**Tags**: None
## README
gitee地址
https://gitee.com/physoon/helios.git
--helios框架
|--helios-core 框架核心层,应用入口
|--helios-common 应用无关的共用信息,如常量定义、日志处理、错误代码、异常类、通用类CObject等,依赖文件:iptable、system.properties、log4j2.xml
|--helios-tool 框架工具类,比较独立的工程,导出jar包无配置文件依赖。
|--helios-plugin
|--helios-redis
|--helios-mongo 需要初始化数据库配置文件路径,
如:public class AppConst {
public static final String MONGO_CONF = "/config/mongo.properties";
static {
MongoCliDrv.initMongoConfigFile(MONGO_CONF); //初始化 MongoDB 连接配置文件
}
}
|-helios-serv 框架微服务
一、helios-tool 工具包说明
工具包主要是实现跟业务无关的通用函数封装。包括以下工具类:
(1) CheckCodeTool——验证码图形生成工具;
(2) DateTimeTool——日期转化工具类;
(3) EncryptTool——加解密工具类;
(4) ExcelTool——基于 POI 的 Excel读写工具类;
(5) HttpTool——基于 HttpClient 封装的 http请求工具类;
(6) IptableTool——基于纯真IP库封装的IP地址查询工具类,使用前需要调用 initIptable 指定IP库【只需要初始化一次】;
(7) JsonTool——封装 fastjson 对象(JavaBean、Map等)与字符串转化;
(8) Log4j2Tool——封装 log4j2 工具类,使用前需要调用 loadLog42jConfigFile 指定 log4j2.xml 配置文件【只需要初始化一次】;
(9) MailTool ——邮件发送工具类;
(10)PropTool——properties文件读写工具类;
(11)RegularTool——正则工具类,封装了通用如手机号、邮箱等有效性校验接口,使用前需要调用 loadRegularConfigFile 指定默认正则配置文件【只需要初始化一次】;
(12)StreamTool——stream流共用函数,如关闭流、stream转字符串、stream压缩等;
(13)StrTool——字符串转换工具类;
(14)SysTool——系统工具类,如获取系统类型、文本文件操作、文件夹操作、生成随机数、获取byte数组校验和、获取byte数组crc;
(15)TreeTool——构建目录树工具;
二、helios-common 框架通用包
实现衔接 helios-tool 和 helios-core 桥梁,通过 Consts 类,加载system.properties配置参数,并指定工具类 Log42jTool、IpTableTool和RegularTool配置文件。
|-helios-common
|- XmlCodeParaser 错误代码配置表加载和根据错误代码转错误信息【错误配置代码文件路径固定】
|- XmlFunParser 系统和应用接口配置加载及检索【appApi.xml和sysApi.xml 配置文件路径固定】
|- XmlFilterParser 文件访问拦截配置文件加载及调用对应拦截接口,实现url鉴权,需要实现 IFilterObject 接口。【filter.xml 配置文件路径固定】
1、如何引入过滤器实现文件访问鉴权?
方法1: 实现 Filter 接口,并在 web.xml 配置过滤器和对应拦截路径;
方法2: 框架内置实现 Filter 接口,并由 IFilterObject 提供接口对文件访问鉴权,应用只需要实现 IFilterObject 类的 authAccess(String path, String url, String sid) 方法。path是filter.xml里的path值,url是访问的url相对路径,sid是当前会话Id.
步骤: 1.在web.xml 的 FileFilter 下配置拦截路径,如 /upload/doc/*
2.在config/filter.xml配置拦截路径对应配置,如 ,其中 com.aeo.filter.UserDocUtils 类是实现了 IFilterObject authAccess 方法
三、helios-core 框架应用核心
此jar包实现应用常用功能集成,包括通用用户管理、系统鉴权等。
Application类,初始化 IAppDelegate 和 ICorpUserDelegate 接口,实现委托方法调用。
-IAppDelegate 委托方法
|- onAfterEndSession 某次会话结束后被调用
|- onAppInit 应用初始化时被调用
|- onAppFree 应用关闭时被调用
sys_func 表字段 funcs 配置说明
/**
* 最小功能颗粒
* tag参数说明:tag=0表示平台和会员都有的功能;tag=1平台管理员功能;tag=2会员功能;tag=3管理员和会员功能(同0)
* 8位从低到高表示平台功能和企业功能(00000000表示会员与平台都有的功能;
* 目前只使用2位,如00000001[1]表示平台功能;00000010[2]表示会员功能;00000011[3]表示平台和会员都有的功能)
*
*/
[{"id":"qrycorp","title":"企业查询","tag":1},{"id":"delcorp","title":"删除企业","tag":1},{"id":"edtcorp","title":"企业更新","tag":2},{"id":"dtlcorp","title":"企业详情"}]
三、helios-serv 微服务框架
变更日志:
2022.01.21
1、去掉 getmenu 接口,获取用户权限可以用 getfunc ;去掉 regcorp 接口,用户注册时默认添加空白企业信息,可以通过修改企业信息进行设置企业信息。
2、增加用户注册 reguser 接口,注册后的用户,默认为企业管理员。
在用项目
amzAds - 亚马逊广告V1.1版本