自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(70)
  • 收藏
  • 关注

原创 TCP协议二

本小节讲了TCP的可靠传输的工作原理、报文段的首部格式、可靠传输的实现、流量控制以及运输链接管理==TCP的拥塞控制的四中算法(满开始、拥塞避免、快重传、快恢复)未详解==1.可靠传输的工作原理TCP下面的网络所提供的通信是不可靠的传输,即网络层、数据链路层和物理层的传输是不可靠的。1.1自动重传请求ARQ“停止等待”就是每发送完一个分组就停止发送,等待对方的确认,在...

2018-03-23 20:56:00 360

原创 TCP协议概述一

1.TCP特点和TCP的连接TCP特点TCP主要特点有:面向连接的、每一条连接只能有两个端点、可靠交付、全双工通信[1]以及面向字节流。详述如下:TCP是面向连接的传输层协议。即存在建立连接和释放TCP连接两个过程。==TCP将连接作为最基本的抽象==;每一条TCP连接只能有两个端点,即连接是点对点的。连接的端点叫套接字(socket)或插口,稍后详述;TCP提供可靠交付的服...

2018-03-23 20:55:39 562

原创 DNS:domain name server

域名系统介绍;两种查询异同数据格式;1. 域名系统概述域名系统是为了将便与人类记忆的域名转换为便于机器处理的32位ip地址;域名采用层次树状结构命名,域名系统DNS是联机分布式的系统。单电系统的缺点是: 1. 单点故障导致网络系统瘫痪; 2. 流量大; 3. 地理分布不均,导致距离dns服务器较远的请求RTT时间大;==为了减小开销,传输层使用的是UDP协议==...

2018-03-23 20:55:11 6342

原创 UDP:user datagram protocol

1.引言1.1 简介运输层提供了端到端(主机中的进程)的服务;网络层提供了主机到主机之间的服务;一个运输层协议可能对应着多个应用层协议,因此它具备一个非常重要的功能 ==复用(multiplexing)和分用(demultiplexing)==: - 复用multiplexing指发送方应用进程可以使用同一个传输层协议发送数据(加上适当的首部端口号); - 分用demultip...

2018-03-23 20:54:38 721

原创 IP协议

一.引言1.1基本介绍网络层只向上提供简单灵活的、无连接的、尽最大努力交付的数据包服务。每一个分组(即IP数据报)都是独立发送的,与其前后分组无关(不进行编号)。网络层不提供服务质量的允诺,即说传送的分组可能出错、丢失、重复或者失序,主机中的运输层负责通信的可靠性。不像传统电信网一样先建立可靠的连接在传输数据是因为计算机有很强的差错处理能力。传统电信网虚电路服务与数据报服务对比...

2018-03-23 20:53:17 759

原创 查询DBpedia

网址:http://dbpedia.org/sparql注意事项: 1. 属性路径都是xxx/ontology/yyy 2. xxx/page/yyy和xxx/resource/yyy会相互转换,但是将后者作为查询sql属性值 3. 示例:SELECT ?e ?p ?s WHERE { ?e <http://dbpedia.org/ontolog...

2018-03-23 20:52:21 4058

原创 RDFConnection:SPARQL操作API

1.引言RDFConnection提供了基于RDF数据的SPARQL操作。主要操作有三种:查询、更新和sparql图存储。对于url和本地数据,RDFConnection提供的接口是同意的,都是用了HTTP和SPARQL协议。两个示例:连接到远程数据.未运行//connection代表连接数据集。参数类型为String,则代表一个url;参数类型也可以Datasettry (...

2018-03-23 20:51:45 593

原创 dbpedia.lookup:全文检索工具

github地址:https://github.com/dbpedia/lookup/tree/master1.介绍DBpedia是一个根据相关关键字检索DBpedia URIs的web服务器。所谓“相关” 指的是资源匹配的标签或者是频繁用于维基百科页面指定特定资源的锚文本。==结果是通过指向其他维基百科页面的链接数量排名的==。2.web API此项目提供了两个接口:关键...

2018-03-23 20:51:11 1230

原创 排列组合公式

