SpringBoot 简单介绍
一、springboot是啥?
1.什么是springboot?
1.1springboot是spring生态圈的一个轻量级框架,换句话说springboot就是spring,是spring的一个衍生版本
1.2如果是spring框架,项目中搭建完毕,无法实现任何的代码,也就是说spring没有办法帮助开发人员去连接数据库,对数据库做增删改查,也没有办法自动把shiro集成进来,需要开发人员手动编写xml配置文件,自己进行整合
1.3springboot其实就是集成好了很多框架的spring,直接根据springboot所提供的标准化编写配置即可,不再需要编写xml配置文件,springboot官方给出的解释就是干掉xml文件,使用Java代码进行编写配置通过Java类来代替xml
二、为什么使用?
2.为什么要用springboot来代替spring?
傻瓜式开发,减少了大量配置,降低了开发人员的标准,低层次的开发人员也可以进行编写业务逻辑,不再需要了解内部运行原理以及框架的集成和整合
三、实际操作?
3.1 创建maven项目,在pro.xml文件中,将spring-boot-starter-parent 引入进来。
<?xml version="1.0" encoding="UTF-8"?>
<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.aaa</groupId>
<artifactId>20190815-springboot</artifactId>
<version>1.0-SNAPSHOT</version> <!--1.添加 将spring当做父级工程
2.此时 这个工程已经变成spring项目下的一个子工程。
-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.22.RELEASE</version>
</parent>
<dependencies>
<!--
在springboot中会定义很多个starter,每一个starter都有自己不同的作用 web-start:引入项目所运行的基础环境 tomcat:最终springboot会自动把tomcat集成进项目中,不再需要使用外部tomcat进行启动
各种注解
@Controller
@Service
@RequestMapping
@ResponseBody
-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
</project> <!--<!–-->
<!--其实在springboot中并没有整合mybatis,以下的jar包依赖,是mybatis公司自己为了整合springboot所提供的,并不是springboot自带的-->
<!--所以需要从maven中下载jar包-->
<!--–>-->
<!--<dependency>-->
<!--<groupId>org.mybatis.spring.boot</groupId>-->
<!--<artifactId>mybatis-spring-boot-starter</artifactId>-->
<!--<version>1.3.0</version>-->
<!--</dependency>-->
3.2 创建入口类,在java源文件下,新建包,在包的根目录下,建立ApplicationRun.
package com.aaa.zxf.springboot;
/*
* 1.springboot 的入口方法
*
* 2.架构基本成型。
*
* 3.@SpringBootApplication 注解
* 自动加载springboot 所需要的配置
* 并将ApplicationRun 类,识别为整个项目的入口类。
*注意!
* 这个类,必须要放在所有业务的上一层。
* 就是说,至少需要放在springboot包下
*
* 4.最终springboot 是根据SpringApplication.run 来运行的
* */
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; //自动加载springboot 入口类
@SpringBootApplication
public class ApplicationRun {
public static void main(String[] args) {
SpringApplication.run(ApplicationRun.class,args);
}
}
3.3 在包中,建立controller 包,建立后台控制器
package com.aaa.zxf.springboot.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; /*
* 1.RestController
* 把整个 Controller, 都添加@ResponeBody 注解。
* 2.Controller
* 直接返回页面,不能处理ajax请求,需要处理,还要ajax请求,还要添加 ResponseBody 注解
* */
@RestController
public class TestController {
@RequestMapping("/demo")
public String test(){
return "检查springboot的效果。";
} }
3.4 运行项目,在浏览器中输入 localhost:8080/demo 测试是否取到了数据。
四、解析原理?
4.1 在自己的maven项目中,引入了 spring-boot-starter-parent,此时自己的工程就是Sringboot项目下的
一个子工程。
4.2 parent项目 引入了springbootdependcies ,是他的子项目。
4.3 在自己的项目中定义jar包的时候,就等同于是重写了,父类项目中的jar包,不需要版本号。
SpringBoot 简单介绍的更多相关文章
- springboot简单介绍
1.springboot简单介绍 微服务架构 Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程. 该框架使用了特定的方 ...
- CAS单点登录原理简单介绍
1. SSO简介 1.1 单点登录定义 单点登录(Single sign on),英文名称缩写SSO,SSO的意思就是在多系统的环境中,登录单方系统,就可以在不用再次登录的情况下访问相关受信任的系统. ...
- SpringBoot2.0源码分析(一):SpringBoot简单分析
SpringBoot2.0简单介绍:SpringBoot2.0应用(一):SpringBoot2.0简单介绍 本系列将从源码角度谈谈SpringBoot2.0. 先来看一个简单的例子 @SpringB ...
- 关于如何在其他包中写controller和简单介绍@SpringBootApplication
本文参考博客:https://blog.csdn.net/u013473691/article/details/52353923 关于@Configuration和@Bean参考博客:https:// ...
- [原创]关于mybatis中一级缓存和二级缓存的简单介绍
关于mybatis中一级缓存和二级缓存的简单介绍 mybatis的一级缓存: MyBatis会在表示会话的SqlSession对象中建立一个简单的缓存,将每次查询到的结果结果缓存起来,当下次查询的时候 ...
- 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍
一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...
- 利用Python进行数据分析(4) NumPy基础: ndarray简单介绍
一.NumPy 是什么 NumPy 是 Python 科学计算的基础包,它专为进行严格的数字处理而产生.在之前的随笔里已有更加详细的介绍,这里不再赘述. 利用 Python 进行数据分析(一)简单介绍 ...
- yii2的权限管理系统RBAC简单介绍
这里有几个概念 权限: 指用户是否可以执行哪些操作,如:编辑.发布.查看回帖 角色 比如:VIP用户组, 高级会员组,中级会员组,初级会员组 VIP用户组:发帖.回帖.删帖.浏览权限 高级会员组:发帖 ...
- angular1.x的简单介绍(二)
首先还是要强调一下DI,DI(Denpendency Injection)伸手获得,主要解决模块间的耦合关系.那么模块是又什么组成的呢?在我看来,模块的最小单位是类,多个类的组合就是模块.关于在根模块 ...
随机推荐
- Fibonacci String(hdu 1708)
Fibonacci String Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) ...
- 1076 - Get the Containers
1076 - Get the Containers PDF (English) Statistics Forum Time Limit: 2 second(s) Memory Limit: 32 ...
- 「实用」打造自我感觉非常漂亮的Mac终端
背景 (今天我是一个美妆博主) 突然发现自己使用的iterm2终端样式有些朴素,为了让她看起来花枝招展的,我决定给她打扮打扮.毕竟每天面对她的时间比对象还多-- 效果对比 因为每个人的喜好都不一样,所 ...
- SQL Server 数据库添加主键,唯一键,外键约束脚本
-- 声明使用数据库use 数据库;go -- 添加主键(primary key)约束-- 基本语法-- 判断主键约束是否存在,如果存在则删除,不存在则添加if exists(select * fro ...
- 访问局域网内其他主机的VMware虚拟机上的mysql数据库和redis缓存
上一篇写了访问局域网内其他主机的虚拟机上的项目 ,现在说说访问局域网内其他主机的虚拟机上的数据库和缓存 博主使用的linux是Ubuntu16.04: 一.安装数据库和缓存 这里连接的数据库和缓存以m ...
- Centos7上传文件和下载文件命令
https://www.cnblogs.com/patrick-yeh/p/12922829.html 使用工具:SecureCRT 或 Xshell 步骤一:安装lrzsz软件,root权限下.安装 ...
- Centos7 文件修改详情
Centos常规修改信息 记录文件在系统中的意义 /etc/locale.conf ---修改字符集文件 /etc/profile ---修改环境变量
- Golang实现集合(set)
package set package set import ( "bytes" "fmt" "sync" ) type Set struc ...
- 机器学习|线性回归算法详解 (Python 语言描述)
原文地址 ? 传送门 线性回归 线性回归是一种较为简单,但十分重要的机器学习方法.掌握线性的原理及求解方法,是深入了解线性回归的基本要求.除此之外,线性回归也是监督学习回归部分的基石. 线性回归介绍 ...
- Jmeter创建一个http请求
1.点击'Test Plan'为测试计划命名为"创建用户接口" 2.新建一个[线程组],在[创建用户接口]处点击右键,选择[添加]-->[Threads(Users)]--& ...