added @ConstructorBinding annotation

This commit is contained in:
Tom Hombergs
2019-11-17 06:33:05 +11:00
parent 5975aff396
commit 6667bcde4d
4 changed files with 16 additions and 19 deletions

View File

@@ -1,26 +1,24 @@
package io.reflectoring.staticdata;
public class Quote {
import org.springframework.boot.context.properties.ConstructorBinding;
private String text;
private String author;
@ConstructorBinding
class Quote {
public Quote() {
private final String text;
private final String author;
public Quote(String text, String author) {
this.text = text;
this.author = author;
}
public String getText() {
String getText() {
return text;
}
public String getAuthor() {
String getAuthor() {
return author;
}
public void setText(String text) {
this.text = text;
}
public void setAuthor(String author) {
this.author = author;
}
}

View File

@@ -7,15 +7,15 @@ import java.util.List;
@Component
@ConfigurationProperties("static")
public class QuotesProperties {
class QuotesProperties {
private final List<Quote> quotes;
public QuotesProperties(List<Quote> quotes) {
QuotesProperties(List<Quote> quotes) {
this.quotes = quotes;
}
public List<Quote> getQuotes() {
List<Quote> getQuotes() {
return this.quotes;
}

View File

@@ -10,13 +10,13 @@ import java.util.Random;
@Configuration
@EnableScheduling
public class RandomQuotePrinter {
class RandomQuotePrinter {
private static final Logger logger = LoggerFactory.getLogger(RandomQuotePrinter.class);
private final Random random = new Random();
private final QuotesProperties quotesProperties;
public RandomQuotePrinter(QuotesProperties quotesProperties) {
RandomQuotePrinter(QuotesProperties quotesProperties) {
this.quotesProperties = quotesProperties;
}

View File

@@ -2,7 +2,6 @@ package io.reflectoring.staticdata;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
@SpringBootApplication
public class StaticApplication {