初级Springboot(一)

作者 : Stanley 罗昊
转载请注明出处和署名,谢谢!

一.了解Springboot

做Java开发的小伙伴都知道,我们在做项目的时候,需要去写大量的配置文件,另外呢,集成第三方组件的时候,也非常复杂,然而,现在流行的语言呢使用起来都非常的简单,这样就降低了Java的京竞争力,所以说呢,在这种情况下,Springboot就产生了;
总之,它的目前呢,就是来减少我们Java程序员的工作量,下面我们来介绍一下Springboot的核心特点:
首先呢,我们使用Springboot我们可以直接创建Java工程,不需要去创建web工程了,那么,最后打包的时候呢,打成一个jar包,虽然打成一个jar包它可以,以web程序的形式来运行;
另外呢,Sprinhboot它内嵌了Servlet容器,比如说我们常用的Tomcat、Jetty,那么这个Springboot呢内置了这样呢,我们就不需要自己去配置,所以呢,也减少了在咱们的这个开发者的工作量;
还有一点就是Maven/Gradle进行jar包依赖的时候这个Springboot也进行了简化;
另外呢,Springboot还可以自动的去配置这个Bean,我们在之前使用Spring的时候需要自己手动去配置,而Springboot呢可以自动的去配置;
然后呢,Springboot还提供了基于HTTP、ssh、telnt对运行时的项目进行一个监控;
Springboot最大的特点呢,就是减少了任何的XML的配置,这里面呢,我们基本上就使用注解就可以了;

二.入门程序

入门程序的话就比较简单,我这边使用的是IDEA;
下面呢,我们就简单的来创建一个Springboot项目;
我呢,选择使用Gradle来创建一个springboot工程,创建步骤很简单,在这里我就不讲述了;
创建完成后呢,我们现在以单体项目为例,创建完成之后,一个完整的Springboot项目就建好了,因为我们现在建的是一个单体项目,所以无需建立多个服务;
在项目中的,build.gardle中配置项目的依赖,然后引入依赖就行了;
一个单体的Springboot项目就建好了;

三.实战开发 - 启动自动配置注解

在我们编写Controller层的时候,我们仅需在接口上添加@RequestMing,在括号中填写我们的访问的url;
但是,既然用到了Controller,我们马上就能想起来到,我们需要配置SpringMvc一些相关组件,比如说,处理器映射器,处理器适配器,视图解析器,以及核心控制器,但是呢,咱们任何配置都没有写,照样可以访问这个Controller,当然,这也是有原因呢,这里面起作用的呢是一个注解:
@EnableAutoConfiguration,很显然,这个注解的作用就是,启动自动配置,所以呢,所有关于SpringMvc的配置呢,Springboot注解已经帮你做好了;
另外,我们访问这个Controller接口的时候,我们在可以直接访问,这也就表明,Springboot内置了Tomcat,并且默认端口是8080;
这个时候,我们就好奇,@EnableAutoConfiguration这个注解,到底是什么原理呢?它怎么就知道我们想要的配置呢?
@EnableAutoConfiguration:
启动自动配置该注解会使Springboot根据项目依赖的jar包进行自动配置项目的配置项,例如:、
我们添加了spring-boot-srarter-web的依赖,项目中也就会引入SpringMvc的依赖,Springboot就会自动配置Tomcat和SpringMvc

四.实战开发 - 自定义bannr

在启动Springboot项目的时候,我们在控制台可以看到一个打印的图标:

这个呢,我们称之为banner,如果想改变,其实很容易,我们只需要访问以下网址:
然后选择你喜欢的图标:

然后复制生成好的图标,然后再将我们桌面上创建一个记事本,把文本粘贴进去:

然后将这个记事本取名为:banner.txt,名称不能乱起!!
然后,将这个记事本,复制,粘贴到项目中的resources:

再启动,我们就发现,图标变啦:

 

