自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

yyf的博客

写博客是分享学习的一种方式,但更多的是收获自己所得到的;个人网站:http://www.yuyufeng.top

  • 博客(165)
  • 资源 (6)
  • 问答 (2)
  • 收藏
  • 关注

原创 我的GitHub:https://github.com/yuyufeng1994

一些demo会放在我的GitHub仓库里,欢迎交流地址:https://github.com/yuyufeng1994

2019-04-25 14:19:17 4846 2

原创 Spring源码阅读——bean的加载过程解析

前言在上一节中,我们已经了解过Spring对bean从XML中提取,并且以BeanDefinition类型解析注册到Spring的DefaultListableBeanFactory中取了,那么,接下来就应该来看下我们在Spring中获取一个实例过程中,bean是如何加载成为我们需要的对象的了。通过getBean方法了解bean的加载在Spring中我们是通过getBean方法去获取,...

2018-07-09 16:42:52 564 1

原创 MyBatis源码阅读——通过debug解析MyBatis运行流程

最近在阅读MyBatis框架的源码。发现它其实是一个非常值得阅读的框架。它灵活得运用了常见的设计模式去设计。值得我们去学习。我还是比较喜欢以debug阅读MyBatis的源码。

2018-06-07 13:22:08 16426 5

原创 Spring源码阅读——通过debug源码解析SpringMVC的流程

准备简单搭建一个Spring MVC的项目,并写一个Controller,运行一个基本的请求转发DispatcherServlet类图分析 由此图我们可以分析的到,DispatcherServlet继承的FrameworkServlet实现了Spring中的ApplicationContextAware接口,然后又间接继承了HttpServlet。所以实质上是一个Servlet,...

2018-04-10 16:40:40 4408 1

原创 知识库管理系统——项目

分享下自己大学时做的项目《知识库管理系统》 https://github.com/yuyufeng1994/KnowledgeLibrary功能简介文件集中上传: 系统支持单文件上传以及批量上传,系统支持zip、rar格式的压缩包导入。 亮点创新 多格式文件在线预览 用户可以对所有公共文件进行浏览,支持office,pdf格式以及* 常见图片格式,音频格式,音频播...

2018-03-28 08:34:12 41365 81

原创 微信小程序实战—实现城市列表的选择

