jeecgboot初学习疑问与总结--2021-05-11

新人刚入职

jeecgboot2.4.0学习2天总结,并希望得到一些教导,谢谢~

 


jeecg-boot-base:
   jeecg-boot-base-api:   
   - 加载了jeecg-boot-base-core

       jeecg-system-cloud-api:
          -主要构成部分,封装了一个openfeign,封装了一些fallback熔断方法和接口
       jeecg-system-local-api:(systemApi)
          -封装来了jeecg-system自身的部分api接口

  jeecg-boot-base-core:(配置中心) -                       理解可能有误 - 主要是一个拦截配置中心?
      - 封装了mybatis,redis,shiro,RestTemplate,WebMvc,WebSocket,database,等配置类,
         简单来说是一个大的配置类中心,管理配置文件详细信息
         加载了jeecg-boot-base-tools

  jeecg-boot-base-tools:
      - 主要依赖:springboot-web ,  hutool-all,  作为一个启动工具依赖.

jeecg-boot-module-demo:
  -自配置demo,需要引入 jeecg-boot-base-core依赖实现

jeecg-boot-module-system: 
  - 单体服务主启动类, 依赖引入jeecg-system-local-api,实现自身业务接口,
  - 扩展单体服务必须在此加入jeecg-boot-module-demo(demo名)依赖,
     引入时相当也引入了jeecg-boot-base-core
  / 如果是微服务则不需要注入demo依赖,修改pom中的打包插件skip=true
  - 主要实现了表单自动代码实现,在线生成表单,在线管理系统.
  - 主配置文件.

jeecg-boot-starter           
  -- starter父模块 / 单体服务时可以不启用
  --本质是一个分布式管理依赖
  --引入了jeecg-boot-base-tools 依赖作为启动依赖,本身是一个分布式依赖管理

   -jeecg-boot-starter-cloud       -- 微服务启动starter
       -引入了jeecg-system-cloud-api,
                  nacos,sentinel,config,是一个默认微服务起步依赖
      ! !微服务启动demo需引入此依赖

  -jeecg-boot-starter-job           -- xxl-job定时任务starter
  -jeecg-boot-starter-lock         -- 分布式锁starter
  -jeecg-boot-starter-rabbitmq    -- 消息中间件starter
  -jeecg-boot-starter-redis        -- redis缓存starter

jeecg-cloud-module  --微服务模板
  
  -jeecg-cloud-demo 
     -引入spring-boot-starter-中的相关cloud依赖
     ! ! 微服务启动demo 需引入jeecg-boot-starter-cloud

  -jeecg-cloud-gateway
     -gateway网关具体配置,配置监听器,限流与熔断具体方法.拦截器?
     -总体来说是一个gateway配置中心,需要配置信息,nacos,database信息?(不确定)

  -jeecg-cloud-monitor
     -没学过,看上去是一个服务监听器,监听并放行部分url地址?

  -jeecg-cloud-system-start
     -引入了jeecg-boot-module-system ,
                jeecg-boot-starter-cloud(排除cloud-api, 因为不匹配?为什么?)
               排除其中的openfeign配置信息,自己配置,因为分布式不应该配置一个统一的熔断器吗?       
    -引入定时器

 -jeecg-cloud-xxljob
    -分布式任务调度(没学过暂放)

单体服务:
    快速自动生成表单,代码,
    扩展单体服务: 扩展项目只引入jeecg-boot-base-core,本身不需要springboot启动类,
                          并在jeecg-boot-module-system中引入该项目.
                          并需要在过滤器配置文件中添加新url地址?

微服务:
   去掉 jeecg-boot-moduel-system中的demo依赖;
   因为 jeecg-cloud-module -- jeecg-cloud-system-start 
   中引入了jeecg-boot-module-system  {相当 springboot+xxxx}  (+)
                jeecg-boot-starter-cloud {相当 nacos+sentinel+config+openfeign+
               (cloud-api = openfeign+配置文件)}
   所以直接启动 jeecg-cloud-system-start , 
   升级demo(自己创建并添加jeecg-boot-starter-cloud);

  
         
   
问题:
   1. -jeecg-boot-starter-cloud       -- 微服务启动starter
       -jeecg-boot-starter-cloud项目中引入了jeecg-system-cloud-api,这是一个fallback配置接口及实现类
      为什么cloud-system启动项目中引入了jeecg-boot-starter-cloud和jeecg-boot-module-system却要去除jeecg-system-cloud-api ? 
      而demo项目中需要jeecg-system-cloud-api依赖?明明url未知?
      因为简化demo配置熔断器的操作?
      cloud-system-start中自己配置了相应的熔断器不需要了?,我没有看到配置.

   2. -  为什么分布式demo项目中不需要引入jeecg-boot-base-core等,只需要引入jeecg-boot-starter-cloud

          是自己按需求导入jar包,不一定需要这么多,还是说完全不用其他jar包所以没写?我好想没看到有springboot相关jar包,只看到分布式项目所需jar包

 

3. 单体服务如何实现只支持 System 这一个启动项? 依靠base-core环绕通知+拦截器吗?  多个启动项有什么问题?

 

4.打算看自动生成数据表代码块,发现源码好像没公开!

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