自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(47)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 SpringBoot针对特殊类型静态资源指定Content-Type类型

遇到的问题今天项目中引入一个.less类型的文件,前台使用Ajax请求的时候发现无法拿到数据,在浏览器中请求了一下发现自动弹出下载文件的对话框,通过查看返回信息发现Response Header中的content-type字段为text/octet-stream,经查阅资料了解到,对于一些不常见的文件类型,使用浏览器访问时都是默认进行下载的,执行过程中在指定content-type参数是是根据MimeType来设置的,所以这里对于一些非常见类型文件需要自定义MimeType,下面是实现方式。具体原理后期

2021-01-24 09:58:37 2107

原创 ArrayList扩容机制

在这之前首先看一下ArrayList的主要参数private static final long serialVersionUID = 8683452581122892189L;/** * Default initial capacity. */private static final int DEFAULT_CAPACITY = 10;/** * Shared empty array instance used for empty instances. */private stati

2020-09-04 18:19:09 458

原创 Flutter入门——开发过程中常用功能实现

Flutter入门——开发过程中常用功能实现本篇文章主要介绍Flutter实际开发过程中主要功能的实现,例如网络和Http请求、Json和序列化、推送工具使用和Provider之类的状态管理的使用。一、网络与Http请求作为一个网络应用程序进行网络请求是必不可少的功能,这里主要介绍Flutter中Get与Post的使用。Flutter的Http网络请求的实现主要分为三种:io.dart里的HttpClient实现、Dart原生http请求库实现、第三方库实现。HttpClient代码示例:

2020-08-30 08:34:34 623

原创 Flutter入门——创建第一个Flutter项目

Flutter入门——创建第一个Flutter项目一、创建项目第一个项目使用Android Studio创建,步骤如下:先打开Android Studio,会有一个创建新的Flutter应用的选项选择Flutter应用填写相关应用设置项目目录介绍Android这里Android平台相关文件,这里基本上和创建的原生Android程序文件类似,但是个别文件会有所不同。它主要包括Gradle的配置、App图标、名称、版本号、起始页以及Android平台的权限申请等An

2020-08-30 08:24:24 2031

原创 Flutter入门——环境搭建与虚拟机安装

Flutter入门——环境搭建一、认识FlutterFlutter是谷歌的移动UI框架,可以快速在iOS和Android上构建高质量的原生用户界面。 Flutter可以与现有的代码一起工作。在全世界,Flutter正在被越来越多的开发者和组织使用,并且Flutter是完全免费、开源的。废话不多说直接进入正题。因为没有MAC设备,所以只演示Windows环境的搭建。二、必要条件**操作系统: **必须windows7以上64位操作系统。(这个一般都能很好的满足)**磁盘空间:**大于3个G,虽然

2020-08-30 08:20:02 980

原创 Red5集成Spring MVC并验证简单防盗链机制

Red5集成Spring MVC并验证简单防盗链机制上篇文章我们实现了创建Red5项目并实现自定义逻辑,这篇文章介绍如何将项目转为Maven项目并集成Spring MVC框架转为Maven项目将Red5-live项目Convert为Maven项目选中当前项目右键->Configure->Convert to Maven Project,默认或者做简单修改之间点击Finish生成pom文件及target文件夹创建Maven项目标准目录先将原来的src目录删掉提前保存好sr

2020-08-12 21:35:45 317

原创 Red5二次开发实现用户自定义逻辑

Red5二次开发实现用户自定义逻辑上一篇文章介绍了Red5服务器的搭建是使用,这一篇文章将介绍如何在Red5中实现自己的逻辑。本文章是以第一篇为基础,默认已搭建好Red5服务器,不再介绍Red5服务器的搭建与使用。准备工作开发工具:EclipseRed5 Server:Red5 Server 1.0.9 https://github.com/Red5/red5-serverred5-eclipse-plugin:https://github.com/Red5/red5-eclipse-plugi

2020-08-12 21:31:38 451

原创 记一次Maven无法自动下载依赖的错误

今天在导入一个项目是发现pom文件中大部分依赖都是没有找到的错误,reimport几次依旧没有用,查看仓库目录发现没有对应的文件夹,所以就是Maven根本就没有执行下载的操作,首先检查maven配置发现没有错误后控制台执行了一下命令 mvn install 发现了问题[INFO] Scanning for projects...[ERROR] [ERROR] Some problems were encountered while processing the POMs:[FATAL] 'parent

