Java & Maven & Spring & Spring Boot Java , Maven , Spring, Spring Boot, JDK, Java 12, mvn, API, Restful, REST,



Java & Maven & Spring & Spring Boot

Java & Maven & Spring & Spring Boot_JDK

Spring Boot

sb

​https://start.spring.io/​

Java & Maven & Spring & Spring Boot_spring boot_02

Spring 4

​https://s3.amazonaws.com/baeldung.com/Building+a+REST+API+with+Spring.pdf​

Maven

​https://maven.apache.org/guides/index.html​

​https://maven.apache.org/download.cgi​

​https://maven.apache.org/install.html​

​https://maven.apache.org/guides/getting-started/windows-prerequisites.html​

Binary zip archive | apache-maven-3.6.1-bin.zip

# JAVA_HOME
$ echo %JAVA_HOME%

$ mvn -v


Java & Maven & Spring & Spring Boot_JDK_03

Java & decorator design pattern

​@Override​

@ decorator

Java & Maven & Spring & Spring Boot_Java_04

Application.java



package com.xgqfrms.tag;

import com.xgqfrms.tag.config.ApplicationProperties;
import java.net.InetAddress;
import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.core.env.Environment;

@Slf4j
@SpringBootApplication
@EnableConfigurationProperties(ApplicationProperties.class)
public class Application {

private final Environment env;

public Application(Environment env) {
this.env = env;
}

public static void main(String[] args) {

SpringApplication app = new SpringApplication(Application.class);
Environment env = app.run(args).getEnvironment();
String protocol = "http";
if (env.getProperty("server.ssl.key-store") != null) {
protocol = "https";
}
String hostAddress = "localhost";
try {
hostAddress = InetAddress.getLocalHost().getHostAddress();
} catch (Exception e) {
log.warn("The host name could not be determined, using `localhost` as fallback");
}
log.info("\n----------------------------------------------------------\n\t" +
"Application '{}' is running! Access URLs:\n\t" +
"Local: \t\t{}://localhost:{}\n\t" +
"External: \t{}://{}:{}\n\t" +
"Profile(s): \t{}\n----------------------------------------------------------",
env.getProperty("spring.application.name"),
protocol,
env.getProperty("server.port"),
protocol,
hostAddress,
env.getProperty("server.port"),
env.getActiveProfiles());
}

}


Spring Framework 5

​https://spring.io/​

​https://www.baeldung.com/java-decorator-pattern​

Spring 5 & Spring Boot 2