개요


201612242132437937.png

YMP는 매우 간단하고 사용하기 쉬운 경량 JAVA 애플리케이션 개발 프레임워크입니다. 설계 원칙은 주로 작업 단순화, 개발 프로세스 표준화, 개발 효율성 향상 및 개발 작업을 구축만큼 쉽게 만드는 데 중점을 둡니다. 이것이 우리가 끊임없이 노력해 온 목표입니다!

주요 기술 기능

  • 컴포넌트화 및 모듈식 패키징 방식을 채택하고 필요에 따라 조립할 수 있으며 유연하고 확장 가능합니다.

  • 마이크로커널을 사용하여 대부분의 SSH를 다루는 Autoscan, AOP, IoC, 이벤트 등을 구현합니다. 프레임워크 일부 핵심 기능

  • 통합 구성 아키텍처, 다양한 파일 리소스 구성 및 관리 모드 경험

  • 여러 로그 시스템(log4j, jcl, slf4j) 통합, 로그 파일을 별도로 저장할 수 있음; 지속성 계층 캡슐화, RDBMS(MySQL, SQLServer, Oracle 등) 및 NoSQL(MongoDB, Redis 등) 지원 제공

  • 보다 세분화된 비즈니스 분할을 용이하게 하는 완전한 플러그인 메커니즘

  • 고유하고 독립적인 서비스 개발 경험;

  • 완전히 Java 주석을 기반으로 하며 사용 및 확장이 쉬운 강력한 검증 프레임워크

  • EhCache, Redis 및 다중 레벨 캐시(MultiLevel) 기술을 지원하는 유연한 캐싱 서비스;

  • 간단한 MVC 아키텍처를 구성하고, 강력하고 유지 관리 및 확장이 쉽고, RESTful 스타일을 지원하고, JSP, HTML, Binary, Freemarker, Velocity 및 기타 뷰 기술을 지원합니다.

  • 모듈 및 기능

  • YMP 프레임워크 주로 프레임워크 코어(Core)와 여러 모듈(Modules)로 구성됩니다. 전체 구조는 그림과 같이 매우 간단하고 명확합니다.

프레임워크 코어(Core)

201612242130392832.png가 주로 담당합니다. 초기화 및 모듈 로딩 및 수명주기 관리 기능은 다음과 같습니다.

클래스 개체 관리자: Bean 수명주기 관리, 종속성 주입 및 메서드 차단과 같은 패키지 클래스 및 기능의 자동 검색을 제공합니다.

이벤트 서비스: 이벤트 등록 및 이벤트 작업을 트리거하고 모니터링하는 브로드캐스팅 방식이며 이벤트 큐의 동기 및 비동기 실행의 두 가지 모드를 지원합니다.

    모듈: YMP 프레임워크의 모든 기능 기능을 캡슐화하는 기본 형식이며 이벤트 큐의 수명 주기 관리를 담당합니다.
  • 국제 리소스 관리자: 통합 리소스 파일 로드, 삭제 및 콘텐츠 읽기를 제공하고, 언어 변경에 대한 사용자 정의 리소스 로드 및 이벤트 모니터링을 지원합니다.
  • 또한, 필요한 사용자 정의 데이터 구조 세트와 다양한 도구 클래스를 제공합니다.
  • 구성 시스템
간단한 디렉토리 구조를 통해 프로젝트 개발 및 유지 관리 중에 구성과 같은 다양한 파일 리소스의 통합 관리가 가능하며 모듈식 개발 및 관리를 위한 유연하고 간단하며 효과적인 솔루션을 제공합니다. 배포. :
  • 모듈식 개발 프로세스 및 통합 리소스 파일 관리를 표준화합니다.
  • 효과적인 리소스 재사용 및 유연한 시스템 통합 구축, 배포, 데이터 백업 및 마이그레이션의 이점을 갖습니다.
  • 간단한 구성 파일 검색, 로드 및 관리 모드; 모듈 간에는 모듈이 속한 프로젝트의 구성, 클래스 및 jar 패키지와 같은 리소스 파일을 공유할 수 있습니다.
  • 기본적으로 XML 및 속성 구성 파일 구문 분석을 지원하고 IConfigurationProvider 인터페이스를 통해 파일 형식을 사용자 정의할 수 있으며 캐싱을 지원합니다.
  • 구성 개체는 주석 선언을 지원하며 구성 콘텐츠는 코딩 없이 자동으로 로드되어 클래스 개체에 채워질 수 있습니다.
  • 통합 모듈 구성 및 배포, 서비스 시작 및 중지*, 명확한 리소스 파일 분류 구조가 신속하게 가능합니다.
Log
오픈 소스 로그 프레임워크인 Log4J 2를 기반으로 구현되어 모든 위치에서 호출하여 로그를 출력할 수 있어 시스템 로그와 비즈니스 로그의 분리가 가능합니다. apache-commons-logging 로깅 프레임워크 및 slf4j 로깅 시스템이 지원을 제공합니다.

Persistence(지속성)
JDBC
주로 데이터 액세스에 중점을 둔 관계형 데이터베이스(RDBMS) 데이터 액세스를 위한 간단한 솔루션입니다. 사용 용이성과 투명성은 다음과 같은 기능적 특성을 가지고 있습니다.

