手写SpringBoot(Spring + orm)

项目基本内容:

springboot:借助tomcat作为socket服务器(后续会手写一个tomcat服务器);

spring:实现了mvc、Ioc,DI,aop、事务;

orm:将mapper加载到spring的容器池中、注解式sql,save、update、getById、getAll等基础方法的封装。

项目思路基本介绍:

1.SpringApplication工具类,启动tomcat,配置DispatcherServlet

2.DispatcherServlet 初始化加载配置,并创建容器

3.容器扫描组件(对使用了Controller、Component、Service、Bean等注解的类进行加载,并构建bean缓存到容器池,并将使用Controller注解的bean注册到HandlerMappering)

4.容器扫描第三方框架组件(如配置了orm框架,对所使用的Mapper注解的接口进行自定义扫描,并创建代理类,加载到bean容器池)

5.组件的注入(DI阶段,注入使用Autowired注解的field字段)

6.切面、事务加载(针对使用Aspect注解的切面类及Service层生成代理类,并构造代理链)

7.将切面、事务的代理链注入

项目结构如下:

手写SpringBoot(Spring + orm)_第1张图片

pom.xml 如下




    4.0.0

    spring
    org.kwin
    1.0-SNAPSHOT
    jar

    
        8
        8
    

    
        
            org.apache.tomcat.embed
            tomcat-embed-core
            8.5.69
        

        
            cglib
            cglib
            3.2.5
        

        
            mysql
            mysql-connector-java
            8.0.13
        
    

测试:

 手写SpringBoot(Spring + orm)_第2张图片

 过多的就不展示了,show coding

spring: 手写spring springboot orm

你可能感兴趣的:(spring,java)