2020-08-07 11:24:00 1708

原创 Red5流媒体服务器的搭建与使用

什么是流媒体服务器流媒体指以流形式在网络中传送音频、视频和多媒体文件的媒体形式。相对于下载后观看的网络播放形式而言,流媒体的典型特征是把连续的音频和视频信息压缩后放到网络服务器上,用户边下载边观看,而不必等待整个文件下载完毕。由于流媒体技术的优越性,该技术广泛应用于视频点播、视频会议、远程教育、远程医疗和在线直播系统中。作为新一代互联网应用的标志,流媒体技术在近几年得到了飞速的发展。Red5流媒体服务器Red5是一个采用Java开发开源的Flash流媒体服务器。它支持:把音频(MP3)和视频(FLV)

2020-08-05 18:53:35 1840

原创 初识MySQL索引原理

为什么使用索引?据统计,一般的应用程序运行过程中,对数据库读写操作的比例约为10:1,并且常见的写入操作多为简单的I/O操作,一般不会出现性能问题,但是在多表查询或者超大数据量的情况下很容易出现查询时间过长的情况,针对查询速度慢的问题我们应该怎么解决呢?首先想到的就是SQL优化。那如何对SQL进行优化呢?针对不同的情况方法可能会有多种,但是在大多数情况下,利用索引来提高查询效率就是SQL优化的重点。索引是什么?索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息

2020-08-03 14:04:10 163

原创 一篇文章搞懂MySQL explain

explain是什么?explain可以模拟MySQL优化器执行SQL语句,可以很好的分析SQL语句或表结构的性能瓶颈。这是网上大多数人给出的相同解释,我在简单使用过后认为,explain是一个帮助我们优化SQL和表结构的工具,更多的时候它都是在帮助我们去了解表结构和一段SQL在执行过程中索引的使用情况,通过这些信息去指导我们设计和使用索引,优化表之间的关系,写出更优的SQL。expalin具体可以做什么?explain可以显示表的读取顺序、数据读取操作的操作类型、哪些索引可以使用、哪些索引被实际使用

2020-08-01 14:38:33 112

原创 MySQL删除binlog文件导致服务崩溃无法启动

今天写了一个随机测试数据的程序,由于需要反复测试并且数据插入量非常大达到了几亿的数据记录,几次测试后发现binlog几乎把D盘的空间占满了,然后就找到了刚生成binlog文件,发现几个文件就有几十G,果断将其删除,删除之后出问题了,发现MySQL服务暂停了,无法重启,一直显示拒绝访问5,拒绝访问,使用管理员权限重启时候则显示服务无法启动,服务没报告任何错误。后通过查看日志发现是因为binlog文件无法加载,网上查询得知,binlog文件是通过读取binlog.index文件加载的.\binlog.0001

2020-07-31 14:28:28 916

原创 Java生成千万级别MySQL测试数据

概述本实验目的是尝试选择一种最优方式向MySQL数据库插入5000W条随机测试数据。以下内容包括JDBC、Mybatis和Spring JDBCTeplete各种插入方式的效率分析、参数调整以及超大数据量插入的解决办法。JDBC各种插入方式比较我们知道,jdbc将数据插入数据库有多种方式,包括常用的单条记录插入、多Values拼接SQL字符串和批量插入的方式,在此基础上还可以增加事务提交和预编译的策略来提高插入效率,下面以100W数据为例,分别测试单条记录、多Values拼接SQL字符串、批量插入、多

2020-07-31 11:56:32 1123

原创 Git版本控制常用命令

Git常用命令仓库在当前目录新建一个代码仓库git init本地仓库关联远程库git remote add origin [ssh]将本地的master分支推送到origin主机,同时指定origin为默认主机,后面就可以不加任何参数使用git pushgit push -u origin master下载一个项目git clone [url]配置显示当前配置git config --list编辑Git配置文件git config -e [--global]

2020-07-15 18:03:44 136

原创 SpringMVC执行流程

