使用Spring boot开发新服务

2016-06-19  本文已影响338人  63e29c663713

口袋最近要开发一个新项目,由于没有历史债务,决定使用一些相对新的框架和特性来进行开发:Spring boot & Gradle & YAML & MyBatis-spring-boot(annotation).

Spring boot

Spring boot 的目的是用来简化新Spring应用的初始搭建以及开发过程,使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。

同时结合使用YAML,不在使用繁琐难读的XML文件。

Spring Boot天生和Groovy结合紧密,它提供的很多便捷功能,并可用来编写Gradle构建文件,简洁清晰。

为了简化依赖图,Boot的功能是模块化的,通过导入Boot所谓的“starter”模块,可以将许多的依赖添加到工程之中。常用的starters有:

spring boot 的优点

开发过程中踩到的坑

  1. 项目中添加checkstyle.xml文件的同时,需要添加suppressions.xml文件,单纯的在checkstyle中配置下述代码时,提示找不到suppressions.xml。
<module name="SuppressionFilter">    
        <property name="file" value="/suppressions.xml"/>
</module>

解决方案:

// build.gradle
def configDir = new File(buildscript.sourceFile.parentFile, 'config')
ext {      
    checkstyleConfigDir = "$configDir/checkstyle"
}
checkstyle {
    configFile = new File(checkstyleConfigDir, "checkstyle.xml")
     configProperties.checkstyleConfigDir = checkstyleConfigDir
}
  1. 由于系统需要引入dubbo,dubbo需要使用xml来进行配置,而属性文件是使用yaml来编写,启动服务时,xml文件读取不到yaml中的配置:
apricotforest:
    dubbo:
        zookeeper: prod.zookeeper-af1:2181

当改为下述代码时,可正常读取:

apricotforest.dubbo.zookeeper: prod.zookeeper-af1:2181
上一篇下一篇

猜你喜欢

热点阅读