当前位置: 首页 > news >正文

初入SpringBoot——使用IDEA构建最小SpringBootDemo

前言

从SpringBoot一出现,就开始关注这个东西了。

但是一直不敢使用,因为一个原则是刚出来的东西肯定有很多坑。而且之后会不会流行也需要时间的检验。

现在渐渐的时间检验之后,SpringBoot渐渐在微服务中脱颖而出。也为SpringColud打下了一个良好的基础。

这里就简单记录一下SpringBoot的基础学习过程,方便以后回来查看。

 

环境说明

IDE使用的是idea,jdk使用的是1.8,使用maven3.3.9进行依赖管理

 

构建最小项目

imageimage

 

imageimage

这里根据具体需要添加,这里构建最小系统只需要web即可

我使用SpringBoot1.5.3这个版本

 

配置与运行

W2FKV`DVFIO7~E3NT$$B3~P

找到项目名称+Application的类中右键run即可运行。

这个也是SpringBoot最大的特点,就行运行一个java程序一样,运行一个main方法就可以直接启动整一个项目。

然后本地直接使用地址http://localhost:8080/ 进行访问,然后肯定就是404嘛,虽然页面和tomcat的不一样但是还是404,需要写一个最简单的controller进行测试。

package com.example.demo;

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

@RestController
public class HelloController {

    @GetMapping(value = "/hello")
    public String hello(){
        return "Hellow Spring Boot";
    }
}

然后使用地址http://localhost:8080/hello进行访问

 

配置的部分有点的多,这里我删除了原来的application.properties

删除一些不需要的东西

image

而使用了application.yml配置起来会更方便简洁

在文件中application.yml

image

server:
port: 8080

这样写就可以配置端口号等一些基本服务参数了,具体的别的配置可以自行搜索,这边不做列举。

 

controller的使用

基本和springMVC中controller的使用是一模一样的。

记一下几个新的好用的注解吧。

@RestController  这个注解等同于写了,@Controller+@ResponseBody

@RequestParam(value = "id", required = false, defaultValue = "1")

这个注解用来获取传来的值,第一个为名字,第二个为不是必传,第三个为默认值

@GetMapping(value = "/hello")  只能用get方式访问的地址,比原来写method要简洁。

 

总结

以上是基本的springBoot配置,也就是一个最小项目的构建,之后的服务层以及数据访问层会根据springBoot对于他们的支持会有一些不同的改变。

但是大致上面来说,你已经可以构建一个和原来ssm或者ssh差不多的架构了。后面也只是特性上面的区别了。

相关文章:

  • Spring.NET学习笔记7——依赖对象的注入(基础篇) (转)
  • Forword(请求转发)与Redirect(重定向) 区别
  • [delphi]保证程序只运行一个实例
  • vue常用的指令
  • 商业计划书范本
  • 聊聊kafka0.8的topic的partition以及topicCountMap
  • FloodFill(漫水填充)算法
  • 升级BIOS解决DELL R730XD虚拟机死机问题
  • C# 委托,事件和Lambda表达式
  • ES6学习笔记四 default、rest、Multi-line Strings
  • SharePoint 2010 Excel Service 入门——在网页上显示Excel内容
  • New Concept English Two 33 94
  • 100%高度全屏自适应
  • Django REST框架--关系和超链接api
  • sql语句的字段转成Date
  • android图片蒙层
  • conda常用的命令
  • Fastjson的基本使用方法大全
  • HTML5新特性总结
  • Linux快速配置 VIM 实现语法高亮 补全 缩进等功能
  • Python 基础起步 (十) 什么叫函数?
  • Python爬虫--- 1.3 BS4库的解析器
  • ViewService——一种保证客户端与服务端同步的方法
  • 诡异!React stopPropagation失灵
  • 检测对象或数组
  • 开源地图数据可视化库——mapnik
  • 前端攻城师
  • 前端设计模式
  • 强力优化Rancher k8s中国区的使用体验
  • 如何设计一个微型分布式架构?
  • 数组大概知多少
  • 微信开源mars源码分析1—上层samples分析
  • 译自由幺半群
  • ​虚拟化系列介绍(十)
  • (07)Hive——窗口函数详解
  • (2)nginx 安装、启停
  • (C语言)共用体union的用法举例
  • (二) Windows 下 Sublime Text 3 安装离线插件 Anaconda
  • (二)【Jmeter】专栏实战项目靶场drupal部署
  • (非本人原创)史记·柴静列传(r4笔记第65天)
  • (附源码)spring boot智能服药提醒app 毕业设计 102151
  • (论文阅读笔记)Network planning with deep reinforcement learning
  • (三)模仿学习-Action数据的模仿
  • (顺序)容器的好伴侣 --- 容器适配器
  • (一)使用Mybatis实现在student数据库中插入一个学生信息
  • (转)创业家杂志:UCWEB天使第一步
  • (转载)利用webkit抓取动态网页和链接
  • ***通过什么方式***网吧
  • .NET 2.0中新增的一些TryGet,TryParse等方法
  • .NET Core 中插件式开发实现
  • .vue文件怎么使用_vue调试工具vue-devtools的安装
  • /dev/sda2 is mounted; will not make a filesystem here!
  • ::before和::after 常见的用法
  • [ CTF ] WriteUp-2022年春秋杯网络安全联赛-冬季赛
  • [ vulhub漏洞复现篇 ] JBOSS AS 4.x以下反序列化远程代码执行漏洞CVE-2017-7504