boot

SpringBoot笔记总和

杀马特。学长 韩版系。学妹 提交于 2020-03-01 02:58:21
一 Spring Boot 入门 1、Spring Boot 简介 简化Spring应用开发的一个框架; 整个Spring技术栈的一个大整合; J2EE开发的一站式解决方案; 2、微服务 2014,martin fowler 微服务:架构风格(服务微化) 一个应用应该是一组小型服务;可以通过HTTP的方式进行互通; 单体应用:ALL IN ONE 微服务: 每一个功能元素最终都是一个可独立替换和独立升级的软件单元 ; 详细参照微服务文档 3、环境准备 环境约束 –jdk1.8:Spring Boot 推荐jdk1.7及以上;java version “1.8.0_112” –maven3.x:maven 3.3以上版本;Apache Maven 3.3.9 –IntelliJIDEA2017:IntelliJ IDEA 2017.2.2 x64、STS –SpringBoot 1.5.9.RELEASE:1.5.9; 统一环境; 1、MAVEN设置; 给maven 的settings.xml配置文件的profiles标签添加 < profile > < id > jdk-1.8 </ id > < activation > < activeByDefault > true </ activeByDefault > < jdk > 1.8 </ jdk > </ activation

Spring Boot 2.0 WebFlux 快速入门实践

*爱你&永不变心* 提交于 2020-02-29 17:16:57
02:WebFlux 快速入门实践 Spring Boot 2.0 spring.io 官网有句醒目的话是: BUILD ANYTHING WITH SPRING BOOT Spring Boot (Boot 顾名思义,是引导的意思)框架是用于简化 Spring 应用从搭建到开发的过程。应用开箱即用,只要通过一个指令,包括命令行 java -jar 、 SpringApplication 应用启动类 、 Spring Boot Maven 插件等,就可以启动应用了。另外,Spring Boot 强调只需要很少的配置文件,所以在开发生产级 Spring 应用中,让开发变得更加高效和简易。目前,Spring Boot 版本是 2.x 版本。Spring Boot 包括 WebFlux。 Spring Boot 2.0 WebFlux 了解 WebFlux ,首先了解下什么是 Reactive Streams。Reactive Streams 是 JVM 中面向流的库标准和规范: 处理可能无限数量的元素 按顺序处理 组件之间异步传递 强制性非阻塞背压(Backpressure) Backpressure(背压) 背压是一种常用策略,使得发布者拥有无限制的缓冲区存储元素,用于确保发布者发布元素太快时,不会去压制订阅者。 Reactive Streams(响应式流) 一般由以下组成: 发布者

linux 系统引导过程及引导修复

微笑、不失礼 提交于 2020-02-29 16:46:32
系统引导过程: 第一步:通电 第二步:bios初始化 1.对硬件检测 2.初始化硬件时钟 第三步:磁盘引导 1. mbr=主引导记录=0磁道1扇区446字节(磁道:磁头转一周的轨迹) 2.作用: 记录grub2文件的位置,当mbr数据丢失系统会因为找不到启动分区而停止启动。 3.问题模拟: (1)使用 fdisk -l 指令查看硬盘以及分区信息 系统磁盘:/dev/nvme0n1(*所在的分区对应的设备上有mbr) (2)使用 dd if=/dev/zero of=/dev/nvme0n1 bs=446 count=1 指令清空/dev/nvme0n1上的mbr数据。注意446字节后面的64个字节是分区表,分区表一经损坏后,你就要知道设备开始的块和结束的块,所以一般分区表是备份的。 (3)重启 注意要从硬盘启动,不要使用镜像。 重新开机,发现启动失败。 4.恢复: (1)设置使用光盘,并首先从光盘启动。 (2)选择Troubleshooting 选择第二个选项,进入系统挽救模式。 注意这个挽救模式使用的是光盘里的资源,而不是磁盘里的数据,它可以将磁盘里的系统挂载到光盘里的挽救环境中的/mnt/sysimage。1)表示继续,2)表示只读打开我们的系统,3)表示不挂载系统,直接进入挽救的shell,4)表示重启。 选择1) (3)使用 chroot /mnt/sysimage 指令

Spring Boot Maven Plugin打包异常及三种解决方法:Unable to find main class

懵懂的女人 提交于 2020-02-29 15:31:33
【背景】spring-boot项目,打包成可执行jar,项目内有两个带有main方法的类并且都使用了 @SpringBootApplication 注解(或者另一种情形:你有两个main方法并且所在类都没有使用@SpringBootApplication注解),pom.xml如下 <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>1.5.3.RELEASE</version> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin> 【问题】 执行mvn clean package,报错如下(说点不相关的,使用install同理。因为spring-boot:repackage目标(goal)(下文会说)被绑定在package构建阶段(phases),而package阶段在install阶段之前,指定构建阶段之前的阶段都会执行。详细参见: Introduction to the Build Lifecycle )    [ERROR] Failed to execute

Maven插件系列之spring-boot-maven-plugin