MVC模式概述Java Web应用的架构经历了Model1和Model2的两个过程。在Model1模式之下,应用的页面显示、控制、业务逻辑全部由JSP来完成,数据访问相关的操作才有一些java bean来完成,这样的模式对小型项目有开发快速的优点,但是这种混合的方式导致应用的层级混乱,很难进行后期的项目维护工作。Model2则是基于MVC架构的设计模式,在Model2模式下,Servlet作为前端控制器,通过调用其他java bean来完成业务逻辑和数据访问等操作,而Jsp则只负责页面显示逻辑。Mod

2020-06-20 16:29:37 133

原创 Flutter使用sy_flutter_alipay拉取支付宝闪退问题解决

担心原地址会挂掉特此记录,原解决方法地址:https://github.com/lishuhao/sy_flutter_alipay/issues/6#issuecomment-521872051安卓支付宝支付返回时,插件内部开辟了子线程,返回的时候没有回到主线程,所以导致崩溃。在插件内部成功和异常的方法都放在主线程中,就没有问题了。修改插件的android源码,修改后代码如下: //调起支付public void alipay(final String payInfo, boolean isSa

2020-06-11 15:04:40 876 1

原创 支付宝支付(一)——沙箱环境测试(图文)

支付宝支付(一)——沙箱环境测试(图文)一、支付宝开放平台注册使用支付宝登录支付宝开放平台,登录成功后进入控制台进入控制台后选择自研开发服务,信息填写完毕后进入管理中心选择研发服务使用沙箱环境的第一件事情就是配置沙箱环境的基本信息,首先就是配置秘钥,我们可以点击生成方法链接查看秘钥的具体生成方法,内容很详细下载支付宝开放平台开发助手客户端,具体使用步骤文档上已经详细写出,秘钥生成后注意保存好应用公钥与应用私钥秘钥生成后我们需要将设置到沙箱环境的秘钥里面,这里选

2020-06-10 20:03:12 1152

原创 重新认识String

Java常用类——String1、什么是String在Java中String类是一个使用非常频繁的类,它不是java八个基本数据类型的其中之一,而是Java提供的在java.lang包下的用于创建和操作字符串的类。本文章通过搜集的几个常见面试题来学习String类的简单使用。2、String的特点使用final修饰:不可被继承,并且内部一些方法也被final修饰。public final class String**不可变性:**String的不可变性主要有两方面决定,首先是String

2020-05-30 18:11:24 119

原创 Git入门与使用

文章目录一、版本控制工具1、概念2、版本控制的目的3、常见的版本控制工具SVNGit4、Git与SVN比较Git是分布式的Git存在特殊的远程提交二、Git工作流程三、Git四个工作区域四、分支概念五、Git常用命令一、版本控制工具1、概念版本控制(Revision control)是指对软件开发过程中各种程序代码、配置文件及说明文档等文件变更的管理,是软件配置管理的核心思想之一。2、版本...

2020-04-29 16:37:04 136

原创 Spring总结-概述

1. 什么是SpringSpring 是最受欢迎的企业级 Java 应用程序开发框架之一,数以百万的来自世界各地的开发人员使用 Spring 框架来创建性能好、易于测试、可重用的代码。Spring 是一个轻量级的 DI / IoC 和 AOP 容器的开源框架,它的成功并不是因为它的技术,而是它的理念,即IOC(控制反转)和AOP(面向切面编程)Spring是javase/javaee开发的一站...

2020-02-09 22:24:19 135

原创 基于 FFmpeg 与SDL 的视频播放器 (3)—SDL视频显示

基于 FFmpeg 与SDL 的视频播放器 (3)—SDL视频显示SDL简介SDL(Simple DirectMedia Layer)是一套开放源代码的跨平台多媒体开发库,使用C语言写成。SDL提供了数种控制图像、声音、输出入的函数,让开发者只要用相同或是相似的代码就可以开发出跨多个平台(Linux、Windows、Mac OS X等)的应用软件。目前SDL多用于开发游戏、模拟器、媒体播放器...

2020-02-09 17:29:55 357

原创 基于 FFmpeg 与SDL 的视频播放器 (2)—FFmpeg视频解码