微信小程序实战—实现城市列表的选择实现效果预览 实现功能简介城市的选择按中文/拼音/首字母条件搜索按首字字母快速定位到城市位置目录结构主要代码app.jsApp({ globalData: { trainBeginCity: '杭州', trainEndCity: '北京' }})app.json{

2018-01-19 17:05:52 25335 1

原创 搜索学习基础--基本概念的简单阐述

关于查询查询数据分为精确查找和模糊查找 精确查找:对于精确查找,我们都非常熟悉,就是这个值必须等于这个条件。比如我们常用的数据库查询中: select * from user_info where user_id = ? 模糊查找:对于模糊查找,我们需要查找的范围就是结果中的某个值必须包含这个条件。平时我们在一个文档中查找某个 单词,这就是模糊查找。 对于普通的查找,

2017-11-09 20:13:15 1006

原创 基于TextRank算法提取关键词——Java实现

TextRank算法 提取关键词

2017-11-03 16:33:42 9928 1

原创 编写自己rpc框架——Java RPC的实现

my-rpc 了解dubbo的一些原理后,想尝试自己编写rpc,加深了解。个人对rpc原理的见解 rpc是一种远程过程调用协议。rpc主要功能:异构分布式项目之间的通信,使消费者只需要知道接口,远程调用方法就像调用本地方法一样。 要使得消费层只通过接口调用远程实现方法,那么其之间的传输数据肯定是:类、方法、参数、返回值,以及一些其它传输的信息。 之间涉及到通信,肯定要发布服务供

2017-08-19 22:48:33 2781

原创 基于redis的分布式锁的实现

之前一直对分布式锁有所思考。一直觉得现在高性能的redis是个不错的选择;前文:关于分布式锁的思考 今天也尝试着写了一个基于redis的分布式锁工具LockUtil.java package yyf.Jedis.toolsByRedis;import java.util.concurrent.atomic.AtomicInteger;import redis.cl...

2017-02-07 10:51:09 4608 3

原创 使用eclipse建立webservice服务和客户端

Web service是一个平台独立的,低耦合的,自包含的、基于可编程的web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序。Web Service技术, 能使得运行在不同机器上的不同应用无须借助附加的、专门的第三方软件或硬件, 就可相互交换数据或集成。依据Web Service规范实施的应用之间,

2020-04-01 15:38:13 53085 18

原创 Maven设置镜像为本地文件

<mirror> <id>central</id> <mirrorOf>*</mirrorOf> <name>central</name> <url>file://d:\\repo\maven</url></mirror>

2020-01-13 17:56:21 2324

转载 CentOS 6.5 Linux 安装 openoffice

目录资源准备:Apache_OpenOffice_4.1.4_Linux_x86-64_install-rpm_zh-CN.tar.gz编译安装:本人资源包放在 /opt/moudles 中, 解压后放在 /opt/softwares 中解压 openoffice 包[root@localhost moudles]# tar -zxvf Apache_OpenOffice_4.1.4_...

2019-08-26 13:54:34 400

原创 解决github的pageHelper中查询出来的分页对象PageInfo<PO>优雅转化PageInfo<DTO>的问题

在我们使用github的pageHelper的时候,我们查出来的是PO对象,我们往往在上层需要DTO或VO回想,这里我写了一个工具类来优雅的转化PageInfo类型工具类 PageInfoUtil.javaimport com.github.pagehelper.Page;import com.github.pagehelper.PageInfo;import org.springfr...

2019-07-22 10:59:54 11792 4

转载 SpringMVC重定向导致的内存泄漏分析

SpringMVC重定向频繁会导致的内存泄漏,我们的产品也碰到的这样的问题。网上也有类似解决方案:原文链接@RequestMapping(method = RequestMethod.GET)public String test(String redirectUrl){return “redirect:”+redirectUrl;}项目内一个热点接口,使用了如上代码做代码的重定向操作,...

2019-07-08 15:27:13 916

原创 【流媒体服务】使用nginx来搭建rtmp服务

资源准备在windows平台上搭建【nginx-rtmp-module】 https://github.com/arut/nginx-rtmp-module/releases/tag/v1.2.1【nginx-Gryphon】 http://nginx-win.ecsds.eu/download/nginx配置文件worker_processes 2;events { ...

2019-06-18 10:52:10 415

原创 MyBatis源码阅读——MyBatis插件PageHelper的实现过程

前言在之前的文章 MyBatis源码阅读——MyBatis插件原理中我们已经知道MyBatis的插件是如何运行的,这篇文章中,我们将去了解MyBatis常用插件com.github.pagehelper.PageHelper的实现过程示例代码https://github.com/yuyufeng1994/learn-mybatis/blob/master/mybatis-demo/src/m...

2019-05-24 11:38:33 429

原创 KNN算法的入门demo

数据准备代码package top.yuyufeng.learn;import top.yuyufeng.learn.model.MyData;import top.yuyufeng.learn.utils.ExcelReader;import java.util.HashMap;import java.util.LinkedList;import java.util.List...

2019-04-23 16:06:18 394

转载 JVM 优化

Tomcat 启动命令行中的优化参数,就是 JVM 的优化 。Tomcat 首先跑在 JVM 之上的,因为它的启动其实也只是一个 java 命令行,首先我们需要对这个 JAVA 的启动命令行进行调优。不管是 YGC 还是 Full GC,GC 过程中都会对导致程序运行中中断,正确的选择不同的 GC 策略,调整 JVM、GC 的参数,可以极大的减少由于 GC 工作,而导致的程序运行中断方面的问题,进...

2019-04-18 14:31:30 218

原创 【Java多线程】等待通知机制(二)等待通知机制的使用

synchronized可以将如何一个Object对象作为同步对象来看待,Java为每个Object都实现了wait和notify()方法。notify()方法可以使调用该方法唤醒等待队列中等待同一资源的“一个线程”,并使该线程退出等待队列,进入可运行状态。仅通知一个。notifyAll()方法可以通知共享资源的“全部线程”。现在,来改造一个上一篇文章中的代码。MyList.classpubl...

2019-03-18 15:06:24 275

原创 我为什么要写博客?谈谈一些关于自己学习的想法

不知不觉,已经踏入程序员这个行业已经有2年了。我大学就读于软件工程专业,算是专业非常对口了,虽然大学是一所普通的一本,但是也不乏有一起在实验室学习的同学一起学习编程。毕业之后,也都会在工作之余去学习巩固一些知识。只是,相比于大学时期,现在的我们对算法、操作系统等基础的东西都不会花太多时间了,更多的注重在实践代码中。我不知道这样做是否是正确的。工作之后,我也给自己定下了一个计划,争取每个月都能抽出...

2019-03-18 11:15:37 728 1

原创 【Java多线程】等待通知机制(一)为什么要使用等待通知机制

先看以下代码:MyList.classpublic class MyList { private List list = new ArrayList(); public void add(){ list.add("uuf"); } public int size(){ return list.size(); }}Th...

2019-02-26 16:48:59 393

原创 【Java多线程】方法yield的使用

说明yield()方法作用是放弃当前CPU资源,让其他任务去占用CPU执行时间。但放弃的时间不确定。代码示例package top.yuyufeng.demo.thread;/** * @author yuyufeng * @date 2019/2/22. */public class DemoThread { public static void main(Strin...

2019-02-25 14:51:24 1532

原创 【Java多线程】方法join的使用

场景描述主线程启动子线程,如果子线程中要进行大量的耗时运算,主线程会早于子线程结束,这时候主线程如果想等待子线程完成之后再运行,就需要join()方法代码示例package top.yuyufeng.demo.thread;/** * @author yuyufeng * @date 2019/2/22. */public class Demo2Join { public...

2019-02-22 15:59:26 1310

原创 【Java多线程】线程停止

package top.yuyufeng.demo.thread;/** * @author yuyufeng * @date 2019/2/21. */public class Demo1Threadinterrupted { public static void main(String[] args) { try { MyThread...

2019-02-21 15:24:30 232

原创 Dubbo负载均衡调优策略

前言虽然目前Spring Cloud全家桶非常的火热,Dubbo依然在很多公司有着举足轻重的地位。我自己也经历了很久Dubbo的项目,今天突然想整理下Dubbo的优化策略。曾经有一段时间,我们项目底层的提供层集群经常发生卡顿,而且,一旦一个服务器开始卡顿,整个系统就会受到影响,甚至整个服务宕机。虽然重启所有集群服务器可以解决问题,但是,这样总归是治标不治本的。Dubbo的负载策略 loadba...

2019-01-31 11:13:33 685

原创 Java虚拟机学习——内存分配策略

如何判断对象已死引用计数法在Java虚拟机中不经常出现 弊端:互相引用问题,导致计数都不为0,无法通知GC收集器去回收可达性分析没有到任何引用链相连,则被判定是可回收的对象对象优先在Eden分配大多数情况下,对象在新生代Eden区中分配。 当Eden区没有足够空间进行分配时,虚拟机将发起一次Minor GC。Minor GC和Full GC新生代GC(Minor GC):指发生在新...

2019-01-24 10:52:08 217

原创 Vue入门——环境的搭建 vue-cli

安装vue-clicnpm install -g @vue/cli创建vue项目 vue create hello-world打开项目,运行工程 cd hello-world npm run serve (cnpm run serve)打开网页

2019-01-22 10:59:12 232

原创 Windows上安装nodejs

下载http://nodejs.cn/download/npmhttps://npm.taobao.org/$ npm install -g cnpm --registry=https://registry.npm.taobao.org

2019-01-21 14:51:50 222

原创 【Spring Cloud】Spring Cloud Config 配置统一管理(二) 配置文件的热更新

说明在之前的配置同一管理中,我们每次修改配置文件之后,都需要重新启动客户端才会去拉取最新的配置文件,现在,我们需要去实现配置文件的热更新。配置第一步:引入依赖&lt;dependency&gt; &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt; &lt;artifactId&gt;spring-boot-star...

2019-01-10 11:27:09 1011

原创 【Spring Cloud】spring-boot-starter-actuator 健康监控

说明Spring Boot的actuator(健康监控)功能提供了很多监控所需的接口,可以对应用系统进行配置查看、相关功能统计等。引入依赖 &lt;dependency&gt; &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt; &lt;artifactId&gt;spring-boot-starter-actu...

2019-01-10 11:05:08 1271

原创 反射中Class.forName()和ClassLoader.loadClass()的区别

Java类的加载过程装载:通过累的全限定名获取二进制字节流,将二进制字节流转换成方法区中的运行时数据结构,在内存中生成Java.lang.class对象;链接:执行下面的校验、准备和解析步骤,其中解析步骤是可以选择的;校验:检查导入类或接口的二进制数据的正确性;(文件格式验证,元数据验证,字节码验证,符号引用验证)准备:给类的静态变量分配并初始化存储空间;解析:将常量池中的符号引用转成...

2019-01-07 09:53:59 200

原创 [ELK日志分析平台]kibana的搭建

前提Elasticsearch已成功安装部署下载地址:https://www.elastic.co/downloads/kibana安装运行修改配置文件 kibana.yml,写入Elasticsearch的地址点击bin\kibana.bat启动启动完成后打开 http://localhost:5601点击进入 management -&amp;amp;gt; index Manageme...

2019-01-03 11:38:50 247

原创 [ELK日志分析平台]Elasticsearch的搭建

前提平台:windowsElasticsearch下载地址:https://www.elastic.co/downloads/elasticsearch安装启动下载解压完成后,点击 bin\elasticsearch.bat启动 (这里就不做集群了)访问 http://localhost:9200/简单使用我们通过http方式即可使用Elasticsearch,这里我使用post...

2019-01-03 11:09:27 208

原创 【Spring Cloud】Spring Cloud Config 配置统一管理(一)

Spring Cloud Config 由服务端和客户端组成,借助git仓库存储配置信息,可以轻松的实现分布式项目配置文件统一管理配置中心服务端 spring-cloud-config-server依赖&amp;amp;amp;lt;?xml version=&amp;amp;quot;1.0&amp;amp;quot; encoding=&amp;amp;quot;UTF-8&amp;amp;quot;?&amp;amp;amp;gt;

2018-12-26 14:50:55 769

原创 【Spring Boot】Sping Boot 默认数据库连接连接池 hikari

在Sping Boot 2.0之后默认使用hikari数据库连接池,您或许不再一定要用druid、c3p0等连接池了hikari的优势在Spring Boot的官方文档中,其更推荐使用hikari数据库连接池,因其高效的性能和并发性。在很多朋友的感受中,HiKariCP是数据库连接池的一个后起之秀,号称性能最好,可以完美地PK掉其他连接池,是一个高性能的JDBC连接池,基于BoneCP...

2018-12-24 15:49:16 20765 1

原创 【Spring Boot】Sping Boot 模板引擎 thymeleaf 的使用 以及 layout 的使用例子

在Spring Boot 2.0 以上版本,一定要引用 thymeleaf-layout-dialect !!!,不然你得layout就无法使用

2018-12-21 11:18:44 685

原创 【Spring Boot】Sping Boot与Mybatis的集成例子

这里我直接把Spring Boot集成了TKMyBatis,在实际项目使用使用非常方便,不需要写常用的增删改查接口。项目依赖&lt;parent&gt; &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt; &lt;artifactId&gt;spring-boot-starter-parent&lt...

2018-12-21 10:04:22 268

原创 【Spring Boot】定时任务 Scheduled

在我们的项目开发过程中,经常需要定时任务来帮助我们来做一些内容,springboot默认已经帮我们实行了,只需要添加相应的注解就可以优雅的实现。对于一些简单的任务调度,这是一种非常简便的方式。项目依赖 &amp;lt;parent&amp;gt; &amp;lt;groupId&amp;gt;org.springframework.boot&amp;lt;/groupId&amp;gt; &amp;

2018-12-21 09:47:23 246

原创 [RabbitMQ]核心概念

Server:又称Broker,接受客户端的连接,实现AMQP实体服务Connection:连接,应用程序与Broker的网络连接Channel:网络信道几乎所有的操作都在Channel中进行Channel是进行消息读写的通道客户端可建立多个Channel每个Channel代表一个会话任务Message:消息服务器和应用程序之间传送的数据,由Properties和Bo...

2018-12-19 09:23:23 179

Spring DefaultListableBeanFactory类结构及功能

Spring DefaultListableBeanFactory类结构及功能。整个类是Sring IOC的核心类,我整理出来了。

2018-06-14

知识库管理系统(源码+数据)

知识库管理系统,包含源码和数据库。通过maven构建,使用git版本控制和团队合作,采用springmvc+mybatis框架,集成Lucene全文检索,openoffice转化office文档,ffmpeg处理视频文件,red5搭建流媒体服务,基于pageRank、TF-IDF算法提取处理知识点,webmagic爬取数据,itextpdf、poi处理office等。

2018-05-15

ik-analyzer-solr5-5.x.jar

ik-analyzer-solr5-5.x.jar

2017-07-04

html转化pdf工具

html转化pdf工具

2016-11-25

html5实战——在线涂鸦系统

本系统是纯静态的系统,本系统可以实现用户注册和登录。并且你可以进行绘画,并将绘画保存在自己的账户中。自己可以对你的所有绘画进行管理(分类和删除)。还有管理账户的功能。其中使用到了bootstrap,利用html5的canvas来进行绘画。 localStorage来完成登录账户保存到这一会话中。使用websql保存账户和绘画。利用html5的拖拽进行分类。

2016-11-23

html5实战——涂鸦系统

html5实战——涂鸦系统 系统是纯静态的系统,本系统可以实现用户注册和登录。并且你可以进行绘画,并将绘画保存在自己的账户中。自己可以对你的所有绘画进行管理(分类和删除)。还有管理账户的功能。其中使用到了bootstrap,利用html5的canvas来进行绘画。 localStorage来完成登录账户保存到这一会话中。使用websql保存账户和绘画。利用html5的拖拽进行分类。

2016-11-23

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

TA关注的人

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