之前写Junit测试类的时候,我们都会给spring容器手动注入一个配置类,里面会用@ComponentScan来告诉spring需要扫描的路径。如下图: 那么spring就是通过这个配置类的注解,拿到我们定义的路径,然后从电脑中的绝对路径读取到.class文件进行解析。 大概流程如下:ConfigrarionClassPostProcessor获取包名得到路径下的所有文件通过ASM的方式读取字节            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-19 23:49:07
                            
                                94阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            有过dubbo/dubbox使用经验的朋友,看到下面这张图,一定很熟悉,就是SOA架构的最基本套路。与dubbo对比,上图的3大要素中,spring cloud是借助以下组件来实现的:1、注册中心:spring cloud默认使用eureka server来做注册中心,而dubbo默认使用的是zookeeper。eureka的注册信息是保存在一个双层的Map对象中的,换句话说在内存中,不象zook            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-10-15 10:21:40
                            
                                56阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Spring Cloud概述 1.1 基于SOA系统架构
 面向服务的架构,是一种程序开发架构的设计思想。它将不同的功能单元使用一个作为独立的程序运行,并且提供访问的入口(将这些单独运行的每个程序称为服务)。一个SOA架构的web应用程序,是多个服务组成的!!! SOA架构的思想就是用于实现,程序分布式的。所以我们也可以将SOA架构的思想理解为分布            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-19 15:49:17
                            
                                21阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            在一个项目开发中,一般会把项目分为 1、DAO层(数据访问层):专门负责数据库交互 CRUD(增查改删),比如在mysql数据库里生成一条订单数据。2、Service层(业务逻辑层) : 负责业务逻辑的处理,比如购买东西的业务,需要调用DAO层的方法扣减商品记录里的库存数量,然后生成一条订单记录。3、Controller层(控制层) : 接收页面的请求,调用业务逻辑层去处理,将业务逻辑层处理返            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-10 14:49:13
                            
                                68阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            springcloud学习之config服务集成bus实现动态更新配置文件在之前的服务中已经实现了config-server 和config-client服务,本章节将会实现动态更新配置文件信息,之前的项目有不懂的可以看springcloud学习之config统一管理微服务配置 版本介绍 springboot 2.1.6 springcloud Greenwich.SR1 文章目录springcl            
                
         
            
            
            
            目录前言项目版本项目说明集成Dubbo 2.6.x新项目模块老项目模块集成Dubbo 2.7.x新项目模块老项目模块参考资料系列文章前言SpringCloud系列开篇文章就说到了,公司新项目将入坑SpringCloud全家桶,但原先线上老项目是采用Spring+Dubbo技术栈的,新项目中的部分业务还是和老项目有点关联的,重写这一部分业务逻辑也是需要点时间,本来想通过http请求进行业务交互的,总            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-07-15 19:40:40
                            
                                49阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            前言:因自己负责的项目(jetty内嵌启动的SpringMvc)中需要实现文件上传,而自己对java文件上传这一块未接触过,且对 Http 协议较模糊,故这次采用渐进的方式来学习文件上传的原理与实践。该博客重在实践。一. Http协议原理简介     HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-17 11:11:33
                            
                                17阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
               项目中需要用到包扫描的情况是很多的,一般是在项目初始化的时候,根据一些条件来对某个package下的类进行特殊处理。现在想实现的功能是,在一个filter或interceptor初始化的时候,扫描指定的一些package路径,遍历下面的每个class,找出method上使用了一个特殊注解的所有方法,然后缓存起来,当方法拦截器工作的时候,就不用再挨个判断方法是否需要拦截了&            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-26 12:06:53
                            
                                38阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1. 介绍项目中的一些单表的增删改查功能,逻辑简单,但是在创建service、mapper、xml的过程很耗费时间。我们可以通过整合mybatis-plus和mybatis-plus-generator来处理这些问题,说明:mybatis-plus只是给我们提供一种便捷的操作,节约了写简单sql的时间,但其自身还是支持原生sql的。对于一些逻辑复杂或者多表操作或者动态sql,建议写原生sql。本文            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-06 12:31:43
                            
                                35阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            不知道从什么时候开始,在各大技术社区,微服务这个话题就被提上了日常,首页推荐的都会是微服务相关的开发问题,我们在日常的开发过程中,公司的架构也逐渐往微服务方向发展。而在这么多的微服务关系中,Spring Cloud有依赖自己的独有特性被追捧。使用 Spring Cloud 技术可以轻松在企业架构中落地微服务架构,并且 Spring Cloud 各组件都被设计为可插拔,企业可以根据业务在实施微服务架            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-04 09:57:26
                            
                                28阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
             文章目录<component-scan>概述1. XML: Spring 配置文件2. Parser: ComponentScanBeanDefinitionParser3. Scanner: ClassPathBeanDefinitionScanner4. Provider: ClassPathScanningCandidateComponentProvider总结 本文根据 《S            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-27 12:23:55
                            
                                52阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            最近楼主突发奇想,自己写了一个模块,决定以jar包的方式集成到项目里,但是当使用hibernate持久化jar包中类的时候,出问题了,如下:org.springframework.orm.hibernate3.HibernateSystemException: Unknown entity: com.carpo.info.model.TInfoshibernate映射出问题了?有经验的同学也许已            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-26 23:15:55
                            
                                78阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            在Spring整体框架的核心概念中,容器是核心思想,就是用来管理Bean的整个生命周期的,而在一个项目中,容器不一定只有一个,Spring中可以包括多个容器,而且容器有上下层关系,目前最常见的一种场景就是在一个项目中引入Spring和SpringMVC这两个框架,那么它其实就是两个容器,Spring是父容器,SpringMVC是其子容器,并且在Spring父容器中注册的Bean对于SpringMV            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-11 09:06:28
                            
                                35阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            创建可被发现的bean1.创建最基础的bean使用@Component 将一个class标记为可被发现的类@Component