JDBC 프레임워크 API 기반의 경량 패키징, 간단한 구조, 손쉬운 개발, 디버그 및 유지 관리
  • 최적화된 배치 데이터 업데이트, 표준화된 결과 세트, 사전 컴파일 SQL;
  • SQL 문을 작성하지 않고도 단일 엔터티 ORM 작업을 지원합니다.
  • 데이터 엔터티 클래스를 빠르게 생성하고 체인 호출을 지원하는 스캐폴딩 도구를 제공합니다.
  • 구성 파일 SQL에서 로드를 통해 SQL 문을 사용자 정의하고 자동으로 실행합니다.
  • 결과 세트 및 값 개체의 자동 어셈블리를 지원하고 사용자 정의 어셈블리 규칙을 지원합니다.
  • 다양한 데이터 소스를 지원하고, 기본적으로 C3P0, DBCP, JNDI 연결 풀 구성을 지원하며,
  • 다양한 데이터 소스를 지원합니다. 데이터베이스(예: Oracle, MySQL, SQLServer 등)
  • 프로그램 컴파일 오류를 줄이거나 줄이는 데 도움이 됩니다.
  • 데이터베이스 저장 프로시저 지원;
  • MongoDB
MongoDB의 데이터 접근 연산의 특징을 목표로 JDBC 모듈의 설계 컨셉으로 간단히 캡슐화하고, 세션 메커니즘을 채택하며, 다중 데이터 소스 구성 및 엔터티 연산, 객체 기반 쿼리, MapReduce, GridFS, 집계 및 함수 표현 통합 등은 여전히 ​​더 개선되고 개선되어야 합니다. 문서가 컴파일되고 있으므로 계속 지켜봐 주시기 바랍니다...
Redis

는 Jedis 드라이버 캡슐화를 기반으로 하며 세션 메커니즘을 채택합니다. 여러 데이터 소스 및 연결 풀 구성을 지원하며 여전히 개선이 필요하며 추가 개선 및 개선이 이루어지고 문서도 정리 중이므로 계속 지켜봐 주시기 바랍니다...
Plugin

은 독립적인 ClassLoader 클래스 로더를 사용하여 개인용 JAR 패키지, 클래스, 리소스 파일 등을 관리합니다. 설계 목표는 인터페이스 개발 모드에서 요구 사항을 더 세밀하게 분할하여 이상을 달성하는 것입니다.

각 플러그인은 외부 세계와 통신하는 유일한 방법은 이러한 플러그인을 관리하는 컨테이너를 플러그인 팩토리라고 합니다. 플러그인 분석, 로딩 및 초기화, 플러그인 라이프사이클 관리를 담당합니다. 플러그인 모듈은 여러 플러그인 팩토리 인스턴스 생성을 지원합니다. 팩토리 객체는 완전히 독립적이며 종속성이 없습니다.

Service(Serv)

NIO 기반 구현 집합 통신 서비스 프레임워크는 TCP 및 UDP 프로토콜의 클라이언트 및 서버 캡슐화, 유연한 메시지 모니터링 및 메시지 내용 인코딩/디코딩을 제공하며 간단한 구성으로 2차 개발이 더 편리합니다.

동시에 기본적으로 연결 해제 및 연결을 제공합니다. 도로 유지 관리(하트비트) 및 기타 서비스 지원을 제공하므로 비즈니스를 이해하기만 하면 개발 작업을 쉽게 완료할 수 있습니다.

Validation

서버 측 매개변수 유효성 검증 도구는 주석 선언을 사용하여 보다 간단하고 직관적이며 친숙한 검증 규칙을 구성하며, 메서드 매개변수 및 클래스 멤버 속성 검증을 지원하고 검증 결과의 국제화를 지원합니다. I18N 리소스 바인딩, 사용자 정의 유효성 검사기 지원 및 다중 확인 모드 지원

Cache(Cache)

는 EhCache를 기본 JVM 프로세스 내 캐시 서비스로 사용하고 외부 Redis 서비스를 통합하여 다중 레벨 캐싱(MultiLevel)을 실현합니다. 크기 캐싱 프레임워크 및 YMP 프레임워크와의 긴밀한 통합(클래스 메소드에 대한 캐싱을 지원하고 메소드 매개변수 값을 기반으로 캐시 가능), 유연한 구성, 사용 및 확장 용이

WebMVC 프레임워크

YMP 프레임워크의 WebMVC 모듈 이는 JDBC 모듈 외에 또 다른 매우 중요한 모듈로, 기능적 구조의 디자인과 사용에 있어서 여전히 일관되고 단순한 스타일을 유지합니다. SSH 및 기타 프레임워크 기술에 익숙한 개발자라면 시작하기가 매우 쉽고 학습 비용도 없습니다.

주요 기능은 다음과 같습니다:

  • 표준 MVC 구현, 명확한 구조, 전적으로 주석에 기반한 간단한 구성
  • 컨벤션 모드 지원, 컨트롤러 코드 작성 필요 없음, 직접 일치 및 뷰 실행; 보기 기술(JSP, Freemarker, Velocity, Text, HTML, JSON, Binary, Forward, Redirect, HttpStatus 등)
  • RESTful 모드 및 URL 스타일 지원
  • 요청 매개변수 및 컨트롤러 메서드 매개변수 자동 바인딩 지원;
  • 매개변수 유효성 검증 지원;
  • 주석 구성 컨트롤러 요청 라우팅 매핑 지원
  • 이벤트 및 예외의 사용자 정의 처리 지원; 국제화
  • 컨트롤러 메소드 및 뷰 캐싱 지원
  • 플러그인 확장 지원;

    One More Thing

    YMP는 웹 및 기타 Java 프로젝트에 대한 편리하고 빠른 개발 경험을 제공할 뿐만 아니라, 앞으로도 더욱 풍부한 프로젝트 실무 경험을 제공할 것입니다.

    관심 있는 친구들은 QQ 공식 그룹 480374360에 가입하여 함께 소통하고 배우며 YMP의 성장을 도울 수 있습니다!

    YMP 프레임워크에 대해 자세히 알아보려면 공식 웹사이트를 방문하세요: http://www.ymate.net/