基于 FFmpeg 与SDL 的视频播放器 (2)—FFmpeg视频解码文章目录基于 FFmpeg 与SDL 的视频播放器 (2)—FFmpeg视频解码视频解码知识基于QT搭建FFmpeg开发环境解码相关函数和数据结构介绍函数数据结构解码视频并保存50张图片的完整代码视频解码知识解码h.264格式类型的纯净码流​ 具体就是讲压缩的视屏编码数据转化为视频像素数据,例如解码H.264,就...

2020-02-09 11:39:42 250

原创 基于 FFmpeg 与SDL 的视频播放器 (1)—基础知识准备

基于 FFmpeg 与SDL 的视频播放器 (1)—基础知识准备文章目录基于 FFmpeg 与SDL 的视频播放器 (1)—基础知识准备封装格式视频像素数据YUV格式:RGB格式:音频采样数据视频编码数据音频编码数据视频播放器原理封装格式​ 我们平时常见的视频大多都是MP4、avi后缀的视频文件其实是按一定标准封装的视屏文件,封装格式的主要作用是把视频码流和音频码流按照一定的格式存储在一个...

2020-02-09 10:22:53 306

原创 最短路径算法

各个算法的比较 Bellman-Ford 强调边与边的问题,能够解决负权边问题 基本操作,实现某顶点到所有顶点的最小距离 输入样例 5 5 //分别代表边的条数与顶点的个数 2 3 2 //分别代表两顶点和两顶点对应边的权值 1 2 -3 1 5 5 4 5 2 3 4 3结果: 0 -3 -1 2 4...

2020-02-04 11:00:43 144

原创 动态规划

(POJ1163) 5 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 Sample Output30 递归实现#include<iostream>#include<algorithm>using namespace std;int n;int d[101][101];int maxnum[101][101];int M...

2020-02-04 10:59:59 132

原创 PCL点云处理的应用实验

1.实验目的通过PCL处理点云数据,从点云数据中提取出待装货货车的点云数据并将其可视化。2.所处理点云的原始可视化图像及最终效果图原始图:处理后:3.处理过程概述1.首先由于点云数据中点的数量很大,做一些处理时耗时较多,所以第一步是使用体素滤波,实现下采样,即在保留点云原有形状的基础上减少点的数量 减少点云数据,以提高后面对点云处理的速度。2.通过随机采样一致性(前面多出用到)分...

2019-11-24 20:24:19 1474 2

原创 PCL分割学习

1.点云切割概述点云分割是根据空间,几何和纹理等特征对点云进行划分,使得同一划分内的点云拥有相似的特征,点云的有效分割往往是许多应用的前提,例如逆向工作,CAD领域对零件的不同扫描表面进行分割,然后才能更好的进行空洞修复曲面重建,特征描述和提取,进而进行基于3D内容的检索,组合重用等。2.PCL中常用的点云分割方法Plane model segmentation (平面模型分割):这个算法能...

2019-11-23 16:36:14 1601 1

原创 PCL滤波学习

1.PCL滤波概述在获取点云数据时 ,由于设备精度,操作者经验环境因素带来的影响,以及电磁波的衍射特性,被测物体表面性质变化和数据拼接配准操作过程的影响,点云数据中讲不可避免的出现一些噪声。在点云处理流程中滤波处理作为预处理的第一步,对后续的影响比较大,只有在滤波预处理中将噪声点 ,离群点,孔洞,数据压缩等按照后续处理定制,才能够更好的进行配准,特征提取,曲面重建,可视化等后续应用处理,PCL中...

2019-11-23 16:27:12 416

原创 FultterError:无法链接文件

换电脑重装flutter环境后运行之前项目出现下面错误 --auto-add-overlay\ --non-final-ids\ -0\ apk\ --no-version-vectors Daemon: AAPT2 aapt2-3.2.1-4818971-windows Daemon #0* T...

2019-11-19 21:27:38 261

原创 基于QT的点云数据的可视化

一、点云及点云存储文件1. 什么是点云点云是在同一空间参考系下表达目标空间分布和目标表面特性的海量点集合,物体表面设置多个采样点获取这些点的信息,这些点包含了丰富的信息,包括三维坐标X,Y,Z、颜色、分类值、强度值、时间等等,而大量这种点组成的点集合就称之为点云(Point Cloud)。2. 点云存储文件点云文件可看作是一张三维图,将通过设备读取到的点云数据以某种特定格式存储于文件中,目...

2019-11-03 21:30:10 10779 6

