您的位置:首页 > 编程语言 > Java开发

SpringBoot学习-(1)第一个小例子

2018-01-12 17:38 633 查看
也是刚刚接触SpringBoot不久,本系列博客仅作为学习笔记,记录学习的过程。

大牛可跳过。

1.springboot是什么

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。

2.springboot的特点

创建独立的Spring应用程序

嵌入的Tomcat,无需部署WAR文件

简化Maven配置

自动配置Spring

提供生产就绪型功能,如指标,健康检查和外部配置

绝对没有代码生成和对XML没有要求配置

3.创建一个小例子

1)创建项目

使用maven创建一个项目



2)配置pom.xml文件

pom.xml配置文件怎么配呢,不知道!那么去官网看看怎么配置的!



从spring的官网我们看到spring已经给我们列出了最基本的配置。需要继承自spring-boot-starter-parent,这里做了基本的配置和依赖,所以只要在这里指定了版本,所以后面在引入其他依赖包的时候不用指定版本号,因为spring-boot会根据配置的spring-boot-starter-parent版本自动寻找并下载依赖。

<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.boot</groupId>
<artifactId>spring-boot-study</artifactId>
<version>0.0.1-SNAPSHOT</version>

<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.9.RELEASE</version>
</parent>

<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>

</project>


配置完之后,打开pom依赖。发现springboot自动为我们下载好了所有的jar包。这就是springboot简单的原因。



3)创建一个实体

UserInfo

package com.tang.bean;

public class UserInfo {

private Integer id;
private String userName;
private String loginName;
private String password;
private Integer age;

public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getLoginName() {
return loginName;
}
public void setLoginName(String loginName) {
this.loginName = loginName;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}

}


4)创建一个controller

UserInfoController

package com.tang.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import com.tang.bean.UserInfo;

/**
* 这里的@RestController相当于@Controller+@ResponseBody
* @author Tang
*/
@RestController
public class UserInfoController {

@RequestMapping("/getUser")
public UserInfo getUserInfo(){
UserInfo userInfo = new UserInfo();
userInfo.setId(1);
userInfo.setUserName("张三");
userInfo.setLoginName("zhangsan");
userInfo.setPassword("123456");
userInfo.setAge(12);
return userInfo;
}
}


当然也可以使用其他方式配置controller如:

@Controller
public class UserInfoController{

@RequestMapping(value="/getUser")
@ResponseBody
public UserInfo getUserInfo(){
UserInfo userInfo = new UserInfo();
userInfo.setId(1);
userInfo.setUserName("张三");
userInfo.setLoginName("zhangsan");
userInfo.setPassword("123456");
userInfo.setAge(12);
return userInfo;
}
}


或者

@Controller
@ResponseBody
public class UserInfoController{

@RequestMapping(value="/getUser")
public UserInfo getUserInfo(){
UserInfo userInfo = new UserInfo();
userInfo.setId(1);
userInfo.setUserName("张三");
userInfo.setLoginName("zhangsan");
userInfo.setPassword("123456");
userInfo.setAge(12);
return userInfo;
}
}


不过这里建议使用@RestController注解。

5)创建启动类

App

这里的App所在的位置是有要求的,单并不是严格要求。

package com.tang;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class App {

public static void main(String[] args) {
SpringApplication.run(App.class, args);
}
}


6)启动

该怎么启动呢?没有web.xml,没有WebContent。

直接右键启动:run as ->Java Application即可



看到启动的端口是8080。

7)测试结果

访问路径:http://localhost:8080/getUser



getUser方法没有添加@ResponseBody,直接就可以将json返回(如果需要返回字符串,则只需要将返回值类型设置为String,返回String类型即可,这里不做展示)。

这是因为Springboot内部是通过jackson对对象进行解析的。

到此springboot的第一个小例子就介绍完了。有没有觉得很简单。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  springboot