关于golang:手撸golang-spring-iocaop-之1

42次阅读

共计 653 个字符,预计需要花费 2 分钟才能阅读完成。

手撸 golang spring ioc/aop 之 1

缘起

最近浏览 [Offer 来了:Java 面试外围知识点精讲(框架篇)] (王磊 , 2020.6)
本系列笔记拟采纳 golang 练习之

Spring

Spring 基于 J2EE 技术实现了一套轻量级的 Java Web Service 零碎利用框架。它有很多优良的个性,很多公司都抉择把 Spring 作为产品或我的项目的根底开发架构。Spring 的个性包含轻量、管制反转(Inversion of Control, IoC)、面向容器、面向切面(AspectOriented Programming, AOP)和框架灵便等。源码 gitee 地址:https://gitee.com/ioly/learning.gooop

原文链接:https://my.oschina.net/ioly

指标

  • 应用 golang 高仿 spring 罕用注解

    • Bean 申明:Component, Service, Controller
    • Bean 注入:Autowried
    • 配置:Configuration, Bean, ComponentScan
    • AOP 注解:Before, After, Around, PointCut

思路

  • golang 的反射 API 比拟弱,没有动静代理,也没有 CGLib 此等神器
  • 简略点只能走 AspectJ 路线了:动态编译 /autogen
  • Bean 申明:就是容器单例 / 多例模式的利用
  • Bean 注入:增加 setter 办法,供容器注入
  • 配置:增加 setter 办法,容器将系统配置注入
  • AOP 注解:搜寻正则匹配的函数,在前后插入切面函数调用

(未完待续)

正文完
 0