一、使用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。
原文地址:https://www.cnblogs.com/lpob/p/11135419.html
时间: 2024-10-29 11:01:28