初级Springboot(一)的更多相关文章

  1. SpringBoot+Shiro+Redis共享Session入门小栗子

    在单机版的Springboot+Shiro的基础上,这次实现共享Session. 这里没有自己写RedisManager.SessionDAO.用的 crazycake 写的开源插件 pom.xml ...

  2. MyBatis初级实战之三:springboot集成druid

    OpenWrite版: 欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kuber ...

  3. SpringBoot从零单排 ------初级入门篇

    有人说SSM已死,未来是SpringBoot和SpringCloud的天下,这个观点可能有点极端,但不可否认的是已经越来越多的公司开始使用SpringBoot.所以我将平时学习SpringBoot的内 ...

  4. SpringBoot初级知识总结,太难了,未完待续.......

    idea如何打包发布springboot 1.1.环境准备window系统,jdk8环境,springboot项目,maven3.5.4环境 1.2.进行打包发布 打开idea编辑器,打开一个写好的d ...

  5. SpringBoot 项目部署(初级)

    之前的项目一直在本地电脑上写,最近需要将项目部署到服务器上进行联调测速度.于是,在网上搜集资料后简单的进行一下总结. 由于本次打包部署是为了测试,于是很多内容做的还不算详尽,只是将项目简单的打包为ja ...

  6. springboot(二):web综合开发

    上篇文章介绍了spring boot初级教程:spring boot(一):入门篇,方便大家快速入门.了解实践Spring boot特性:本篇文章接着上篇内容继续为大家介绍spring boot的其它 ...

  7. SpringBoot初体验(续)

    1.如果你还不知道SpringBoot的厉害之处,或者你不知道SpringBoot的初级用法,请移步我的上一篇文章,传送门 2.SpringBoot中的表单验证 所谓验证,无非就是检验,对比,正如ja ...

  8. 整合springboot(app后台框架搭建四)

    springboot可以说是为了适用SOA服务出现,一方面,极大的简便了配置,加速了开发速度:第二方面,也是一个嵌入式的web服务,通过jar包运行就是一个web服务: 还有提供了很多metric,i ...

  9. Spring SpringMVC SpringBoot SpringCloud概念、关系及区别

    一.正面解读: Spring主要是基于IOC反转Beans管理Bean类,主要依存于SSH框架(Struts+Spring+Hibernate)这个MVC框架,所以定位很明确,Struts主要负责表示 ...

随机推荐

  1. cols

    题目描述 请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径.路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子.如果一条路径经过了矩阵中 ...

  2. 【php】php安全问题

    使用 —enable-force-cgi-redirect 选项 设置 doc_root 或 user_dir 或 open_basedir PHP运行的用户身份不能为ROOT 数据库字段加密 程序不 ...

  3. linux用户和用户组管理详解

    Linux 用户和用户组管理 Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统. 用户的账号一方面可以帮助 ...

  4. UVa 10934 DP Dropping water balloons

    首先想一下特殊情况,如果只有一个气球,我们要确定高度只能从下往上一层一层地测试,因为如果气球一旦爆了,便无法测出气球的硬度. 如果气球有无数个,那么就可以用二分的方法来确定. 一般地,用d(i, j) ...

  5. luogu2590 [ZJOI2008]树的统计

    树剖裸题 #include <iostream> #include <cstdio> using namespace std; int n, uu, vv, hea[30005 ...

  6. Selenium WebDriver- 操作frame中的页面元素

    #encoding=utf-8 import unittest import time from selenium import webdriver from selenium.webdriver i ...

  7. Pycharm 简单设置

  8. 为Anaconda添加新的源

    为Anaconda添加新的源 在cmd中输入以下内容即可, 清华的源,速度非常快 conda config --add channels https://mirrors.tuna.tsinghua.e ...

  9. PHP中define()和const定义常量的区别

    在PHP中可以通过define()和const两种方式定义常量可是在开发中我们应该什么时候用define()定义常量,什么时候用const定义常量? 这两种方式定义常量的主要区别是什么? 从5.3版本 ...

  10. [java开发篇][代码规范]

    http://www.hawstein.com/posts/google-java-style.html Google Java编程风格指南 January 20, 2014 作者:Hawstein出 ...