springboot学习-搭建第一个springboot应用

准备:

idea2017、jdk1.8、springboot2.0.3


首先,新建工程,选择Spring Initializr,点击next


springboot学习-搭建第一个springboot应用


第二步填写Group及Artifact:


springboot学习-搭建第一个springboot应用



第三步,勾选 Dependencies,选择web:


springboot学习-搭建第一个springboot应用


最后点击下一步,直到完成创建项目,此时可以将我们暂时用不到的文件删除,如图:


springboot学习-搭建第一个springboot应用



项目创建成功,我们运行Bootdemo01Application,可以看到成功启动了默认的8080端口:


springboot学习-搭建第一个springboot应用


但在浏览器输入localhost:8080时会出现错误页面,这是因为我们还没有写任何controller,我们新建一个controller,使得在浏览器上展示一些东西

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
/**
* Created by 57783 on 2018/7/4.
*/
@RestController
public class FristController {
   @RequestMapping(value = "/",method = RequestMethod.GET)
   public String HelloWorld(){
       return "HelloWorld";
   }
}


此时运行Bootdemo01Application,我们可以看到谁浏览器打印出HelloWorld。第一个springboot应用就做好了,搭建确实简便了很多。


几个问题:


1、我们看到controller类的注解为@RestController,那么@RestController和@Controller有什么区别呢?


@RestController注解相当于@ResponseBody + @Controller合在一起的作用。


  1. 如果只是使用@RestController注解Controller,则Controller中的方法无法返回jsp页面,配置的视图解析器InternalResourceViewResolver不起作用,返回的内容就是Return 里的内容。


  1. 如果需要返回到指定页面,则需要用 @Controller配合视图解析器InternalResourceViewResolver才行。


  1. 如果需要返回JSON,XML或自定义mediaType内容到页面,则需要在对应的方法上加上@ResponseBody注解。


  1. 现在都讲前后端分离,传输的都是json,很少用jsp页面了,那@RestController可能用的更多一些。


2、如果8080端口被占用了,我们希望使用别的端口访问怎么办?


工程下resources/application.properties里面加上:server.port=8081即可


3、如何读取配置文件中的信息?


在resources下有一个默认的配置文件application.properties,我们在项目中不使用properties配置文件,而是使用更加方便简洁的yml文件。项目结构:


springboot学习-搭建第一个springboot应用


我们举实例来了解一下读取配置文件数据的方法:


首先,在yml中配置一个用户信息,包含用户名及密码:


server:
  port: 8080
username: xiaozhi
password: 12345
在Controller中使用@Value注解读取该配置信息:
package com.javazhiyin;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
/**
* Created by 57783 on 2018/7/4.
*/
@RestController
public class FristController{
    @Value("${username}")
    private String username;
    @Value("${password}")
    private String password;
    @RequestMapping(value = "/",method = RequestMethod.GET)
    public String HelloWorld(){
        return "用户名:"+username+";"+"密码:"+password;
    }
}


此时,访问localhost:8080,出现如下页面:


springboot学习-搭建第一个springboot应用


们可以看到springboot读取配置文件成功了。



上一篇:【报错】spring整合activeMQ,pom.xml文件缺架包,启动报错:Caused by: java.lang.ClassNotFoundException: org.apache.xbean.spring.context.v2.XBeanNamespaceHandler


下一篇:实例探究字符编码:unicode,utf-8,default,gb2312 的区别