zoukankan      html  css  js  c++  java
  • SPARROW架构介绍

    sparrow 框架设计最大化解耦,理论上业务层只依赖SPARROW-FACADE即可,接口可由第三方如spring c3p0 fastjson logback 具体实现。

    整体架构图如下:


    SPARROW 架构图   

    SPARROW-FACADE

    基础核心层,实现了一些框架和上层业务涉及到的一些工具类类,如图


    工具类库   

    包括bean properties 反射(非JDK反射)读写,class 集合类,日期,email ,文件 ,正则等常用工具类.核心功能,后文将一一介绍。

    sparrow-cg

    sparrow code generator 并不是简单的代码生成,而是为了反射提高效率,而专门实现的快速读写对象属性的工具包。

    sparrow-container

    相当于spring 的ioc容器,对sparrow-facade的container 接口的实现,目前主要是针对xml模式的bean解析与依赖注入。

    sparrow-datasource

    对jdk datasource接口的实现,主要是数据库链接池最基本的维护。

    sparrow-json

    对sparrow-json的实现,目前默认是对fastjson接口的封装。上层业务可自行替换,不影响上层业务代码。

    sparrow-log

    对slf4j接口的实现,只实现常用的log打印功能,上层业务可通过代码log4j或logback替换

    sparrow-mvc

    模拟spring mvc实现,上层业务可代理实现spring mvc替换

    sparrow-orm

    hibernate 与mybatis jpa三者,取其精华去其槽粕。实现简单,易用,可扩展,未来可实现跨数据库,跨数据源(hbase elastic search兼容) ,对上层业务换数据源不需要修改业务代码的切换。

    sparrow-mq

    对sparrow-facae mq 接口的实现,该模块对上层业务的mq调用代码进行封装,对各类mq产品实现兼容,即底层换mq产品,上层业务代码不需要修改,跨各类mq产品。

    sparrow-redis

    该模块对nosql 数据库接口进行封装,理论上支持各种nosql 数据库,对上层业务兼容。对redis key统一定义维护(这部分会专门有一篇文章去分析)

    本文,主要是对sparrow框架的整体构架做简单介绍,下文会针对每一个模块的核心代码展开分析 

    good night!

  • 相关阅读:
    jquery设置多个css样式
    html中设置透明遮罩层的兼容性代码
    在html中显示Flash的代码
    js setTimeout()
    jquery live hover
    leetcode第16题--3Sum Closest
    leetcode第15题--3Sum
    leetcode第14题--Longest Common Prefix
    leetcode第13题--Roman to Integer
    leetcode第12题--Integer to Roman
  • 原文地址:https://www.cnblogs.com/hiaming/p/8967781.html
Copyright © 2011-2022 走看看