青春壹個敷衍的年華 提交于 2020-02-29 15:27:28
Spring Boot的Maven插件(Spring Boot Maven plugin)能够以Maven的方式为应用提供Spring Boot的支持,即为Spring Boot应用提供了执行Maven操作的可能。 Spring Boot Maven plugin能够将Spring Boot应用打包为可执行的jar或war文件,然后以通常的方式运行Spring Boot应用。 Spring Boot Maven plugin的最新版本为2017.6.8发布的1.5.4.RELEASE,要求Java 8, Maven 3.2及以后。 Spring Boot Maven plugin的5个Goals spring-boot:repackage,默认goal。在mvn package之后,再次打包可执行的jar/war,同时保留mvn package生成的jar/war为.origin spring-boot:run,运行Spring Boot应用 spring-boot:start,在mvn integration-test阶段,进行Spring Boot应用生命周期的管理 spring-boot:stop,在mvn integration-test阶段,进行Spring Boot应用生命周期的管理 spring-boot:build-info

Spring Boot Security JWT 权限实现

孤者浪人 提交于 2020-02-29 11:13:16
是什么?解决了哪些问题 JSON Web Token,看名字就知道是什么了。 和session相比不用在server端保存一个连接客户端的会话 没有将生成的token保存到server端,所以即使每次请求是不同的服务端,也可以运行,实现了分布式。 原理 JSON Web Token结构 结构: xxxx.yyyy.zzzzz Header Header包含两部分:1、token的类型,这里是JWT,2、所使用的hash算法(HMAC SHA256 或者 RSA) { "alg": "HS256", "typ": "JWT" } 然后Base64加密 Payload 主要包含三类声明: 预保留的声明(Reserved claims),这类推荐但是不强制使用,包括: iss (issuer), exp (expiration time), sub (subject), aud (audience), and others 公共声明(Public claims),这类可以添加任何信息但不建议添加敏感信息。 私有声明(Private claims),消费者和提供者之间共享的信息表明双方可以使用它们。 例如 { "sub": "1234567890", "name": "John Doe", "admin": true } 然后Base64加密 Signature

UbubtuKylin15.04的Boot空间不足问题解决

可紊 提交于 2020-02-29 09:52:54
如果经常升级Linux内核,可能导致更新时警告/boot分区空间不足,而引起后续的很多操作失败。 这是以为多次升级内核后,导致内核版本太多,清理一下没用的内核文件就行了。 查看磁盘空间:df -h 查看内核的版本: dpkg -l 'linux-image-*' | grep '^ii' //或者: dpkg --get-selections |grep linux-image 还可以通过“ls /boot”命令查看/boot中有哪些文件: ls /boot abi-3.5.0-17-generic lost+found abi-3.5.0-21-generic memtest86+.bin abi-3.5.0-26-generic memtest86+_multiboot.bin config-3.5.0-17-generic System.map-3.5.0-17-generic config-3.5.0-21-generic System.map-3.5.0-21-generic config-3.5.0-26-generic System.map-3.5.0-26-generic grub vmlinuz-3.5.0-17-generic initrd.img-3.5.0-17-generic vmlinuz-3.5.0-21-generic initrd.img-3.5

linux下bochs的安装及简单运行

感情迁移 提交于 2020-02-29 09:41:09
http://bochs.sourceforge.net/ bochs官网。关于bochs不再累述。 我是在UBUNTU下用包管理软件apt-get装的bochs.命令 apt-get install bochs 这是一个没有调试环境的安装,先感受一下小成功的滋味。。呵呵 这样的安装后,在命令行下执行$bochs会跳出一个配置界面,表害怕,这说安装成功啦。仔细阅读他的提示会发现是没有配置文件 (配置文件bochsrc,ROMIMAGE,VGAROMIMAGE。这些不解释。自己查)。你可以配置一个简单的bochsrc。内容如下: 1############################################################### 2 # Configuration file for Bochs 3 ############################################################### 4 5 # how much memory the emulated machine will have 6 megs: 64 7 8 # filename of ROM images 9 romimage: file=/usr/share/bochs/BIOS-bochs-latest 10 11 # what disk images

Spring Boot定制启动图案

一笑奈何 提交于 2020-02-29 06:00:56
启动图案 Spring Boot在启动的时候会显示一个默认的Spring的图案,对应的类为SpringBootBanner。 . ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot :: (v1.5.6.RELEASE) 图案输出有以下几种模式,默认是CONSOLE的,即只打印到控制台,也可以输出到日志文件。 enum Mode { /** * Disable printing of the banner. */ OFF, /** * Print the banner to System.out. */ CONSOLE, /** * Print the banner to the log file. */ LOG } 关闭图案 @SpringBootApplication public class Application { public static void main

Creating a REST API with Spring Boot and MongoDB

浪子不回头ぞ 提交于 2020-02-29 03:18:12
Spring Boot is an opinionated framework that simplifies the development of Spring applications. It frees us from the slavery of complex configuration files and helps us to create standalone Spring applications that don’t need an external servlet container. This sounds almost too good to be true, but Spring Boot can really do all this . This blog post demonstrates how easy it is to implement a REST API that provides CRUD operations for todo entries that are saved to MongoDB database. Let’s start by creating our Maven project. Note: This blog post assumes that you have already installed the