groovy

groovy

groovy学习资料:

The Apache Groovy programming language - Documentation

GStringTemplateEngine (Groovy 4.0.0)

模版中map的处理可参考:

groovy-map.each{}_weixin_30687051的博客-CSDN博客

模版中list的处理可参考:

https://blog.csdn.net/coderinchina/article/details/92081323

依赖:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-groovy-templates</artifactId>
</dependency>

<dependency>
    <groupId>org.codehaus.groovy</groupId>
    <artifactId>groovy</artifactId>
</dependency>
<dependency>
    <groupId>org.codehaus.groovy</groupId>
    <artifactId>groovy-ant</artifactId>
</dependency>
<dependency>
    <groupId>org.codehaus.groovy</groupId>
    <artifactId>groovy-json</artifactId>
</dependency>

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.1</version>
    <configuration>
        <compilerId>groovy-eclipse-compiler</compilerId>
        <source>${java.version}</source>
        <target>${java.version}</target>
    </configuration>
    <dependencies>
        <dependency>
            <groupId>org.codehaus.groovy</groupId>
            <artifactId>groovy-eclipse-compiler</artifactId>
            <version>2.9.1-01</version>
        </dependency>
        <dependency>
            <groupId>org.codehaus.groovy</groupId>
            <artifactId>groovy-eclipse-batch</artifactId>
            <version>2.3.7-01</version>
        </dependency>
    </dependencies>
</plugin>

<plugin>
    <groupId>org.codehaus.groovy</groupId>
    <artifactId>groovy-eclipse-compiler</artifactId>
    <version>2.9.1-01</version>
    <extensions>true</extensions>
</plugin>

创建目录:

File dir=File.createTempFile('tmp', '', new File(“路径”))

dir.mkdirs()

在父目录下创建目录:

File childDir= new File(rootDir, “子目录名称”)
childDir.mkdirs()

在目录下创建文件并写入内容【写入一个xml文件,这边使用groovy进行字符串替换模版占位符】:

String yhXml=“ceshi/pom.xml”

Map model;//model中可以存储模版中对应的内容

groovy进行字符串替换模版占位符:

//处理模版源文件

//获取模版

GStringTemplateEngine  templateEngine=new GStringTemplateEngine()

Template template

def classLoader = GroovyTemplate.class.classLoader

def resource = classLoader.getResource(name)
if (resource) {
   template =engine.createTemplate(resource)
}

template =engine.createTemplate(name)

//字符串替换模版占位符

Writable writable=template.make(model)

def result = new StringWriter()
writable.writeTo(result)

String pom = new String(result.toString())

//在目录下将pom内容写入创建文件中

new File(childDir, 'pom.xml').write(pom)

上一篇:leetcode 26.删除有序数组中的重复项 [双指针]


下一篇:endnote x9 使用说明