一.什么是springbootTakesanopinionatedviewofbuildingproduction-readySpringapplications.SpringBootfavorsconventionoverconfigurationandisdesignedtogetyouupandrunningasquicklyaspossible.摘自官网翻译:采纳了建立生产就绪Spring应用程序的观点。SpringBoot优先于配置的惯例,旨在让您尽快启动和运行。springboot致力于简洁,让开发者写更少的配置,程序能够更快的运行和启动。它是下一代javaweb框架,并且它是sp
这篇文篇介绍,怎么为springboot程序构建一个docker镜像。docker是一个开源的应用容器引擎,基于Go语言并遵从Apache2.0协议开源。Docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似iPhone的app),更重要的是容器性能开销极低。准备工作环境:linux环境或mac,不要用windowsjdk8maven3.0docker对docker一无所知的看docker教程。创建一个springboot工程引入web的起步依赖,创建一个Cont
这篇文章主要介绍在springboot使用异步方法,去请求githubapi.创建工程在pom文件引入相关依赖:<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-web
创建根工程创建一个maven工程,其pom文件为:<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="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.0http://maven.apache.org/xsd/ma
springboot对JMS提供了很好的支持,对其做了起步依赖。构架工程创建一个springboot工程,在其pom文件加入:<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-mail</artifactId></dependency>添加配置spring.mail.host=smtp.163.comspring.mail.username=miles02@163.comspring.mail.pas
创建工程涉及了web,加上spring-boot-starter-web和spring-boot-starter-thymeleaf的起步依赖。<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boo
构建工程创建一个springboot工程,由于用到了web、thymeleaf、validator、el,引入相应的起步依赖和依赖,代码清单如下:<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.bo
这篇文章将介绍怎么通过spring去做调度任务。构建工程创建一个Springboot工程,在它的程序入口加上@EnableScheduling,开启调度任务。@SpringBootApplication@EnableSchedulingpublicclassSpringbootSchedulingTasksApplication{publicstaticvoidmain(String[]args){SpringApplication.run(SpringbootSchedulingTasksApplication.class,args);}}创建定时任务创建一个定时任务,每过5s在控制台打印当
这篇文章主要介绍,如何在springboot工程作为服务器,去接收通过http上传的multi-file的文件。构建工程为例创建一个springmvc工程你需要spring-boot-starter-thymeleaf和spring-boot-starter-web的起步依赖。为例能够上传文件在服务器,你需要在web.xml中加入标签做相关的配置,但在sringboot工程中,它已经为你自动做了,所以不需要你做任何的配置。<dependencies><dependency><groupId>org.springframework.boot</group
这篇文章主要介绍怎么用消费一个Restful的web服务。我将用restTemplate去消费一个服务:http://gturnquist-quoters.cfapps.io/api/random.构架工程创建一个springboot工程,去消费RESTFUL的服务。这个服务是http:///gturnquist-quoters.cfapps.io/api/random,它会随机返回Json字符串。在Spring项目中,它提供了一个非常简便的类,叫RestTemplate,它可以很简便的消费服务。消费服务通过RestTemplate消费服务,需要先context中注册一个RestTemplat
这篇文章带你了解怎么整合RabbitMQ服务器,并且通过它怎么去发送和接收消息。我将构建一个springboot工程,通过RabbitTemplate去通过MessageListenerAdapter去订阅一个POJO类型的消息。准备工作15minIDEAmaven3.0在开始构建项目之前,机器需要安装rabbitmq,你可以去官网下载,http://www.rabbitmq.com/download.html,如果你是用的Mac(程序员都应该用mac吧),你可以这样下载:brewinstallrabbitmq安装完成后开启服务器:rabbitmq-server开启服务器成功,你可以看到以下信
准备阶段安装redis,可参考我的另一篇文章,5分钟带你入门Redis。java1.8maven3.0idea环境依赖创建一个新的springboot工程,在其pom文件,加入spring-boot-starter-data-redis依赖:<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency>创建一个消息接收者REcevier类,它
本文介绍如何在springboot中使用默认的springcache,声明式缓存Spring定义CacheManager和Cache接口用来统一不同的缓存技术。例如JCache、EhCache、Hazelcast、Guava、Redis等。在使用Spring集成Cache的时候,我们需要注册实现的CacheManager的Bean。SpringBoot为我们自动配置了JcacheCacheConfiguration、EhCacheCacheConfiguration、HazelcastCacheConfiguration、GuavaCacheConfiguration、RedisCacheCo
首先声明下,apidoc是基于注释来生成文档的,它不基于任何框架,而且支持大多数编程语言,为了springboot系列的完整性,所以标了个题。一、apidoc简介apidoc通过在你代码的注释来生成api文档的。它对代码没有侵入性,只需要你写好相关的注释即可,并且它仅通过写简单的配置就可以生成高颜值的api接口页面。它基于node.js,所以你需要安装node.js环境。node.js安装,点击这里。这里就不介绍。二、准备工作安装完node.js安装api.doc,它的项目源码:https://github.com/apidoc/apidoc。通过命令安装:npminstallapidoc-g
swagger,中文“拽”的意思。它是一个功能强大的api框架,它的集成非常简单,不仅提供了在线文档的查阅,而且还提供了在线文档的测试。另外swagger很容易构建restful风格的api,简单优雅帅气,正如它的名字。一、引入依赖<dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>2.6.1</version></dependency><dependenc
准备工作你需要15minJdk1.8maven3.0+idea创建工程引入依赖,其pom文件:<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><arti
这篇文章主要介绍springboot整合redis,至于没有接触过redis的同学可以看下这篇文章:5分钟带你入门Redis。引入依赖:在pom文件中添加redis依赖:<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency>配置数据源spring.redis.host=localhostspring.redis.port=6379#s
准备工作安装MongoDBjdk1.8maven3.0idea环境依赖在pom文件引入spring-boot-starter-data-mongodb依赖:<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-mongodb</artifactId></dependency>##数据源配置如果mongodb端口是默认端口,并且没有设置密码,可不配置,sprinboot会开启默认的。spring.
springboot开启事务很简单,只需要一个注解@Transactional就可以了。因为在springboot中已经默认对jpa、jdbc、mybatis开启了事事务,引入它们依赖的时候,事物就默认开启。当然,如果你需要用其他的orm,比如beatlsql,就需要自己配置相关的事物管理器。准备阶段以上一篇文章的代码为例子,即springboot整合mybatis,上一篇文章是基于注解来实现mybatis的数据访问层,这篇文章基于xml的来实现,并开启声明式事务。环境依赖在pom文件中引入mybatis启动依赖:<dependency><groupId>org.myb
本文主要讲解如何在springboot下整合mybatis,并访问数据库。由于mybatis这个框架太过于流行,所以我就不讲解了。引入依赖在pom文件引入mybatis-spring-boot-starter的依赖:<dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter<artifactId><version>1.3.0</version></dependency>引入
BeetSql是一个全功能DAO工具,同时具有Hibernate优点&Mybatis优点功能,适用于承认以SQL为中心,同时又需求工具能自动能生成大量常用的SQL的应用。beatlsql优点开发效率无需注解,自动使用大量内置SQL,轻易完成增删改查功能,节省50%的开发工作量数据模型支持Pojo,也支持Map/List这种快速模型,也支持混合模型SQL模板基于Beetl实现,更容易写和调试,以及扩展维护性SQL以更简洁的方式,Markdown方式集中管理,同时方便程序开发和数据库SQL调试。可以自动将sql文件映射为dao接口类灵活直观的支持支持一对一,一对多,多对多关系映射而不引入复
JPA全称JavaPersistenceAPI.JPA通过JDK5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中。JPA的目标之一是制定一个可以由很多供应商实现的API,并且开发人员可以编码来实现该API,而不是使用私有供应商特有的API。JPA是需要Provider来实现其功能的,Hibernate就是JPAProvider中很强的一个,应该说无人能出其右。从功能上来说,JPA就是Hibernate功能的一个子集。添加相关依赖添加spring-boot-starter-jdbc依赖:<dependency><groupId>org.s
本文介绍springboot通过jdbc访问关系型mysql,通过spring的JdbcTemplate去访问。准备工作jdk1.8maven3.0ideamysql初始化mysql:--createtable`account`DROPTABLE`account`IFEXISTSCREATETABLE`account`(`id`int(11)NOTNULLAUTO_INCREMENT,`name`varchar(20)NOTNULL,`money`doubleDEFAULTNULL,PRIMARYKEY(`id`))ENGINE=InnoDBAUTO_INCREMENT=4DEFAULTCHA
springboot采纳了建立生产就绪Spring应用程序的观点。SpringBoot优先于配置的惯例,旨在让您尽快启动和运行。在一般情况下,我们不需要做太多的配置就能够让springboot正常运行。在一些特殊的情况下,我们需要做修改一些配置,或者需要有自己的配置属性。一、自定义属性当我们创建一个springboot项目的时候,系统默认会为我们在src/main/java/resources目录下创建一个application.properties。个人习惯,我会将application.properties改为application.yml文件,两种文件格式都支持。在application
简介springboot它的设计目的就是为例简化开发,开启了各种自动装配,你不想写各种配置文件,引入相关的依赖就能迅速搭建起一个web工程。它采用的是建立生产就绪的应用程序观点,优先于配置的惯例。可能你有很多理由不放弃SSM,SSH,但是当你一旦使用了springboot,你会觉得一切变得简单了,配置变的简单了、编码变的简单了,部署变的简单了,感觉自己健步如飞,开发速度大大提高了。就好比,当你用了IDEA,你会觉得再也回不到Eclipse时代一样。另,本系列教程全部用的IDEA作为开发工具。建构工程你需要:15分钟jdk1.8或以上maven3.0+Idea打开Idea->newProj
hello各位小伙伴,今天我们来继续学习如何通过SpringBoot开发微信公众号。还没阅读过上篇文章的小伙伴建议先看看上文,有助于理解本文:SpringBoot开发微信公众号后台上篇文章中我们将微信服务器和我们自己的服务器对接起来了,并且在自己的服务器上也能收到微信服务器发来的消息,本文我们要看的就是如何给微信服务器回复消息。消息分类在讨论如何给微信服务器回复消息之前,我们需要先来了解下微信服务器发来的消息主要有哪些类型以及我们回复给微信的消息都有哪些类型。在上文中大家了解到,微信发送来的xml消息中有一个MsgType字段,这个字段就是用来标记消息的类型。这个类型可以标记出这条消息是普通消
Hello各位小伙伴,松哥今天要和大家聊一个有意思的话题,就是使用SpringBoot开发微信公众号后台。很多小伙伴可能注意到松哥的个人网站(http://www.javaboy.org)前一阵子上线了一个公众号内回复口令解锁网站文章的功能,还有之前就有的公众号内回复口令获取超2TB免费视频教程的功能(免费视频教程),这两个都是松哥基于SpringBoot来做的,最近松哥打算通过一个系列的文章,来向小伙伴们介绍下如何通过SpringBoot来开发公众号后台。1.缘起今年5月份的时候,我想把我自己之前收集到的一些视频教程分享给公众号上的小伙伴,可是这些视频教程大太了,无法一次分享,单次分享分享链
邮件发送其实是一个非常常见的需求,用户注册,找回密码等地方,都会用到,使用JavaSE代码发送邮件,步骤还是挺繁琐的,SpringBoot中对于邮件发送,提供了相关的自动化配置类,使得邮件发送变得非常容易,本文我们就来一探究竟!看看使用SpringBoot发送邮件的5中姿势。邮件基础我们经常会听到各种各样的邮件协议,比如SMTP、POP3、IMAP,那么这些协议有什么作用,有什么区别?我们先来讨论一下这个问题。SMTP是一个基于TCP/IP的应用层协议,江湖地位有点类似于HTTP,SMTP服务器默认监听的端口号为25。看到这里,小伙伴们可能会想到既然SMTP协议是基于TCP/IP的应用层协议,
之前松哥和大家分享过一篇将SpringBoot项目部署到远程Docker上的文章:一键部署SpringBoot到远程Docker容器但是这种部署有一个问题,就是一个小小的helloworld构建成镜像之后,竟然都有660MB+,这就有点过分了;而且这种方式步骤繁琐,很多人看了头大。因此松哥今天想再和大家聊一聊另外一种方案Jib,这是谷歌开源的一个容器化运行方案,使用它我们将SpringBoot进行容器化部署只要两步:第一步配置MavenPlugin第二步构建我们一起来看看。Jib在之前那篇文章中,我们将SpringBoot项目进行容器化部署,要求开发人员要有一定的Docker技能作为支撑,然而
不知道各位小伙伴在生产环境都是怎么部署SpringBoot的,打成jar直接一键运行?打成war扔到Tomcat容器中运行?不过据松哥了解,容器化部署应该是目前的主流方案。不同于传统的单体应用,微服务由于服务数量众多,在部署的时候出问题的可能性更大,这个时候,结合Docker来部署,就可以很好的解决这个问题,这也是目前使用较多的方案之一。将SpringBoot项目打包到Docker容器中部署,有很多不同的方法,今天松哥主要来和大家聊一聊如何将SpringBoot项目一键打包到远程Docker容器,然后通过运行一个镜像的方式来启动一个SpringBoot项目。至于其他的SpringBoot结合D