Springboot入门实战, 使用@Value

今天开始最简单的Springboot应用

entity.Book

package com.draymonder.amor.entity;

import java.util.List;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

@Component
public class Book {
  @Value("${book.name}")
  private String name;

  @Value("${book.author}")
  private String author;

  @Value("${book.price}")
  private Double price;

  @Value("#{'${book.love}'.split(',')}")
  private List<String> love;

  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }

  public String getAuthor() {
    return author;
  }

  public void setAuthor(String author) {
    this.author = author;
  }

  public Double getPrice() {
    return price;
  }

  public void setPrice(Double price) {
    this.price = price;
  }

  @Override
  public String toString() {
    return "Book{" +
        "name='" + name + '\'' +
        ", author='" + author + '\'' +
        ", price=" + price +
        ", love=" + love +
        '}';
  }
}

web.BookController

package com.draymonder.amor.web;

import com.draymonder.amor.entity.Book;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class BookController {
  @Autowired
  Book book;

  @GetMapping("/book")
  public String book() {
    return book.toString();
  }
}

resources/applcation.yml

server:
  port: 8080

book:
  name: amor
  author: draymonder
  price: 50
  love: a, b, c

访问url localhost:8080/book

展示结果

Book{name='amor', author='draymonder', price=50.0, love=[a, b, c]}
posted @ 2019-11-07 21:52  Draymonder  阅读(184)  评论(0编辑  收藏  举报