spring-boot学习 (Groovy与Spring Boot Cli)

Posted lpob

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring-boot学习 (Groovy与Spring Boot Cli)相关的知识,希望对你有一定的参考价值。

一、使用idea创建一个spring-boot项目,选择groovy语言

技术图片

 

二、编写相应代码

    1、创建实例类

package com.zhi.example

class Man 
    Long id
    String name
    String phone

    Man(Long id, String name, String phone) 
        this.id = id
        this.name = name
        this.phone = phone
    

    2、创建service

package com.zhi.example

import org.springframework.stereotype.Service

@Service("manService")
class ManService 
    Man getInfoByName(String name) 
        return new Man(100,name,"10000")
    

    3、创建controller

package com.zhi.example

import org.springframework.beans.factory.annotation.Autowired
import org.springframework.web.bind.annotation.GetMapping
import org.springframework.web.bind.annotation.RestController

@RestController
class ManController 
    @Autowired
    private ManService manService;

    @GetMapping("/ok")
    String home() 
        Man man = manService.getInfoByName("tom")
        return "<h1>hello " + man.name + "</h1>"
    

    4、运行ExampleApplication.groovy

package com.zhi.example

import org.springframework.boot.SpringApplication
import org.springframework.boot.autoconfigure.SpringBootApplication

@SpringBootApplication
class ExampleApplication 
    static void main(String[] args) 
        SpringApplication.run(ExampleApplication, args)
    

打开浏览器,访问:http://localhost:8080/ok

技术图片

三、代码结构图

技术图片

 

 四、过程中遇到的问题

1、启动ExampleApplication.groovy报错,“找不到或无法加载主类 com.zhi.example.ExampleApplication"

技术图片

原因:这种方式是按照Java+SpringBoot启动方式,java环境下运行一个.java文件,其实运行的是对应编译后的.class字节码文件,IDEA可以默认将.java编译成.class。编译后的.class文件在当前目录的target文件夹下。

Groovy是用于Java虚拟机的一种敏捷的动态语言,它最终也是编译成.class字节码文件运行的,但IDEA默认是不会将.groovy文件进行编译。所以我们第一次启动会出现。找不到或无法加载到主类的异常。Source roots (or source folders) 指定一个文件夹,手动告诉

IDEA,这个文件夹及其子文件夹中包含的源代码,可以编译为构建过程的一部分。然后可以到target文件夹下check是否有对应的.class文件。之后就可以成功启动SpringBoot+groovy。

技术图片

 

以上是关于spring-boot学习 (Groovy与Spring Boot Cli)的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Spring boot 将 Groovy 类与 java 类一起运行

Spring-Boot学习纪要-4:Spring-Boot与Web开发

spring-boot 集合mybatis 的分页查询

如何在 gradle 中获取 spring-boot 依赖版本?

Groovy 语法学习

Centos搭建Groovy开发环境