1. Server side With spring boot, we can set up a http server easily. Restcontroller make it easier to provide REST apis. 今天博主决定体验下HTTP/2.用spring boot搭建http服务相对容易,于是开始动手编写. Entrance (入口) @SpringBootApplication public class App { public static void mai…
Spring Boot利用JavaConfig配置模式以及"约定优于配置"理念,极大简化了基于Spring MVC的Web应用和REST服务开发. Servlet: package org.windwant.spring.servlet; import javax.servlet.Servlet; import javax.servlet.ServletConfig; import javax.servlet.ServletException; import javax.servlet…
一.基于Spring Initializr 快速构建Spring Boot项目(快速) 备注:需要联网 这是使用Intellij Idea快速构建可以为我们省去大量的pom.xml配置时间,简单操作,可谓是程序员必会技巧.如果您是使用的开发工具是Eclipse那么你必须在Eclipse中下载Spring插件STS,然后创建Spring Starter Project即可. 1.在idea开发工具右键new>>"Project">>"Spring Ini…
在使用 Spring Cloud 体系来构建微服务的过程中,用户请求是通过网关(ZUUL 或 Spring APIGateway)以 HTTP 协议来传输信息,API 网关将自己注册为 Eureka 服务治理下的应用,同时也从 Eureka 服务中获取所有其他微服务的实例信息.搭建 OAuth2 认证授权服务,并不是给每个微服务调用,而是通过 API 网关进行统一调用来对网关后的微服务做前置过滤,所有的请求都必须先通过 API 网关,API 网关在进行路由转发之前对该请求进行前置校验,实现对微服…
本篇主要讲解如何使用Spring websocket 和STOMP搭建一个简单的聊天功能项目,里面使用到的技术,如websocket和STOMP等会简单介绍,不会太深,如果对相关介绍不是很了解的,请自行查阅相关知识. 本篇的项目主要是一个学习Spring websocket和STOMP的项目,基于Spring4.0之上.因为Spring4.0之上才支持Websocket.例子比较的简单,但是总体实现了 浏览器 和服务器可以正常建立websocket服务 浏览器可以像服务器订阅并发送消息 浏览器可…
Spring MVC(Model-View-Controller) 当你看到本博文时,我猜你可能正面临着我已探索过的问题. 同其他博主一样,我先按照书上详细的介绍一下 Spring MVC,也是为了自己能理解的更深刻一些. 一.跟踪 Spring MVC 的请求 每当我们碰到各种问题时,我们总是会向浏览器求助. 正如你在百度里查找资料一样,搜索一下问题,点击一个链接,再查看里面的内容. 1.在请求离开浏览器时,总会带有你发出请求的信息,比如你可能刚刚在搜 Spring MVC,这就是信息. 2.…
这篇博文是临时增加出来的内容,主要是由于最近连载<Spring Cloud Alibaba基础教程>系列的时候,碰到读者咨询的大量问题中存在一个比较普遍的问题:版本的选择.其实这类问题,在之前写Spring Cloud基础教程的时候,就已经发过一篇<聊聊Spring Cloud版本的那些事儿>,来说明Spring Boot和Spring Cloud版本之间的关系. Spring Cloud Alibaba现阶段版本的特殊性 现在的Spring Cloud Alibaba由于没有纳入…
背景 从Servlet技术到Spring和Spring MVC,开发Web应用变得越来越简捷.但是Spring和Spring MVC的众多配置有时却让人望而却步,相信有过Spring MVC开发经验的朋友能深刻体会到这一痛苦.因为即使是开发一个Hello-World的Web应用,都需要我们在pom文件中导入各种依赖,编写web.xml.spring.xml.springmvc.xml配置文件等.特别是需要导入大量的jar包依赖时,我们需要在网上查找各种jar包资源,各个jar间可能存在着各种依赖…
Spring boot 是 Spring 的一套快速配置脚手架,可以基于spring boot 快速开发单个微服务,Spring Boot,看名字就知道是Spring的引导,就是用于启动Spring的,使得Spring的学习和使用变得快速无痛.不仅适合替换原有的工程结构,更适合微服务开发. Spring Cloud基于Spring Boot,为微服务体系开发中的架构问题,提供了一整套的解决方案——服务注册与发现,服务消费,服务保护与熔断,网关,分布式调用追踪,分布式配置管理等. Spring C…
API 网关的出现的原因是微服务架构的出现,不同的微服务一般会有不同的服务地址,而外部客户端可能需要调用多个服务的接口才能完成一个业务需求,如果让客户端直接与各个微服务通信,会有以下的问题: 客户端会多次请求不同的微服务,增加了客户端的复杂性. 存在跨域请求,在一定场景下处理相对复杂. 认证复杂,每个服务都需要独立认证. 难以重构,随着项目的迭代,可能需要重新划分微服务.例如,可能将多个服务合并成一个或者将一个服务拆分成多个.如果客户端直接与微服务通信,那么重构将会很难实施. 某些微服务可能使用…
(本教程的原地址发布在本人的简书上:http://www.jianshu.com/p/947d57d042e7,若各位看官有什么问题或不同看法请在这里或简书留言,谢谢!) 本人也是前段时间才开始接触Spring Boot.Spring Cloud,进而通过Spring Cloud才知道“微服务”这一概念.之后单位的一个项目使用了Spring Cloud来实现,现在想把如何使用Spring Cloud搭建一个简单的微服务框架写下来,方便以后查阅,同时本人也希望本教程能起到抛砖引玉的作用,欢迎各位大…
在上一篇<基于Spring Boot,使用JPA操作Sql Server数据库完成CRUD>中完成了使用JPA对实体数据的CRUD操作. 那么,有些情况,会把一些查询语句写在存储过程中,由存储过程来返回记录集. 在这里就先通过EntityManager创建命名存储过程的方法完成调用. 1.创建SQL存储过程 存储过程返回所有的联系人. USE [demodb] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============…
完成一个RESTful服务,提供几个访问接口,用来操作较简单的联系人信息,数据保存在Sql Server数据库中. 1.使用STS创建工程. 使用STS创建RESTful工程,可以参考: <用Spring Tools Suite(STS)开始一个RESTful Web Service><SpringBoot构建RESTful service完成Get和Post> 新建项目时的Project Name,Group,Atifact,Package这些参数按照实际要求填. 项目引入依赖w…
前言 小项目或者做demo时可以使用jdbc+sql server解决即可,这篇就基于spring boot环境使用jdbc连接sql server数据库,和spring mvc系列保持一致. 在spring boot中使用jdbc 连接sql server数据只需要引入两个jar:spring-boot-starter-jdbc.spring-boot-starter-data-jpa 项目结构 和上篇spring boot入门保持相同 pom.xml <dependencies> <…
spring boot / cloud (十七) 快速搭建注册中心和配置中心 本文将使用spring cloud的eureka和config server来搭建. 然后搭建的模式,有很多种,本文主要聊的是将注册中心和配置中心整合成一个服务的方式. 对于其他方式,如果有同学感兴趣,还请自行百度,谢谢. 为什么将注册中心和配置中心整合在一起? 其实整合在一起和分开,在使用层面上并没有太大的区别,主要就是节省资源,启动一个服务就够了 开始搭建 添加pom依赖 <!-- eureka server --…
Https系列会在下面几篇文章中分别作介绍: 一:https的简单介绍及SSL证书的生成二:https的SSL证书在服务器端的部署,基于tomcat,spring boot三:让服务器同时支持http.https,基于spring boot四:https的SSL证书在Android端基于okhttp,Retrofit的使用 所有文章会优先在:微信公众号"颜家大少"中发布转载请标明出处 前面已介绍了:"https在服务器端的部署,基于tomcat,spring boot&quo…
一.简介 spring 官方网站本身使用Spring 框架开发,随着功能以及业务逻辑的日益复杂,应用伴随着大量的XML配置文件以及复杂的Bean依赖关系. 随着Spring 3.0的发布,Spring IO团队主键开始摆脱XML配置文件,并且在开发过程中大量使用"约定优先配置"(convention over configuration)的思想来摆脱Spring框架中各种复杂的配置,衍生了JavaConfig. Spring Boot正是在这样的一个背景下被抽象出来的开发框架,它本身并…
在<基于Spring Boot,使用JPA操作Sql Server数据库完成CRUD>,<基于Spring Boot,使用JPA调用Sql Server数据库的存储过程并返回记录集合>完成了CRUD,调用存储过程查询数据. 很多复杂的情况下,会存在要直接执行SQL来获取数据. 通过“EntityManager”创建NativeQuery方法来执行动态SQL. 1.查询结果集映射 在包“com.kxh.example.demo.domain”下的“Contact”实体上编写命名的结果…
本文主要分享下Spring Boot和Spring Kafka如何配置整合,实现发送和接收来自Spring Kafka的消息. 先前我已经分享了Kafka的基本介绍与集群环境搭建方法.关于Kafka的介绍请阅读Apache Kafka简介与安装(一),关于Kafka安装请阅读Apache Kafka安装,关于Kafka集群环境搭建请阅读Apache Kafka集群环境搭建 .这里关于服务器环境搭建不在赘述. Spring Kafka整合Spring Boot创建生产者客户端案例 创建一个kafk…
小编说:本文使用Spring Session实现了Spring Boot水平扩展,每个Spring Boot应用与其他水平扩展的Spring Boot一样,都能处理用户请求.如果宕机,Nginx会将请求反向代理到其他运行的Spring Boot应用上,如果系统需要增加吞吐量,只需要再启动更多的Spring Boot应用即可.本文选自<Spring Boot 2精髓:从构建小系统到架构分布式大系统>一书. Spring Boot应用通常会部署在多个Web服务器上同时提供服务,这样做有很多好处:…
目前大家都在说微服务,其实微服务不是一个名字,是一个架构的概念,大家现在使用的基于RPC框架(dubbo.thrift等)架构其实也能算作一种微服务架构. 目前越来越多的公司开始使用微服务架构,所以在目前招聘java岗位时,有springcloud经验还是会占一点优势,今天young就和大家一起来学习Spring Cloud微服务框架. 本章,我们先解决新人都头疼的一个问题,spring Cloud 与spring Boot到底是什么关系???? 一 .什么是spring Boot 在讲解什么是…
由于最近公司业务需要,需要搭建基于Spring Cloud的微服务系统.遍访各大搜索引擎,发现国内资料少之又少,也难怪,国内Dubbo正统治着天下.但是,一个技术总有它的瓶颈,Dubbo也有它捉襟见肘的地方.所幸霸主Spring也推出了一整套微服务解决方案,各个子项目也巧妙地解决了分布式系统开发过程中的各种各样的问题.看了很多国内的资料,最早的几份文档也是互相借用,恐怕究竟是什么都说不清楚了.撸主在github上面发现几个很好的相关项目,就想翻译来看看.这篇其实是项目说明,但是里面很多知识点是百…
今天在园子里面看到一位大神写的springboot做的框架,感觉挺不错,遂想起来自己还没有一个属于自己的框架,决定先将大神做好的拿过来,然后加入自己觉得需要的模块,不断完善 目前直接复制粘贴过来的,后续要根据自己实际操作中的不同,进行对应的一些修改,包括下面博客中使用的截图以及命名等,还要记录下框架搭建过程中遇到的诸多问题 原文链接:http://www.cnblogs.com/chiangchou/ Spring的简史 零.开发技术简介 一.创建项目 1.创建工程 2.创建Starter 3.…
每天学习一点点 编程PDF电子书.视频教程免费下载:http://www.shitanlife.com/code 创建一个kafka-producer-master的maven工程.整个项目结构如下: Maven的依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="…
背景 随着公司业务量的飞速发展,平台面临的挑战已经远远大于业务,需求量不断增加,技术人员数量增加,面临的复杂度也大大增加.在这个背景下,平台的技术架构也完成了从传统的单体应用到微服务化的演进. 系统架构的演进过程 单一应用架构(第一代架构) 这是平台最开始的情况,当时流量小,为了节约成本,并将所有应用都打包放到一个应用里面,采用的架构为.net+sqlserver: 表示层 位于最外层(最上层),最接近用户.用于显示数据和接收用户输入的数 据,为用户提供一种交互式操作的界面,平台所使用的是基于.…
文章目录 1. 生成证书 2. 配置 HTTPS 支持 3. 启动与测试 4. 源代码 Spring Boot 内嵌的 Tomcat 服务器可以启用 HTTPS 支持. 生成证书 使用第三方 CA 证书.或者,通过 keytool 命令行工具生产密钥和证书. keytool 是一个 Java 自带的数据证书的管理工具. keytool -genkey -alias springboot -storetype PKCS12 -keyalg RSA -keysize 1024 -keystore k…
Spring Boot 内嵌的 Tomcat 服务器默认运行在 8080 端口.如果,我们需要修改Tomcat的端口,我们可以在 src/main/resources/application.properties 中配置Tomcat信息. server.port=8089 现在,你可以重新运行上面的例子,看下是不是 Tomcat 的端口变成 8089 了. 如果想直接通过代码配置 Tomcat, 可以直接定义 TomcatEmbeddedServletContainerFactory. 现在,我…
文章目录 1. 内嵌的 Tomcat,一个Jar包运行 2. 如何定制内嵌 Tomcat3. War 包部署的使用细节 2.1. 设置内嵌Tomcat的端口 2.2. 设置内嵌Tomcat的最大线程数 2.3. 设置内嵌Tomcat的编码 2.4. 官方提供的常用配置参数 4. 总结 5. 源代码 Spring Boot 默认使用的是 Tomcat 作为内嵌的服务器.所以,我们搭建一个 Web 工程将会变得非常的简单. 内嵌的 Tomcat,一个Jar包运行 还记得,<Spring Boot 揭…
spring cloud admin 简介 Spring Boot Admin 用于监控基于 Spring Boot 的应用,它是在 Spring Boot Actuator 的基础上提供简洁的可视化 WEB UI.Spring Boot Admin 提供了很多功能,如显示 name.id 和 version,显示在线状态,Loggers 的日志级别管理,Threads 线程管理,Environment 管理等. 基于Cairo-SR3 和 Finchley.SR1 在 Spring Boot…
前言 使用Spring Boot做后台项目开发也快半年了,由于之前有过基于Spring开发的项目经验,相比之下觉得Spring Boot就是天堂,开箱即用来形容是绝不为过的.在没有接触Spring Boot 之前,以为Spring Boot 是一个新的框架体系.正好Spring Boot出现先的时候,也是微服务特别火的时候,大家不约而同把Spring Boot 和微服务等同起来了,但其实并不是如此,那么到底什么是Spring Boot ? 基于Spring Boot 又是如何开发的呢 ? 带着这…