2022
04-07
04-07
使用Springboot根据配置文件动态注入接口实现类
Springboot根据配置文件动态注入接口实现类需求最近在做一个Springboot项目,需要面向不同需求的客户,但是为了方便管理分支,需要将不同客户的需求都写到同一套代码中,根据不同客户实例化对应的实现类。实现为了尽量不修改代码,少做不必要的逻辑判断,我们考虑为不同客户写不同的Service,然后根据配置参数实例化对应的Service。这样就遇到了需要根据配置文件实现不同类的需求。针对这一需求大致有两种实现方式。但是针对我的需...
继续阅读 >
Springboot对配置文件的敏感信息加密前言最近公司对软件的安全问题比较在意,要求对配置文件中的敏感信息如数据库密码等进行加密。但是Springboot是一款高度集成的框架,如果仅仅是简单的对数据库密码进行加密了,由于连接数据库的操作是框架自己完成的,这就会造成不小的麻烦。经过调研,找到了如下方式还比较方便。项目配置该项目用到了jasypt库。原理很简单,通过该库提供的方法进行敏感信息加密,生成密文xxxxx,然后将密文使...
Mybatis给实体类起别名全局配置文件中的标签:标签3:typeAliases别名处理器可以为java类型起别名别名忽略大小写原来:<selectid="getTeacherById"parameterType="integer"resultType="entity.Teacher">ctrl+左键就可以定位到该类其实比较方便起了别名后就难找了注意:有个问题typeAlias标签还有位置问题得放在proerties后面而不是configuration后面有三个方法起别名:第一种:单个起别名<typeAliases><t...
Mybatis配置文件入门从这篇文章开始,我们将从其核心配置文件入手,对Mybatis支持的核心配置文件进行简单详细的描述。从下面这段代码是我们在使用mybatis前的配置初始化过程我们通过阅读其源码来逐步了解内部实现原理。//Mybatis通过SqlSessionFactory获取SqlSession,然后才能通过SqlSession与数据库进行交互privatestaticSqlSessionFactorygetSessionFactory(){SqlSessionFactorysessionFactory=null;Stringreso...
因为spring搭建的web项目打包时默认将resource文件夹下的文件一起打包,但是我们又想在打包后修改某些配置这里以我遇到的logback.xml配置更改默认路径来看根据LoggerFactory.getLogger的方法找到加载文件的位置,如下publicURLfindURLOfDefaultConfigurationFile(booleanupdateStatus){ClassLoadermyClassLoader=Loader.getClassLoaderOfObject(this);URLurl=findConfigFileURLFromSystemProperties(myClassLoader,up...
缘起经过前面三章的入门,我们大概了解了Mybatis的主线逻辑是什么样子的,在本章中,我们将正式进入Mybatis的源码海洋。Mybatis是如何解析xml的构建Configuration我们调用newSqlSessionFactoryBuilder().build()方法的最终目的就是构建Configuration对象,那么Configuration何许人也?Configuration对象是一个配置管家,Configuration对象之中维护着所有的配置信息。Configuration的代码片段如下publicclassConfiguration{/...