查询生辰或死亡日期与霍金生成或死亡日期相差百年的科学家:select *where { ?man <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://dbpedia.org/ontology/Scientist> . ?man <http://dbpedia.org/ontology/b...

2018-03-23 20:50:41 755

原创 树的操作—c语言实现

前言  本文包含二叉树、二叉查找树、Av树等的定义和相关操作,由于部分记录在印象笔记中,给出了文章链接。一.树的遍历  遍历树形目录,先序遍历和后序遍历分别实现打印目录结构和统计目录下文件个数。先根遍历、后根遍历二.BST定义及其基本操作  印象笔记链接二.AvTree定义及其基本操作1.简介  AvTree是BST的一种,但是其每个节点的左子树和右子树的高度最

2018-01-17 19:48:49 5458

原创 crawl4j:记录在印象笔记中的笔记汇总

WebCrawlerPageFetcherfetcher包

2018-01-16 17:12:56 338

原创 synchronized关键字和代码块

待更:以下博文缩写均为某一时期所理解,会不断更新。措辞理解多有错误,想要进一步学习请移步其他书籍资料。一.前言:关于同步  同步执行并非“并行”执行,可以理解为“串行”执行,异步执行可理解为“并行”执行。   所谓的“多线程”可以理解为多个工作者,cpu驱动他们去执行各自的工作。因为这些工作者时常会对某一些资源同时产生兴趣,他们都需要知道资源的“现状态”并根据自身逻辑将资源操作为“目标状

2018-01-12 12:31:54 771

翻译 Linked_data

此博文翻译自英文维基百科Linked_data,原意是找Linked open data相关资料。正文  在计算机技术中,linked_data是一种发布结构化数据的方法,以使得数据能够互联,从而在语义查询中更加有用。linked_data是建立在诸如HTTP、RDF和URLs这些标准网络技术之上的,但是又不仅仅是用他们来服务于人们阅读的网页,linked_data拓展了这些技术以一种

2018-01-10 11:21:43 1095

原创 crawler4j_01_parser_WebURL、FetcherResult、Page和ParseData

几个常用的实体类,WebURL存储每个URL的相关数据;PageFetchResult是执行请求后返回结果类;Page存放请求返回结果解析后的内容;ParseData是Page中的一个属性,存放网页解析的内容。详情请见截图

2018-01-09 21:33:25 314

原创 crawler4j_01_parser_ParseData,Parser

前言  本文讲解的第一个部分是parser包中的“解析数据结果类”,即接口ParseData及其实现类,包括BinaryParseData、HtmlParseData和TextParseData。三者之间的关系及包含属性如下图所示:      讲解的第二个部分是实现数据解析的工具类,如Parser、AllTagMapper、ExtractedUrlAnchorPair、ExtractedR

2018-01-09 15:27:49 1032

原创 crawler4j_01_authentication

如标题所示,本博文系列是对github上项目crawler4j的分析。第一篇介绍了此项目的验证机制。所写内容只做个人理解记录使用,正确性无法保证。   前言  本博文一共分为两个部分,前四个部分介绍了包含验证信息的“数据类”,第五个部分也是最重要的部分讲解了怎样使用这些类。   crawler4j的验证方式分为三类:对于某个url进行用户名和密码验证的基本验证方式、针对Mi

2018-01-09 11:02:49 262

原创 crawler4j_01_authentication

如标题所示,本博文系列是对github上项目crawler4j的分析。第一篇介绍了此项目的验证机制。所写内容只做个人理解记录使用,正确性无法保证。   前言  本博文一共分为两个部分,前四个部分介绍了包含验证信息的“数据类”,第五个部分也是最重要的部分讲解了怎样使用这些类。   crawler4j的验证方式分为三类:对于某个url进行用户名和密码验证的基本验证方式、针对Mi

2018-01-07 22:56:01 274

原创 编辑快捷键

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I

2018-01-07 16:52:49 323

转载 使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I

2018-01-06 09:42:24 144

原创 SPARQL(二):Apache Jean执行sparql查询

本文是对jena-example中讲到的对sparql查询和操作rdf数据的一些汇总。SPARQL查询  sparql查询客户端命令行为sparql --query q.qy --data source1 --data source2,然后获取结果。程序依然,主要有三点:对指定数据源进行查询:网络url或者本地owl、ttl或者nt格式的数据;查询语句的构建:sparql的重点了,可以使用通配符

2017-12-28 23:18:47 1278 2

转载 <转>URL编码

关键词:百分号编码(percent-encoding);      博客来源:URL编码与解码  未看:stackflow相关问题1

2017-12-20 20:47:15 165

原创 github项目学习指南

本文为作者在学习github项目时的一些感想:怎样能够快速上手一个开源项目,理解其知识点,并仿写出类似系统——一般指maven构建的java项目。当然现阶段只是停留在“理解”。希望在此处坐下相关心得记录,以防遗忘。阅读项目commit,一般项目前几次commit是项目开始最简单的配置,而后有些commit是添加了一些模块或者功能。阅读这些“不同”能够化繁为简;实际运行项目demo,知道怎么使用项

2017-12-20 14:59:58 500

原创 Executor框架(二)

本部分内容来自于《java并发编程实战》6.2小节。觉得讲的很好但是很多地方还是不太理解,觉得还是需要扎实的功底和比较多的相关经验才能够透彻的理解。前言  任务是一组逻辑工作单元,线程则是使任务异步执行的机制。java类库中,线程执行的主要抽象是Executor,而不是Thread。Executor源码及:package java.util.concurrent;public interface E

2017-12-17 15:30:45 201

原创 线程本地存储—ThreadLocal,map实现

Entry和Map的关系???ThreadLocal简介  public static修饰的变量可以让所有线程共享,但是如果让每个线程有自己独享的数据对象,则使用java.lang.ThreadLocal类。他可以将线程和数据对象绑定在ThreadLocal的静态内部类ThreadLocalMap中,以实现线程独享数据对象。1.使用示例package me.demo;public class Ac

2017-12-12 14:29:53 3662

原创 java线程工厂

Thread构造函数  java的Thread类构造函数打字分为三类,我们可以认为线程工程基本元素基于则三个元素——   构造参数中指定线程名称;构造参数为Runnable/或者其实现类;构造参数指定所在线程组; 以上三个中元素时有多种排列组合,可以混用的//每种一个示例: public Thread(Runnable target) { init(null, t

2017-12-11 23:37:34 517

原创 java并发-Thread类基本方法介绍

待更新java.lang.SecurityManager;Thread中基本方法1.void suspend()方法  这是一个过时的方法,与void resume()搭配使用来暂停和唤醒一个线程。这两个方法有可能造成独占和不同步的问题—详见《java多线程编程核心技术》。方法源码如下: @Deprecated public final void suspend() {

2017-12-11 18:12:34 286

原创 Spring中bean的三种装配机制之一—java configure

基本介绍  上一篇博文我们已经讲了怎样使用@ComponentScan和@Autowired实现自动装配,这里将讲解使用java config实现bean装配的方式。之所以还需要使用java config装配,是因为当我们使用第三方库中的组件时,就不能再使用@Component和@Autowired了。   java config是配置代码,一般不应该出现任何业务逻辑,以使得相关人员对其功能不产生

2017-12-11 16:15:26 907

原创 Spring中bean的三种装配机制之——自动装配

基本介绍  关于各种配置,从来没搞懂过。但是觉得框架发展这么快,而且结构这么宏大,其实现微观上来讲应该从来没有一种标准方式、更没有说是固定的几种。比如Spring专有的@Component、@Autowired注解,大多数情况下都可以被javax.inject包下的@Named和@Inject代替。本博文汇总《Spring 实战 第四版》2.1和2.2内容。   自动装配是使用spring满足be

2017-12-10 23:20:40 8965

原创 控制反转IoC(Inversion of Control)

基本介绍  IoC同DI(依赖注入),是同一个概念不同角度的描述。IoC是不在对象中直接控制自己设计的对象,而是交给容器(比如Service对象?)。了解IoC概念,同名,我们必须了解:1.谁控制了谁的什么;2.为何反转、在哪些方面反转了。1.谁控制了谁的什么  传统程序在程序内部通过new创建 程序/此对象 所依赖的对象对象,而IoC有专门的容器创建这些对象。即IoC容器控制对象的创建,控制了外部

2017-12-10 14:24:44 521

原创 静态方法和成员变量

阿里java编程规约中将“实例调用对应类的静态成员/方法”视为错误,因为“会增加编译器解析成本,直接通脱类名调用即可”。stack flow上相关讨论也说这是一个尾大不掉未解决的问题。关于阿里给出的理由,猜想是“通过实例调用静态成员是会多一步:通过反射取得类,然后通过类取得静态变量”,只是猜想,查阅相关资料如下:

2017-12-03 16:12:52 372

原创 tf-idf算法的基本实现,java

声明  以下代码只是对tf-idf算法思想的基本实现,因此许多地方需待完善,总结如下:   1.实现逻辑问题:特殊位置、比如段首或者名词(相对于动词),应该有更大的权重;   2.分词前应该对文本进行基本处理:去掉标点,合适的方式调用分词接口,使得文本内容变大时能够分两次调用,但结果相同;   3.速度有待提升:总文本数一星期更新一次就行,关键词所在的文本现测量方式;实现 package de

2017-12-02 21:06:57 519

原创 spring-boot配置(一):@Configuration,@ConfigurationProperties和application.yml

以发送邮件和数据库配置为例,介绍三者之间的搭配使用。邮件配置  当在Service使用@Resource+@Qualifier调用诸如邮件接受者变量时 @Resource @Qualifier private String mailRecerver;变量首先需要在用@Configuration注解的类中找到方法名称和返回值类型相对应的@Bean:@Configuration@

2017-12-01 11:07:16 1169

原创 301提示

错误  尝试实现TF-IDF算法,第一步分词就卡了,向哈工大语言云接口发送请求,代码如下 /** * 调用哈工大语言云接口 * @param apiKey 认证标识 * @param text 待分析的文本 * @param pattern 指定分析模式 * @param format 指定结果格式类型 * @return

2017-11-30 23:30:29 852

原创 线程执行器的创建:Executor及其子类

一.Executors创建线程执行器的基本方式及其弊端1.四种创建执行器方法的简介  java创建线程执行器(Executor接口实现类)时常用以下代码 //合理的首选:CachedThreadPool会在程序执行的时候创建与需要同等数量的线程,回收九线城市停止创建新线程; ExecutorService executorService= Executors.newCa

2017-11-29 15:37:08 287

原创 mysql运行拼接的字符串和导出数据

“prepare+execute”  学习存储过程中发现sql语句有些部分不能够使用变量,因此采用拼接字符串的形式,然后执行字符串代表的SQL。基本形式如下:    set @sql=concat('select * from table limit 1'); PREPARE stmt from @sqlStr; EXECUTE stmt; 导出数据到文件  导出数据过程中需

2017-11-28 20:29:59 1716

转载 <转载.翻译>知识图谱简介:事物,而非字符

内容有点老,来自于2012年5月谷歌的官方博客。此篇文章是对谷歌博文的简单汇总。博客本身比较容易理解,建议直接跳过此篇文章直接食用谷歌的文章。   知识图谱之前,搜索使用的是字符串(String)匹配,但是诸如李宁,可能有多重含义:服装品牌、运动员等。谷歌团队致力于研究一种智能模型—即“知识图谱”,以来理解搜索词对应的现实世界的实体及实体相关联的事物。   知识图谱允许你搜索人、事、城市、建筑、

2017-11-28 14:30:40 414

转载 SPARQL(一)

本文是对使用 SPARQL 查询 RDF 数据的汇总演示,详情请点击原文及原文引用文章。subject:主语;Object:宾语;property:属性(关系);前置准备  一.使用工具为Apache Jena的命令行工具,需要添加JEAN_HOME和在path中加入%JENA_HOME%/bin;   二.下载示例使用资源,后边会有介绍,也可以自己写;一.基本使用方式/*配置好环境后,在资源文件

2017-11-27 15:27:23 7689

转载 <转>遗传算法简介

本文是对一文读懂遗传算法和知乎问答的汇总,详情请看链接和相关论文;一.遗传算法流程  输入数据:种群大小、染色体长度、是否精英选择、价差概率、变异概率、停止规则;1.基本步骤  1)初始化种群;   2)计算个体适应度;   3)按照适应度对个体进行排序;   4)选择操作   5)交叉+变异;   6)是否满足停止规则,不满足则回退到步骤二,满足则停止;   [注]:-停止规则一般有

2017-11-27 11:49:06 440

转载 <转>TF-IDF与余弦相似性的应用:找出相似文章

1.使用TF-IDF算法,找出两篇文章的关键词;2.每篇文章各取出若干个关键词(比如20个),合并成一个集合,计算每篇文章对于这个集合中的词的词频(为了避免文章长度的差异,可以使用相对词频);3.生成两篇文章各自的词频向量;4.计算两个向量的余弦相似度,值越大就表示越相似。具体实现步骤/内容来源 相关数学知识:余弦

2017-11-26 20:55:27 261

原创 余弦的两种表示方法:边长和向量

前提:什么是余弦  一句话:邻边比斜边。如图:cosA=b/c   余弦分布图如下:   一.当知道三边长时 夹角余弦:cosθ=(a²+b²-c²)/2ab 二.当仅知道两边的向量表示a(x1,y1)、b(x2,y2) 夹角余弦:cos=(a*b)/(|a|*|b|),即两向量的点积与向量模的积的商 二+.向量表示余弦方法的拓展  多维向量的余弦仍然可以用两向量的点积与向量模的积的

2017-11-26 20:23:13 10008

空空如也

空空如也

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

TA关注的人

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