spring boot----简单入门

Spring Boot其实就是spring,为了简便spring框架的搭建,快速开发项目而推出的另一种方式。使用spring boot,搭建框架将变得特别快。可以有更多的时间在代码性能上优化了。

一、Spring Boot个人感觉的优点:

​ 1)搭建一个简单运行的框架很快,仅仅就是几个依赖就可以了。

​ 2) 很多的配置,可以不用写XML配置文件,只需要写在一个统一的配置文件里(默认是application.properties/application.yml)或者使用java类的形式写配置类。

​ 3)简化了很多啰嗦的配置,提高项目搭建效率。比如数据库的dataSource、sqlSessionFactory等等。

二、 Spring Boot个人感觉的缺点:

​ 1) 配置不全面,很多以前在XML里的详细配置,到了spring boot里就很难设置的那么详细,当然肯定也有方法设置,比如额外的XML配置可以引入启动。

​ 2) 设置简洁,但是前提也要知道如何设置,很多功能的设置还要从网上一点点的搜出来,不过谁都有第一次,知道如何设置了,下一次搭建起来就感觉很清爽了。

​ 3)默认设置太多,到现在领导让我查下spring boot的内嵌tomcat版本是多少,线程数和连接数,以及内存,这些必要的东西都是多少,应该如何设置。

​ 4)必须依靠Maven那种根据依赖引入jar包的项目管理工具,这我也不知道是缺点还是优点,感觉没有像maven这种工具,它完全发挥不出作用了。

三、Spring boot简单实例----创建可以访问页面的小项目

1、首先创建一个Maven project,在pom.xml里导入如下依赖

   <!-- Spring Boot 启动父依赖 --><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1.5.1.RELEASE</version></parent>
    <!-- Spring Boot Web 依赖 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency>

