zoukankan      html  css  js  c++  java
  • 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。

  • 相关阅读:
    服务器端渲染SSR的优缺点?
    Vue轻量级富文本编辑器-Vue-Quill-Editor
    浏览器跨域问题
    CSS中 !important 的使用
    如何使用vue-table-with-tree-grid的树形表格组件
    各类程序员学习路线图
    Vue中 el-table大数据量加载,不分页,节省内存的性能优化
    看完让你彻底理解 WebSocket 原理,附完整的实战代码(包含前端和后端)
    vue中class类名根据绑定的值三元表达式或字符串拼接动态添加类名
    close事件 vue_vue 监听浏览器关闭事件
  • 原文地址:https://www.cnblogs.com/lpob/p/11135419.html
Copyright © 2011-2022 走看看