springboot 入门

来源:互联网 发布:多线程共享数据 编辑:程序博客网 时间:2024/04/29 05:33

新建maven项目

修改pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.me</groupId><artifactId>springBoot</artifactId><version>0.0.1-SNAPSHOT</version><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding></properties><!-- Inherit defaults from Spring Boot --><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1.4.0.BUILD-SNAPSHOT</version></parent><!-- Add typical dependencies for a web application --><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>3.8.1</version><scope>test</scope></dependency></dependencies><!-- Package as an executable jar --><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build><!-- Add Spring repositories --><!-- (you don't need this if you are using a .RELEASE version) --><repositories><repository><id>spring-snapshots</id><url>http://repo.spring.io/snapshot</url><snapshots><enabled>true</enabled></snapshots></repository><repository><id>spring-milestones</id><url>http://repo.spring.io/milestone</url></repository></repositories><pluginRepositories><pluginRepository><id>spring-snapshots</id><url>http://repo.spring.io/snapshot</url></pluginRepository><pluginRepository><id>spring-milestones</id><url>http://repo.spring.io/milestone</url></pluginRepository></pluginRepositories></project>


pom.xml中引入spring-boot-start-parent,spring官方的解释叫什么stater poms,它可以提供dependency management,也就是说依赖管理,引入以后在申明其它dependency的时候就不需要version了

<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1.4.0.BUILD-SNAPSHOT</version></parent>
pom.xml中引入spring-boot-starter-web,spring官方解释说spring-boot-start-web包含了spring webmvctomcatweb开发的特性。

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency>
如果我们要直接Main启动spring,那么以下plugin必须要添加,否则是无法启动的。如果使用maven 的spring-boot:run的话是不需要此配置的。(在测试的时候,如果不配置下面的plugin也是直接在Main中运行的。)

<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build>


新建Application.java

package com.me;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplicationpublic class Application{public static void main(String[] args) {System.out.println("Hello World!!");SpringApplication.run(Application.class, args);}}


新建HelloController.java

package com.me;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;@RestControllerpublic class HelloController {@RequestMapping("/hello")    public String getFileName(){    return "hello";    }}
右击Application.java
Run  as ->Java Application 启动程序

浏览器访问:http://localhost:8080/hello


新建UserController.java

package com.me;import org.springframework.web.bind.annotation.PathVariable;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;@RestController@RequestMapping("/user")public class UserController {@RequestMapping("/{id}")public User getUser(@PathVariable String id){User user = new User();user.setId(id);user.setUsername("id=="+Math.random());return user;}private class User{private String id;private String username;public String getId() {return id;}public void setId(String id) {this.id = id;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}}}

重新启动 Application.java

浏览器访问:http://localhost:8080/user/1


修改访问端口

(1)

package com.me;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.boot.context.embedded.ConfigurableEmbeddedServletContainer;import org.springframework.boot.context.embedded.EmbeddedServletContainerCustomizer;@SpringBootApplicationpublic class Application implements EmbeddedServletContainerCustomizer {@Overridepublic void customize(ConfigurableEmbeddedServletContainer container) {container.setPort(80);}public static void main(String[] args) {System.out.println("Hello World!!");SpringApplication.run(Application.class, args);}}

(2)

package com.me;import java.util.concurrent.TimeUnit;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.boot.context.embedded.EmbeddedServletContainerFactory;import org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainerFactory;import org.springframework.context.annotation.Bean;@SpringBootApplicationpublic class Application  {public static void main(String[] args) {System.out.println("Hello World!!");SpringApplication.run(Application.class, args);}@Bean    public EmbeddedServletContainerFactory servletFactory(){        TomcatEmbeddedServletContainerFactory tomcatFactory =                 new TomcatEmbeddedServletContainerFactory();        tomcatFactory.setPort(8011);        tomcatFactory.setSessionTimeout(10,TimeUnit.SECONDS);        return tomcatFactory;            }}

(3)

修改applicatoin.properties文件,在配置文件中加入:
server.port=9090


其中@SpringBootApplication申明让spring boot自动给程序进行必要的配置,等价于以默认属性使用@Configuration,@EnableAutoConfiguration和@ComponentScan

@RestController返回json字符串的数据,直接可以编写RESTFul的接口;


Spring boot默认是,这样直接通过http://ip:port/就可以访问到index页面,如果要修改为http://ip:port/path/ 访问的话,那么需要在application.properties文件中加入server.context-path = /你的path,比如:spring-boot,那么访问地址就是http://ip:port/spring-boot 路径

server.context-path=/spring-boot


改变JDK编译版本

Spring Boot在编译的时候,是有默认JDK版本的,如果我们期望使用我们要的JDK版本的话

这个只需要修改pom.xml文件的<build> -- <plugins>加入一个plugin即可。

<plugin>   <artifactId>maven-compiler-plugin</artifactId>   <configuration>      <source>1.8</source>      <target>1.8</target>   </configuration></plugin>

添加了plugin之后,需要右键Maven Update Projects,这时候你可以看到工程根目录下的JRE System Library 版本更改了


中文翻译文档:https://qbgbook.gitbooks.io/spring-boot-reference-guide-zh/content/

转自:http://www.cnblogs.com/liangblog/p/5207855.html 

            http://412887952-qq-com.iteye.com/blog/2291500


0 0
原创粉丝点击