{"repo":"suninformation/ymate-platform-v2","free":true,"listed":false,"github":"https://github.com/suninformation/ymate-platform-v2","clone":"git clone https://github.com/suninformation/ymate-platform-v2.git","description":"YMP是一个非常简单、易用的轻量级Java应用开发框架，涵盖AOP、IoC、WebMVC、ORM、Validation、Plugin、Serv、Cache等特性，让开发工作像搭积木一样轻松！","language":"Java","stars":134,"topics":["jdbc","serv","orm","redis","mongodb","cache","plugin","validation","configuration","web-mvc"],"license":"Apache-2.0","category":"databases-storage","readme_excerpt":"YMP ——轻量级 Java 应用开发框架 A lightweight modular simple and powerful Java application development framework. 一个非常简单、易用的一套轻量级 Java 应用开发框架，设计原则主要侧重于简化工作任务、规范开发流程、提高开发效率，让开发工作像搭积木一样轻松是我们一直不懈努力的目标！ 技术特点（Features） - 采用组件化、模块方式打包，可按需装配，灵活可扩展； - 采用微内核实现 AutoScan、AOP、IoC、Event等，涵盖 SSH 和 SSM 框架中绝大部分核心功能； - 统一配置体系结构，感受不一样的文件资源配置及管理模式； - 整合多种日志系统（Log4j、JCL、Slf4j等）、日志文件可分离存储； - 轻量级持久化层封装，针对 RDBMS（MySQL、SQL Server、Oracle、PostgreSQL）和 NoSQL（MongoDB、Redis）提供支持； - 完善的插件机制，助力于更细颗粒度的业务拆分； - 独特的独立服务（Serv）开发体验； - 功能强大的验证框架，完全基于 Java 注解，易于使用和扩展； - 灵活的缓存服务，支持 EhCache、Redis 和多级缓存（MultiLevel）技术； - 配置简单的 MVC 架构，强大且易于维护和扩展，支持 RESTful 风格，支持 JSP、HTML、Binary、Freemarker、Velocity等多种视图技术； 模块及功能（Modules） YMP 框架主要是由核心（Core）和模块（Modules）组成，整体结构简约、清晰，如图所示： 核心（Core） 核心也称之为应用容器（IApplication），主要负责框架初始化、事件（Events）广播与监听、模块的定义及其生命周期管理、国际化资源管理（I18N）和类对象管理等，其核心功能是对包和类的自动扫描（AutoScan）、对象的生命周期管理、以及反转控制（IoC）、依赖注入（DI）和方法拦截（AOP）等。 点击阅读 配置体系（Configuration） 通过简单的目录结构实现项目开发、维护过程中，对配置文件等各种资源的统一管理，为模块化开发和部署提供灵活的、简单有效的解决方案： - 从开发角度规范了模块化开发流程、统一资源文件的生命周期管理； - 从可维护角度将全部资源集成在整个体系中，具备有效的资源重用和灵活的系统集成构建、部署和数据备份与迁移等优势； - 简单的配置文件检索、加载及管理模式； - 模块间资源共享，模块（modules）可以共用所属项目（projects）的配置、类和jar包等资源文件； - 默认支持对 XML、Properties 和 JSON 配置文件的解析，可以通过 IConfigurationProvider 接口自定义文件格式，支持缓存，避免重复加载； - 配置对象支持 @Configuration 注解方式声明，无需编码即可自动加载并填充配置内容到类对象； - 修改配置文件无需重启服务，支持自动重新加载； - 集成模块的构建（编译）与分发、服务的启动与停止，以及清晰的资源文件分类结构可快速定位； 点击阅读 日志（Log） 基于开源日志框架 Log4J 2 实现，提供日志记录器对象的统一管理，并整合了 JCL、Slf4J等优秀的日志系统，可以在任意位置调用任意日志记录器输出日志，实现了系统与业务日志的分离，同时与 YMP 配置体系模块配合使用，效果更佳。 点击阅读 持久化（P","default_branch":null,"files":null,"tree":[],"storefront":"/r/suninformation","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/suninformation/ymate-platform-v2/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}