本文共 5856 字,大约阅读时间需要 19 分钟。
昨天无意间看到Spring Boot ,今天又了解了一下,试着写一个Hello World! 今天看了半天,最后还是要用Maven最方便!以下:
一、工具
JDK1.7
Eclipse
Maven
这里Eclipse集成Maven的这一步就省了!
二、编码
新建Maven Project 命名为:SpringBoot 选项如图
2、修改工程目录,添加源文件夹后目录如下:
3、修改pom.xml文件如下:
4、编辑JAVA代码新建APP.class
package com.lgp.SpringBoot;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.EnableAutoConfiguration;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;@RestController@EnableAutoConfigurationpublic class App { @RequestMapping("/h") public String home() { return "Hello"; } @RequestMapping("/w") public String word() { return "World"; } public static void main( String[] args ) { System.out.println( "Hello World ! App!" ); SpringApplication.run(App.class, args); //SpringApplication.run(UserController.class, args); }}
运行此代码 服务端口默认8080 访问localhost:8080/h 展示Hello
localhost:8080/w 展示World
OK!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
---------------风格线---------------------
新建RestController风格的Controller
新建UserController
package com.lgp.SpringBoot;import org.springframework.context.annotation.ComponentScan;import org.springframework.context.annotation.Configuration;import org.springframework.web.bind.annotation.PathVariable;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;@ComponentScan@Configuration@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; } }}
需修改App.java
package com.lgp.SpringBoot;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.EnableAutoConfiguration;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;@RestController@EnableAutoConfigurationpublic class App { @RequestMapping("/h") public String home() { return "Hello"; } @RequestMapping("/w") public String word() { return "World"; } public static void main( String[] args ) { System.out.println( "Hello World ! App!" ); //SpringApplication.run(App.class, args); SpringApplication.run(UserController.class, args); }}
运行App.java 访问
新建其他Controller
package com.lgp.SpringBoot;import org.springframework.context.annotation.ComponentScan;import org.springframework.context.annotation.Configuration;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;@ComponentScan@Configuration@RestController@RequestMapping("/file")public class FileController { @RequestMapping("/name") public String getFileName(){ return "filename....."; } }
重启程序 访问
======================================================
修改默认端口
一、
package com.lgp.SpringBoot;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;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;@RestController@SpringBootApplicationpublic class MainApplication implements EmbeddedServletContainerCustomizer{ @Override public void customize(ConfigurableEmbeddedServletContainer container) { container.setPort(8011); } public static void main(String[] args) {// SpringApplication.run(MainApplication.class, args); SpringApplication.run(FileController.class, args); } @RequestMapping("/main") public String testPort(){ return "Hello 端口8011......"; }}
二、
package com.lgp.SpringBoot;import java.util.concurrent.TimeUnit;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.EnableAutoConfiguration;import org.springframework.boot.context.embedded.EmbeddedServletContainerFactory;import org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainerFactory;import org.springframework.context.annotation.Bean;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;@RestController@EnableAutoConfigurationpublic class App { @RequestMapping("/h") public String home() { return "Hello"; } @RequestMapping("/w") public String word() { return "World"; } public static void main( String[] args ) { System.out.println( "Hello World ! App!" ); //SpringApplication.run(App.class, args); SpringApplication.run(UserController.class, args); } @Bean public EmbeddedServletContainerFactory servletFactory(){ TomcatEmbeddedServletContainerFactory tomcatFactory = new TomcatEmbeddedServletContainerFactory(); tomcatFactory.setPort(8011); tomcatFactory.setSessionTimeout(10,TimeUnit.SECONDS); return tomcatFactory; }}
修改为8011
======================================================
转载地址:http://zqzoi.baihongyu.com/