boot

springboot整合netty,多种启动netty的方式

烂漫一生 提交于 2019-12-05 09:32:29
首先讲解下,spring中初始化加载问题: 很多时候,我们自己写的线程池,还有bean对象,还有其他的服务类,都可以通过,相关注解进行交给spring去管理,那么我们如何让nettyserver初始化加载呢: 在springBean的生命周期中有 1 InitializingBean 在系统初始化之后加载 package com.cxy.netty.controller;import org.springframework.beans.factory.InitializingBean;import org.springframework.stereotype.Controller;@Controllerpublic class DemoController implements InitializingBean { @Override public void afterPropertiesSet() throws Exception { System.out.println("系统加载"); }} 我们可以看下日志: "C:\Program Files\Java\jdk1.8.0_191\bin\java.exe" -XX:TieredStopAtLevel=1 -noverify -Dspring.output.ansi.enabled=always -Dcom.sun

Spring Boot2 系列教程(二十六)Spring Boot 整合 Redis

允我心安 提交于 2019-12-05 08:33:11
在 Redis 出现之前,我们的缓存框架各种各样,有了 Redis ,缓存方案基本上都统一了,关于 Redis,松哥之前有一个系列教程,尚不了解 Redis 的小伙伴可以参考这个教程: Redis 教程合集 使用 Java 操作 Redis 的方案很多,Jedis 是目前较为流行的一种方案,除了 Jedis ,还有很多其他解决方案,如下: 除了这些方案之外,还有一个使用也相当多的方案,就是 Spring Data Redis。 在传统的 SSM 中,需要开发者自己来配置 Spring Data Redis ,这个配置比较繁琐,主要配置 3 个东西:连接池、连接器信息以及 key 和 value 的序列化方案。 在 Spring Boot 中,默认集成的 Redis 就是 Spring Data Redis,默认底层的连接池使用了 lettuce ,开发者可以自行修改为自己的熟悉的,例如 Jedis。 Spring Data Redis 针对 Redis 提供了非常方便的操作模板 RedisTemplate 。这是 Spring Data 擅长的事情,那么接下来我们就来看看 Spring Boot 中 Spring Data Redis 的具体用法。 方案一:Spring Data Redis 创建工程 创建工程,引入 Redis 依赖: 创建成功后,还需要手动引入 commos

Spring Cloud

≡放荡痞女 提交于 2019-12-05 07:04:43
一. 简介 什么是SpringCloud Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、熔断器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。Spring并没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包 SpringCloud与SpringBoot的关系 Spring Boot 是 Spring 的一套快速配置脚手架,可以基于Spring Boot 快速开发单个微服务,Spring Cloud是一个基于Spring Boot实现的云应用开发工具;Spring Boot专注于快速、方便集成的单个微服务个体,Spring Cloud关注全局的服务治理框架; Spring Boot使用了默认大于配置的理念,很多集成方案已经帮你选择好了,能不配置就不配置,Spring Cloud很大的一部分是基于Spring Boot来实现,可以不基于Spring Boot吗?不可以。 Spring Boot可以离开Spring Cloud独立使用开发项目,但是Spring

Spring Boot实战:静态资源处理

