最近自己在写自己建的项目的时候想在common里面做一些异常、参数等公用的代码处理,然后就自己写了一个start,记录一下,以防以后忘掉
项目结构式一个父工程下面有几个子工程,一个common是公用的,就直接在这个common里面进行修改
在common里面需要创建三个文件如图
spring.factories里面的代码
CommonConfiguration里面的代码
CommonProperties代码:
springboot在运行的时候会先找到spring.factories文件,从里卖弄读取启动的配置CommonConfiguration,通过CommonConfiguration里面的配置找到CommonProperties,CommonProperties里面定义的是其他项目引用这个项目在yml文件里面些的一些属性值,那个common-base则是在yml文件也属性值的前缀,下面为引用的示例
在另外一个项目需要引入 这个依赖,并且在yml文件里面配置该属性值
我们在自定义的starter里面就能拿到这个值,下面是我写在common里面的一段获取方法参数以及打印处理时间的代码,并在上面加了一行打印我获取到的值
下面是实现效果:
个人感觉一些公用的工具类的代码都可以定义一个starter进行处理,比如异常处理,aop处理,日志处理自己定义的一些工具类,属性文件的配置可以用来写一些需要外部传递的参数,比如想写一个redis操作的starter,redis的访问的地址端口密码等都可以通过yml传到starter里面,如果不想用了可以直接去掉引用就行了,插拔式的,很方便