public class BraveKnight {此外,还可以在注解旁加上别名(默认名为类名的首字母小写)@Component("knight")
public class BraveKnight {配置Configuration1.JavaConfig使用java文件            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-20 07:23:27
                            
                                104阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            多个项目的时候,比如:cn.gov.credream.scgatewaycn.gov.credream.scmessagecn.gov.credream.....好多个项目,那么如果我共用的东西都提到共通的一个项目,然后把共通的项目作为一个包,引入到其他项目的话,那么...            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2021-07-12 14:37:28
                            
                                301阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            技术交流QQ群【JAVA,C++,Python,.NET,BigData,AI】:170933152多个项目的时候,比            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-03-25 16:50:49
                            
                                291阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            OAuth2协议 白话理解+SpringCloud Security 栗子引言白话理解专业名词认证授权服务和资源服务scope作用域关于白话理解搭建认证授权服务引入依赖编写认证配置(SecurityConfig)配置授权服务基于内存Token的授权服务配置基于JwtToken的授权服务配置申请token简化模式申请token申请授权码根据授权码申请token密码模式申请token刷新token检            
                
         
            
            
            
            1、springcloud项目打包步骤父项目pom.xml文件中添加的内容<build>
	<plugins>
		<plugin>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-maven-plugin</artifa            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-05 12:35:23
                            
                                173阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            @ComponentScan(basePackages = {“com”})组件扫描
@ComponentScan等价于
AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext();
context.scan("com");
模拟包扫描
获取项目真实路径
File file =ne            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-06 09:59:20
                            
                                25阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            1.     SpringMVC框架的文件上传a)前台使用表单文件域完成文件上传,需要在表单中增加相应标签:表单必须采用POST方式提交数据,因为文件数据放置在请求体中传递,GET方式处理不了,没有请求体。文件上传采用特殊的方式传递数据,而不是普通的名值对方式,采用多部件方式提交,   所以在表单标签中需要增加特定属性 :enctype=