本文介绍 Springboot 的简单应用,最近什么分布式,微服务很受欢迎,本文介绍的Springboot 就是在微服务中使用的微框架。根据官方介绍 Springboot 是简化了Spring的,不需要定义配置模板,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。具体介绍去官网了解。
需要工具:
maven。eclipse
Springboot 是自带tomcat的,不要另外配置
entity:
public class User {
private String id;
private String username;
get set....
这里只是简单介绍使用没有使用到数据库 直接Controller层展示假数据
Controller
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
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;
import org.zw.mySpringboot.entity.User;
@ComponentScan
@Configuration
@RestController
@RequestMapping("/user")
//@EnableAutoConfiguration
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;
}
}
使用很简单
MainApp
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
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;
import org.zw.mySpringboot.controller.UserController;
@RestController
@SpringBootApplication
@EnableAutoConfiguration
public class MainApplication implements EmbeddedServletContainerCustomizer{
/**
* 设置端口
*/
@Override
public void customize(ConfigurableEmbeddedServletContainer container) {
container.setPort(8011);
}
public static void main(String[] args) {
SpringApplication.run(MainApplication.class, args);
}
/* @RequestMapping("/main")
public String testPort(){
return "Hello 端口8011......";
}*/
}
上述有修改端口的代码 默认是8080 这里使用的是tamcat内置的服务
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>mySpringboot</groupId>
<artifactId>mySpringboot</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>mySpringboot</name>
<url>http://maven.apache.org</url>
<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>
<!-- mybatis -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.21</version>
</dependency>
</dependencies>
<!-- Package as an executable jar -->
<build>
<plugins>
<!-- <plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin> -->
<!-- Maven Assembly Plugin -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.4.1</version>
<configuration>
<!-- get all project dependencies -->
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<!-- MainClass in mainfest make a executable jar -->
<archive>
<manifest>
<mainClass>org.zw.mySpringboot.App</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<!-- bind to the packaging phase -->
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</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>
运行:
运行MainApp中的mian方法有以下结果
如果出现上述没有保存错,既可以访问页面了
一个简单的案例就ok了,如果有请加上面qq群联系,谢谢阅读
代码下载:http://download.csdn.net/detail/u010982856/9739812