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

简介: springboot学习-搭建第一个springboot应用

准备:

idea2017、jdk1.8、springboot2.0.3


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


image.png


第二步填写Group及Artifact:


image.png



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


image.png


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


image.png



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


image.png


但在浏览器输入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文件。项目结构:


image.png


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


首先,在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,出现如下页面:


image.png


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



目录
相关文章
|
1月前
|
前端开发 Java 开发者
Spring生态学习路径与源码深度探讨
【11月更文挑战第13天】Spring框架作为Java企业级开发中的核心框架,其丰富的生态系统和强大的功能吸引了无数开发者的关注。学习Spring生态不仅仅是掌握Spring Framework本身,更需要深入理解其周边组件和工具,以及源码的底层实现逻辑。本文将从Spring生态的学习路径入手,详细探讨如何系统地学习Spring,并深入解析各个重点的底层实现逻辑。
66 9
|
1月前
|
JavaScript Java 项目管理
Java毕设学习 基于SpringBoot + Vue 的医院管理系统 持续给大家寻找Java毕设学习项目(附源码)
基于SpringBoot + Vue的医院管理系统,涵盖医院、患者、挂号、药物、检查、病床、排班管理和数据分析等功能。开发工具为IDEA和HBuilder X,环境需配置jdk8、Node.js14、MySQL8。文末提供源码下载链接。
|
2月前
|
前端开发 Java 数据库
SpringBoot学习
【10月更文挑战第7天】Spring学习
43 9
|
1月前
|
Java Kotlin 索引
学习Spring框架特性及jiar包下载
Spring 5作为最新版本,更新了JDK基线至8,修订了核心框架,增强了反射和接口功能,支持响应式编程及Kotlin语言,引入了函数式Web框架,并提升了测试功能。Spring框架可在其官网下载,包括文档、jar包和XML Schema文档,适用于Java SE和Java EE项目。
33 0
|
2月前
|
XML Java 数据格式
Spring学习
【10月更文挑战第6天】Spring学习
27 1
|
2月前
|
Java 测试技术 开发者
springboot学习四:Spring Boot profile多环境配置、devtools热部署
这篇文章主要介绍了如何在Spring Boot中进行多环境配置以及如何整合DevTools实现热部署,以提高开发效率。
104 2
|
2月前
|
前端开发 Java 程序员
springboot 学习十五:Spring Boot 优雅的集成Swagger2、Knife4j
这篇文章是关于如何在Spring Boot项目中集成Swagger2和Knife4j来生成和美化API接口文档的详细教程。
222 1
|
2月前
|
Java API Spring
springboot学习七:Spring Boot2.x 拦截器基础入门&实战项目场景实现
这篇文章是关于Spring Boot 2.x中拦截器的入门教程和实战项目场景实现的详细指南。
34 0
springboot学习七:Spring Boot2.x 拦截器基础入门&实战项目场景实现
|
2月前
|
Java API Spring
springboot学习六:Spring Boot2.x 过滤器基础入门&实战项目场景实现
这篇文章是关于Spring Boot 2.x中过滤器的基础知识和实战项目应用的教程。
40 0
springboot学习六:Spring Boot2.x 过滤器基础入门&实战项目场景实现
|
2月前
|
Java 关系型数据库 MySQL
springboot学习五:springboot整合Mybatis 连接 mysql数据库
这篇文章是关于如何使用Spring Boot整合MyBatis来连接MySQL数据库,并进行基本的增删改查操作的教程。
239 0
springboot学习五:springboot整合Mybatis 连接 mysql数据库