​ 注意:我们都知道每个项目里都只有一个parent标签,如果你的项目是父子项目(创建方法请看:http://blog.csdn.net/wohaqiyi/article/details/71757480),那这里的parent标签内容就要粘到你的父项目里的pom.xml里即可,如果还有爷爷项目,那就再到爷爷项目里粘上就可以了,哈哈。如果你将以上两个依赖引入后,更新下项目,不出意外,在Maven的jar包里就会有以下内容:

img

还有下边这张图:

img

2.通过上边的两张图可以看出来,基本的一个spring 项目所需要的jar包都全了。接着往下说。

Spring Boot项目默认是jar包形式,但是我试了建成war包,也没影响,war包即是可以到tomcat里运行的,但是通过上边的图可以看到spring boot默认有内嵌的tomcat容器,也就是说spring boot运行并不依赖tomcat容器,它的运行是通过一个main方法运行项目的。

首先,它的运行类,应该处在包结构的最上方,如下边这个:
img

3. 为什么会有这样的要求呢?

​ 传统的spring 项目的bean的初始化都是需要配置扫描位置,即创建各种bean标签等等,这样在容器启动后才能实例这些bean,而spring boot没有那些配置文件,它的扫描,就是从启动类的位置开始,向下级包扫描,将所需的bean纳入它的容器里。

请注意:spring boot可以和很多东西结合,它本身就是个spring 项目,只是方法不同了而已,如果大家在以后运行spring boot项目出现某个bean不存在,或者找不到某个类的情况,请试试把那个类的位置往低级包里放下,可能容器在调用该类的时候,spring boot还没有扫描到这个类,所以出现该类不存在的情况,当然这只是可能的原因。(尤其spring boot与dubbo结合的时候,基本都是这个原因)

4.创建启动类

在项目的靠上位置写一个启动类,如下:

package test.spring;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication //spring boot启动必须引入的注解
public class SpringBootTest {public static void main(String[] args) {SpringApplication.run(SpringBootTest.class, args);}
}

关于@SpringBootApplication注解的解释请自己百度下吧。

5.创建Controller

package test.spring.controller;import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class TestController {@RequestMapping(value="abc/akf",method=RequestMethod.GET)public String abc(String name){return "姓名:"+name;}
}

​ Spring Boot里的Controller注解是@RestController,而且它的返回json格式不需要加@ResponseBody注解,默认就是json格式,但是有一点如果你返回的是jsp或者静态页面等等,你还是需要用@Controller注解

6.配置文件

​ Spring Boot配置文件默认就一个,就是application.properties或者application.yml,这是两种书写格式,它的放置位置在src/main/resource下。如下图所示:

img

以上配置的内容即配置了端口号和项目名称,如果不配置项目名称,默认是/,也就是localhost:8081,如果配置上项目名称,就变成了localhost:8081/springboot

7.启动项目

运行启动类的main方法即可,查看控制台如下:
img
补充一下上图:可以看到日志打印有一定的规则,其实spring boot默认是用的logback日志打印,但是刚才并没有配置日志的相关信息,这个日志打印来自于哪里呢?

我的Spring Boot是来自于引入的spring-boot-1.5.1.RELEASE.jar,在该jar包里有如下位置:
img

也就是说它的打印规则其实就是按照这几个文件配置的进行打印。如果想自行配置日志,会在下一篇文章中说spring boot配置logback日志。

8、页面访问

启动完项目之后,访问如下路径,即可获取到返回值。
在这里插入图片描述

到此,一个简单的spring boot项目搭建完成。下一篇会说Spring Boot+logback日志的配置。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/556730.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

android中给button加图标,Android,如何在我的代码中的TabButton中添加图标

在这里,我制作了5个工作正常的Tab按钮,但现在我想为每个Tab添加图标,如何相对于Tab按钮添加Tab图标….请指导/帮助我.我第一次使用stackOverflow,请告诉我在发布此代码时是否错过了任何步骤…提前致谢package com.vishesh.soapbox;import android.app.TabActivity;import andro…

android js 代码混淆工具,好用的JS(Javascript)混淆加密工具-HDS JSObfuscator 2.14版

好用的JS(Javascript)混淆加密工具-HDS JSObfuscator 2.14版书法字体2017.06.23css压缩分享一款好用的JS混淆加密工具:HDS JSObfuscator 2.14版&#xff0c;HDS JSObfuscator兼顾了JS压缩、JS混淆和JS加密三大功能。js加密工具的主要作用就是为了保护Javascript代码&#xff0c…

Maven 建立父子项目和跨项目调用内容的步骤

使用Maven管理项目&#xff0c;同时我们是做微服务&#xff0c;所以对于微服务项目来说&#xff0c;使用Maven建立起一个父子项目这种关系&#xff0c;很方便管理&#xff08;只是个人感觉&#xff09; 设计层面 &#xff08;1&#xff09;服务端和客户端肯定是分开写的&…

android支付宝运动修改器,一键修改支付宝运动步数-修改支付宝运动步数工具下载不要root手机版-西西软件下载...

修改支付宝运动步数工具是一款支付宝运动步数修改工具和教程,QQ微信也可以修改&#xff0c;最近在支付宝中推出了各种运动活动&#xff0c;很多朋友表示想要直接刷步数&#xff0c;不想去亲自运动来增加步数。那么下面手机乐园水银师小编就为大家介绍了支付宝快速刷步数的方法&…

spring boot配置tomcat部署

spring boot本身默认为jar包运行&#xff0c;可以改为war包&#xff0c;然后运行在tomcat里 具体修改的步骤如下&#xff1a; 1.在pom.xml文件里添加需要的依赖&#xff1a; <dependency><groupId>org.springframework.boot</groupId><artifactId>s…

android同步aar到jcenter,android上传aar到jcenter

一、jcenter配置1、jcenter官网注册账号官网地址&#xff1a;https://bintray.com注册页面&#xff1a;2、注册成功记录API Key 鼠标放在账户名上&#xff0c;点击Edit Profile,选择API Key,在这里是需要输入登录密码的&#xff0c;然后就可以看到你的key3、创建仓库点击此处进…

spring boot配置logback日志

spring boot配置logback日志 在上一篇spring boot入门里提过&#xff0c;Spring Boot默认的日志打印是logback,所以配置logback日志会很简单&#xff0c;但是也有注意的地方。 本次配置日志的需求 日志需要控制台打印和文件打印两种。其中文件打印按照日志级别分别保存到各自…

springboot-项目获取resources下文件的方法

spring项目获取resources下文件的方法 最近写读取模板文件做一些后续的处理&#xff0c;将文件放在了项目的resources 下&#xff0c;发现了一个好用的读取方法&#xff1a; 比如上边是你需要读取的文件&#xff1a; 读取的方法如下&#xff1a; //File file ResourceUtils…

几款经典好用的Android,经典实用 Android十款生活必备软件推荐

【IT168 应用】在众多Android应用中有许多优秀的生活方式软件&#xff0c;它们为我们的生活提供了各方面的服务&#xff0c;例如像查看天气预报、搜索周边美食、提醒重要事件等等。大家已经慢慢的熟悉了移动互联生活&#xff0c;尤其是工作中的白领&#xff0c;手机更成为了他们…

springboot配置单独的参数文件

一、介绍 是不是经常用Value注解&#xff1f;用过springboot的都知道它是从application.properties文件中引入某个变量的值&#xff0c;是不是已经灰常熟悉了&#xff1f; 默认在springboot启动后&#xff0c;加载application.properties文件&#xff0c;通过Value("${}&…

html cols跨两列,html – CSS奇怪,甚至有2个cols

一个模式中有四篇文章,因此4n的一些偏移应该可以解决问题.这似乎工作(Fiddle)&#xff1a;article {color:blue}article:nth-child(4n-1), article:nth-child(4n-2) {color:green}如果你不喜欢减去,加上也是一样的(Fiddle)&#xff1a;article {color:blue}article:nth-child(4…

nacos初探--作为配置中心

什么是nacos Nacos 支持基于 DNS 和基于 RPC 的服务发现&#xff08;可以作为springcloud的注册中心&#xff09;、动态配置服务&#xff08;可以做配置中心&#xff09;、动态 DNS 服务。 官方介绍是这样的&#xff1a; Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提…

教育部统考 计算机应用,9月教育部统考《计算机应用基础》试卷一附答案.doc

9月教育部统考《计算机应用基础》试卷一附答案2015年9月教育部统考《计算机应用基础》试卷一附答案一、单选题1.第三代计算机采用______作为主要的电子器件。A.电子管B.晶体管C.大规模集成电路D.小规模集成电路答案&#xff1a;D2.______领域是计算机应用中最诱人、也是难度大且…

Module build failed: Error: Cannot find module ‘node-sass‘ Require stack报错解决

Module build failed: Error: Cannot find module ‘node-sass’ Require stack报错解决 异常信息 解决方法 设置用淘宝镜像下载 npm install --save-dev node-sass --registryhttps://registry.npm.taobao.org --disturlhttps://npm.taobao.org/dist --sass-binary-sitehtt…

html5显示用户已读取文章,如何查看公众号文章是谁阅读

如何查看公众号文章是谁阅读内容导读&#xff1a;目前微信公众号并没有开放这个权限&#xff0c;不仅不能查看谁阅读了文章&#xff0c;也不能看到粉丝的微信号。这主要是考虑到微信用户的隐私&#xff0c;如果都能看到的话&#xff0c;某些公众号就可能去添加这些微信用户&…

npm的镜像替换淘宝

1.得到原本的镜像地址 npm get registry > https://registry.npmjs.org/2.设成淘宝的 npm config set registry http://registry.npm.taobao.org/yarn config set registry http://registry.npm.taobao.org/3.换成原来的 npm config set registry https://registry.npmj…

xp系统怎样添加桌面计算机名,教你win10系统电脑桌面怎么添加日历

很多用户都会选择在电脑的桌面上建立一个日历小挂件来提醒自己&#xff0c;其实在电脑桌面添加日历&#xff0c;可防止用户耽误工作进程的安排&#xff0c;不知win10系统电脑桌面怎么添加日历的用户&#xff0c;请来看看下面的介绍吧。日历对很多用户来说是非常重要的&#xff…

什么是Nacos?Nacos注册配置中心介绍

一、什么是Nacos 英文全称Dynamic Naming and Configuration Service&#xff0c;Na为naming/nameServer即注册中心,co为configuration即注册中心&#xff0c;service是指该注册/配置中心都是以服务为核心。服务在nacos是一等公民 二、Nacos原理 nacos简单介绍 Nacos注册中心…

矩阵 计算机应用,《计算机视觉算法:基于OpenCV的计算机应用开发》 —3.3 元素级矩阵操作...

3.3 元素级矩阵操作基于元素的(元素级)矩阵操作是计算机视觉中的一类数学函数和算法&#xff0c;它处理矩阵的各个元素&#xff0c;或者说&#xff0c;图像中的每个像素。注意基于元素的操作可以并行化&#xff0c;因此矩阵元素的处理顺序不重要。这个特点是本节函数和算法与本…

微服务系列之ZooKeeper注册中心和Nacos注册中心Nacos和Zookeeper对比

一、ZooKeeper注册中心 Zookeeper 是 Apache Hadoop 的子项目&#xff0c;是一个树型的目录服务&#xff0c;支持变更推送&#xff0c;适合作为 Dubbo 服务的注册中心&#xff0c;工业强度较高&#xff0c;可用于生产环境&#xff0c;推荐使用。 流程说明&#xff1a; 服务提…