________________初学springboot4

springboot 快速入门

Springboot的环境搭建

1、继承

<parent>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-parent</artifactId>

<version>1.4.0.RELEASE</version>

</parent>

 

2、配置

<dependencyManagement>

<dependencies>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-dependencies</artifactId>

<version>1.4.0.RELEASE</version>

<scope>import</scope>

<type>pom</type>

</dependency>

</dependencies>

</dependencyManagement>

 

配置编码格式、编译器版本

<properties>

<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

<maven.compiler.source>1.8</maven.compiler.source>

<maven.compiler.target>1.8</maven.compiler.target>

 

maven依赖

<dependency>

<groupId>org.apache.maven</groupId>

<artifactId>maven-plugin-api</artifactId>

<version>3.5.0</version>

</dependency>

 

Springboot依赖

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter</artifactId>

</dependency>

 

Springboot的两种运行方式

1、使用SpringApplication经典方法SpringApplication.run()

@SpringBootApplication

public class App {

@Bean

public Runnable createRunnable() {

return ()->{System.out.println("SpringBoot is run");};

}

public static void main(String[] args) {

ConfigurableApplicationContext context=SpringApplication.run(App.class, args);

context.getBean(Runnable.class).run();

context.getBean(User.class);

}

}

 2、创建一个SpringApplication对象,调用它的run方法

public class App {

 public static void main(String[] args) {

SpringApplication app=new SpringApplication(App2.class);

Set<Object> set=new HashSet<>(); //装载多个

set.add(App3.class ); 

set.add(App2.class );

app.setSources(set);

  ConfigurableApplicationContext context=app.run(args);

context.getBean(Runnable.class).run();

System.out.println(context.getBean(User.class));

}

}

其中@SpringBootApplication包含以下功能

@SpringBootConfiguration
@EnableAutoConfiguration
@ComponentScan(excludeFilters={@Filter(type=CUSTOMclasses={TypeExcludeFilter.class})})
@Target(value={TYPE})
@Retention(value=RUNTIME)
@Documented
@Inherited

posted @ 2018-07-20 11:25  637  阅读(114)  评论(0编辑  收藏  举报