原创 FutterError:Androidx兼容性问题

Execution failed for task ‘:app:preDebugBuild’.Android dependency ‘androidx.core:core’ has different version for the compile (1.0.0) and runtime (1.0.1) classpath. You should manually set the same v...

2019-10-18 19:38:43 441

原创 FlutterError:No pubspec.yaml file found

No pubspec.yaml file found 错误Error: No pubspec.yaml file found.This command should be run from the root of your Flutter project.Do not run this command from the root of your git clone of Flutter....

2019-10-10 17:52:38 2717

原创 Flutter: Error running Gradle

Error running Gradle 错误这个错误是在重装环境后出现的,重装并创建第一个项目后flutter run的时候爆出了这个错,* Error running Gradle:ProcessException: Process "xxx/first_flutter_app/android/gradlew" exited abnormally:Project evaluation f...

2019-10-10 13:09:05 181

原创 设计模式之装饰者模式

装饰者模式定义装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。设计理念主要是以对客户端透明的方式动态扩展对象的功能,是继承关系的一个替代(继承会产生大量的子类,而且代码有冗余)。为什么要使用装饰者模式一般的,我们为了扩展一个类经常使用继承方式实现,由于继承为类引入静态特征,并...

2019-10-09 22:57:52 120

原创 设计模式之工厂模式

简单工厂模式、工厂模式、抽象工厂模式一、定义简单工厂模式实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类(这些产品类继承自一个父类或接口)的实例。简单工厂模式的创建目标,所有创建的对象都是充当这个角色的某个具体类的实例。工厂方法模式工厂模式是 Java 中最常用的设计模式之一。这种类型的设计模式属于 创建型模式,它提供了一种创建对象的最佳方式。在工厂模式中,我们在创建...

2019-09-25 12:13:09 148

原创 使用HashMap时为什么要重写hashCode和equals

Hash算法在说HashMap之前先来了解一下Hash算法。在数据结构中学习过线性表,我们知道在线性表中查询一个值最坏的情况可能是从头遍历到尾,其平均时间复杂度为O(n),并不理想,而hash表能将查询的时间复杂度降为O(1),因为Hash算法会通过hash函数计算出地址直接取值,其查询次数只有一次。通过下面例子简单了解一下hash表的查询方式,下面是一个hash表,首先假设hash函数为n%...

2019-04-11 20:51:29 4515 4

原创 JDBC入门

JDBCJDBC概述JDBC是一种用于执行Java语句的java API,可以为多种关系数据库提供统一访问,他由一组有java编写的类和接口组成。是java访问数据库的标准规范。JDBC原理首先明确两个概念JDBC:是java提供的连接数据库的规范驱动 :是接口的实现类,没有驱动就无法完成数据库的连接,也就无法实现对数据库的操作,一般响应的驱动实现类由各个数据库厂商提供。原理示意...

2019-04-07 18:53:43 108

原创 连接池

连接池概念数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个;释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏。这项技术能明显提高对数据库操作的性能。通俗点讲,连接池就是一个存放连接池子,获取连接时候直接在池子中获取就可以了,当调用连接的close()方法时候也不是将资源释放,而是将连接归还到池...

2019-04-07 18:52:32 68

原创 java方法增强

先介绍两种方法继承通过继承重写需要增强的方法public class Cat{ public void effect() { System.out.println("可以驾驶"); }}public class Truck extends Cat{ @Override public void effect() { System.out.println("卡车可以拉货");...

2019-04-07 18:50:46 202

转载 Java的变量类型,输入输出

输入 Java程序开发过程中,需要从键盘获取输入值是常有的事,但Java它偏偏就没有像c语言给我们提供的scanf(),C++给我们提供的cin()获取键盘输入值的现成函数!Java没有提供这样的函数也不代表遇到这种情况我们就束手无策,请你看以下三种解决方法吧: 以下将列出几种方法: 方法一:从控制台接收一个字符,然后将其打印出来 import java.io.*; public st...

2018-08-25 23:41:38 2359

red5-server.zip

Red5集成SpringMVC的Maven项目,实现了Red5二次开发自定义逻辑的基本功能,可以实现直播和点播基本功能,这是入门的资源,没有实现复杂逻辑,大佬请绕路!!!

2020-08-13

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除