让人想犯罪 __ 提交于 2019-12-05 06:57:33
前两章我们分享了Spring boot对Restful 的支持,不过Restful的接口通常仅仅返回数据。而做web开发的时候,我们往往会有很多静态资源,如html、图片、css等。那如何向前端返回静态资源呢?以前做过web开发的同学应该知道,我们以前创建的web工程下面会有一个webapp的目录,我们只要把静态资源放在该目录下就可以直接访问。但是,基于Spring boot的工程并没有这个目录,那我们应该怎么处理? 一、最笨的方式   我们首先来分享一种最笨的办法,就是将静态资源通过流直接返回给前端,我们在maven工程的resources的根目录下建立一个html的目录,然后我们把html文件放在该目录下,并且规定任何访问路径以/static/开头的即访问该目录下的静态资源,其实现如下: @Controller public class StaticResourceController { @RequestMapping("/static/**") public void getHtml(HttpServletRequest request, HttpServletResponse response) { String uri = request.getRequestURI(); String[] arr = uri.split("static/"); String

How to detect cold boot versus warm boot on an ARM processor?

て烟熏妆下的殇ゞ 提交于 2019-12-05 06:56:28
I'm looking for a way to determine whether an ARM processor is booting from a cold boot (i.e. initial power-on) versus a warm boot (i.e. reset assertion without actual power loss). Specifically I'm using an ARM968 core, will be making the determination using C or assembly, and I will use the determination so certain operations only run on the initial power-on and not on subsequent resets. In previous projects I've leveraged external circuitry (e.g. FPGA) to detect the different boot scenarios, but in this case I am limited to the ARM core. You can initialize a global variable in RAM to a value

Spring Boot2 系列教程(二十五)Spring Boot 整合 Jpa 多数据源

放肆的年华 提交于 2019-12-05 06:24:02
本文是 Spring Boot 整合数据持久化方案的最后一篇,主要和大伙来聊聊 Spring Boot 整合 Jpa 多数据源问题。在 Spring Boot 整合JbdcTemplate 多数据源、Spring Boot 整合 MyBatis 多数据源以及 Spring Boot 整合 Jpa 多数据源这三个知识点中,整合 Jpa 多数据源算是最复杂的一种,也是很多人在配置时最容易出错的一种。本文大伙就跟着松哥的教程,一步一步整合 Jpa 多数据源。 工程创建 首先是创建一个 Spring Boot 工程,创建时添加基本的 Web、Jpa 以及 MySQL 依赖,如下: 创建完成后,添加 Druid 依赖,这里和前文的要求一样,要使用专为 Spring Boot 打造的 Druid,大伙可能发现了,如果整合多数据源一定要使用这个依赖,因为这个依赖中才有 DruidDataSourceBuilder,最后还要记得锁定数据库依赖的版本,因为可能大部分人用的还是 5.x 的 MySQL 而不是 8.x。完整依赖如下: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency

springboot(二):bootstrap和application有什么区别?

感情迁移 提交于 2019-12-05 06:14:29
“SpringBoot专注于快速方便的开发单个个体微服务。 SpringCloud是关注全局的微服务协调整理治理框架,它将SpringBoot开发的一个个单体微服务整合并管理起来, 为各个服务之间提供,配置管理、服务发现、断路器、路由、微代理、事件总线、全局锁、精选决策、分布式会话等集成... ” Spring Cloud 构建于 Spring Boot 之上,在 Spring Boot 中有两种上下文,一种是 bootstrap,另外一种是 application, application 配置文件这个容易理解,主要用于 Spring Boot 项目的自动化配置。 bootstrap 是应用程序的父上下文,也就是说 bootstrap 加载优先于 applicaton。 bootstrap 主要用于从额外的资源来加载配置信息,还可以在本地外部配置文件中解密属性。 这两个上下文共用一个环境,它是任何Spring应用程序的外部属性的来源。 bootstrap 里面的属性会优先加载,它们默认也不能被本地相同配置覆盖。 boostrap 由父 ApplicationContext 加载,比 applicaton 优先加载 boostrap 里面的属性不能被覆盖 使用 Spring Cloud Config 配置中心时,这时需要在 bootstrap

Something about System on Raspberry Pi 3b

自作多情 提交于 2019-12-05 05:25:36
Abstract 最近由于嵌入式课程实验的原因,老师给每位同学发了一块树莓派3b。由于玩得比较少,且现在物联网(IoT)发展速度较快,所以作一文探讨OS的选择与使用体验。 就是上面这货,不得不说开发板还是很小巧玲珑的。一个网线接口,四个USB2.0,一个标准HDMI,一个3.5mm耳机孔,一个TF卡插槽(在底部边缘),现在看来都是标准得甚至有点落伍的配置,还算是凑合。 接下来就是烧录OS。Linux下干这活挺简单,用dd就行。我们先插上TF卡, lsblk 看一下。 显示有/dev/sdc,一切正常。我们可以用 sudo dd if=镜像名.img of=/dev/sdc1 bs=4M status=progress conv=fsync 把指定镜像刻录到TF卡中。如果使用windows,用rufus这个小工具直接刻录即可。 接下来就是选择OS。现在有很多针对树莓派开发的IoT版OS,各有特点,不同OS的使用体验也天差地别,需要针对使用场景来进行选择。 Raspbian 下载地址: https://www.raspberrypi.org/downloads/raspbian/ 树莓派官方搞的基于debian的OS,目前最新版本是debian 10(buster),一般来说选择Raspbian Buster with desktop就够用了,不需要with recommend

4.应用的全局配置文件

拥有回忆 提交于 2019-12-05 05:03:10
4.1.配置文件 在Spring Boot项目的src/main/resources目录下或者在类路径下的/config目录下创建一个全局的配置文件application.properties 或者是后缀为.yml 的application.yml的文件用于修改Spring Boot 项目的默认配置值,例如修改项目的默认端口号,或者进入DispatcherServlet 的请求地址规则等。 通常,使用application.properties的文件;放在src/main/resources; server.port=9999 server.servlet-path=*.action   1.server.port参数用于将Spring Boot 项目的默认端口改为9999 2.server.servlet-path 参数用于将进入DispatcherSerclet的规则改为:*.action 4.2.Spring Boot的启动器   Spring Boot应用启动器基本的一共有44种,具体如下: 1)spring-boot-starter 这是Spring Boot的核心启动器,包含了自动配置、日志和YAML。 2)spring-boot-starter-actuator 帮助监控和管理应用。 3)spring-boot-starter-amqp 通过spring