Spring 扩展 spring-nc

码农软件 · 软件分类 · Java开发工具 · 2019-11-06 13:27:41

软件介绍

spring-nc=spring no controller,一个不需要controller类的spring扩展,只需在对应的service接口上应用controller相关注解,便能提供如同controller一样直接访问对应接口实现类的service方法。

此扩展还同时兼容原有的controller写法,使用简单对service无侵入。

 使用步骤如下:

1.先定义service接口类:

package cn.hn.java.summer.springnctest.service;

import cn.hn.java.summer.springnc.annotation.RequestMapping;
import cn.hn.java.summer.springnc.annotation.RestController;

@RestController
@RequestMapping("/")
public interface IHello {

    @RequestMapping("/say")
    String say(String name);
}

注意:这里的RestController、RequestMapping注解用的是spring-nc包下的注解,需要用spring-nc包中代替spring原有的注解有:@Controller、@RestController、@RequestMapping、@PutMapping、@PostMapping、@PatchMapping、@GetMapping和@DeleteMapping,其它注解都是用原有的。

2.编写实现接口的service类:

package cn.hn.java.summer.springnctest.service;

import org.springframework.stereotype.Service;

@Service
public class HelloService implements IHello {

    public String say(String name) {
        return "hello "+name;
    }
}

3.启动程序时增加spring-nc调用:

package cn.hn.java.summer.springnctest;

import cn.hn.java.summer.springnc.AutoControllerApplication;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication(scanBasePackages = "cn.hn.java.summer.springnctest.service")
public class Application {

    public static void main(String[] args) {
        AutoControllerApplication.run(Application.class); //最前面添加spring-nc调用
        SpringApplication.run(Application.class, args);
    }
}

4.启动程序访问 localhost:8080/say?name=world

输出:hello world

很简单简捷有没有?再也不用去写一遍controller了~~~

本文地址:https://codercto.com/soft/d/18394.html

RabbitMQ实战

RabbitMQ实战

Alvaro Videla、Jason J. W. Williams / 汪佳南 / 电子工业出版社 / 2015-10 / 75.00元

本书对RabbitMQ做了全面、翔实的讲解,体现了两位专家的真知灼见。本书首先介绍了有关MQ的历史,然后从基本的消息通信原理讲起,带领读者一路探索RabbitMQ的消息通信世界。这当中不仅包含了针对单台RabbitMQ服务器和RabbitMQ集群的讲解,还教导读者如何使用各种工具来进行监控。 本书内容浅显易懂,文笔风趣幽默。书中包含了丰富的、可以运行的示例程序源代码,读者可以自行下载并运行,......一起来看看 《RabbitMQ实战》 这本书的介绍吧!

MD5 加密
MD5 加密

MD5 加密工具

SHA 加密
SHA 加密

SHA 加密工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器