自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(69)
  • 资源 (1)
  • 收藏
  • 关注

原创 windows 编译库方法

curl 编译成vs2019 使用的动态链接库 以及具体的使用方法(测试已经通过,手把手教你。) | 码农家园 (codenong.com)

2021-10-11 10:57:22 242

原创 在已有flutter插件工程中添加平台支持

flutter create -t plugin --platforms <platforms> .

2021-10-09 16:18:57 1377 1

原创 GitHub fork别人的分支后,如何实现本地修改的代码与原分支同步。

1、GitHub fork别人的分支后,如何实现本地修改的代码与原分支同步。clone一份自己在GitHub上fork的代码:git clone git@github.com:BuildAndRelease/**********检出某一次提交,形成自己的分支:git checkout 60bd88df915880d23877bfc1602e8ddcf4c4dd2a -b feature/flutter_framework_2.0.0_fix把自己的分支推送到自己的GitHub: git pus.

2021-04-28 21:22:33 1017

原创 Git分支管理提交规范

1.git flow2.github flow3.gitlab flow持续发布版本发布4.aone对比:相关参考资料:https://www.infoq.cn/article/9dotsvlwscznbxjpxfqehttp://www.ruanyifeng.com/blog/2015/12/git-workflow.htmlhttps://www.bilibili.com/video/BV1mh41...

2021-03-24 10:44:43 143

原创 机器学习篇——朴素贝叶斯分类器(1)

贝叶斯分类的基础——贝叶斯定理已知某条件概率,如何得到两个事件交换后的概率,也就是在已知P(A|B)的情况下如何求得P(B|A)。这里先解释什么是条件概率:      表示事件B已经发生的前提下,事件A发生的概率,叫做事件B发生下事件A的条件概率。其基本求解公式为:。      贝叶斯定理之所以有用,是因为我们在生活中经常遇到这种情况:我们可以很容易直接得出P(A|B),P(B|A)则...

2018-11-05 14:14:50 726

转载 lucene介绍

信息检索的概念信息检索(Information Retrieval)是指信息按一定的方式组织起来,并根据信息用户的需要找出有关的信息的过程和技术。狭义的信息检索就是信息检索过程的后半部分,即从 信息集合中找出所需要的信息的过程,也就是我们常说的信息查寻(Information Search 或Information Seek)。我们在下边研究的lucene就是对信息做全文检索的一种

2017-07-29 11:44:50 435

原创 git教程

1.在Windows上安装Git实话实说,Windows是最烂的开发平台,如果不是开发Windows游戏或者在IE里调试页面,一般不推荐用Windows。不过,既然已经上了微软的贼船,也是有办法安装Git的。Windows下要使用很多Linux/Unix的工具时,需要Cygwin这样的模拟环境,Git也一样。Cygwin的安装和配置都比较复杂,就不建议你折腾了。不过,有高人已经把模

2017-07-29 11:43:06 341

原创 Web环境搭建+mysql+tomcat+jdk

一、Linux系统下以RPM方式安装mysql-5.7.9Linux系列系统mysql-5.7.9 64位 RPM集合包Tomcat8JDK8安装步骤1.安装时候会提示与已经安装的RPM包有冲突,所以我们先卸载一些RPM包,要卸载哪些呢?我们要卸载的是包含有mariadb关键字的RPM包,执行命令:rpm -qa|grep mar

2016-10-25 11:19:26 1906

转载 解析Spring托管下Hibernate Session的生命周期

一、Session生命周期的影响因素    Hibernate Session的生命周期受到其自身属性和方法的影响,简单的说:SessionFactory的openSession() 方法会开启一个session。Session的flushMode会决定session何时进行flush。Session的flush()方法会对session进行强制flush。

2016-10-14 09:29:15 4000

转载 浅谈java 中构建可执行 jar 包的几种方式

概述      有时候,由于项目的需要,我们会将源码编译后以工具包(即将class打成jar包)的形式对外提供,此时,你的 jar 包不一定要是可执行的,只要能通过编译,能被别的项目以 import 的方式调用就行了。       但还有的情况是,我们的 jar 包是要可执行的,即能直接在 cmd 下直接通过java -jar的命令运行。       前者的打包很简单,在

2016-10-13 16:16:51 7990

转载 Spring MVC 中的 forward 和 redirect

Spring MVC 中,我们在返回逻辑视图时,框架会通过 viewResolver 来解析得到具体的 View,然后向浏览器渲染。假设逻辑视图名为 hello,通过配置,我们配置某个 ViewResolver 如下: Xml代码  bean class="org.springframework.web.servlet.view.InternalResourceVi

2016-10-08 11:07:09 1743

转载 TreeMap实现原理 红黑树

TreeMap的实现是红黑树算法的实现,所以要了解TreeMap就必须对红黑树有一定的了解,其实这篇博文的名字叫做:根据红黑树的算法来分析TreeMap的实现,但是为了与Java提高篇系列博文保持一致还是叫做TreeMap比较好。通过这篇博文你可以获得如下知识点:       1、红黑树的基本概念。       2、红黑树增加节点、删除节点的实现过程。       3、红黑

2016-09-19 15:10:31 12131 4

转载 FLUME 小结

Flume最早是Cloudera提供的日志收集系统,目前是Apache下的一个孵化项目,Flume支持在日志系统中定制各类数据发送方,用于收集数据。What’s Flume?Flume是Cloudera提供的一个分布式、可靠、可用的系统,它能够将不同数据源的海量日志数据进行高效收集、聚合、移动,最后存储到一个中心化数据存储系统中。由原来的Flume OG到现在的Flume NG

2016-09-18 15:57:06 2688

转载 八大排序算法

概述排序有内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。我们这里说说八大排序就是内部排序。         当n较大,则应采用时间复杂度为O(nlog2n)的排序方法:快速排序、堆排序或归并排序序。   快速排序:是目前基于比较的内部排序中被认为是最好的方法,当待排序的关键

2016-09-12 22:25:58 338

转载 hibernate执行的SQL语句返回的list集合用Object[]接收遍历

做项目的时候遇到这样的问题,hibernate执行SQL语句返回来的list集合调试断点的时候检查list集合有值,但是返回action遍历的时候在list.get(i);这句话时报异常,调试结果是list集合为空,查找到的结果就是用SQL语句不能自动转换成bean对象,所以要转换成数组形式在进行遍历,这时返回的list集合里的值就可以遍历出来了.偷个懒把别人的代码粘过来了,还有个错误没有

2016-09-04 15:12:38 11389

转载 lucence 搜索篇 (五)

lucene的主要搜索的API下面通过表格来看一下lucene用到的主要的搜索API类目的IndexSeacher搜索操作的入口,所有搜索操作都是通过IndexSeacher实例使用一个重载的search方法来实现Query(及其子类)具体的Query子类为每一种特定类型的查询进行逻辑上的封装。Query实例被传递

2016-09-03 11:22:26 505

转载 lucence 索引篇(四)

在前面概要的了解了lucene的内容下面就深入一下lucene的各个模块。这里我们主要深入一下lucene的索引,就是如何构建索引的过程及概念。lucene与关系型数据库从两个角度比较一下吧,一个是从索引方面,一个是模糊查询,其实归为一类的化就是全文检索的对比。1、索引的对比对比项全文检索库(Lucene)关系型数据库核心

2016-09-03 11:20:16 1526

转载 lucence 示例 (三)

在上面的篇幅中我们已经了解到了lucene,及lucene到底是做什么的,什么情况下才能够使用lucene,下面我们就结合一个例子来详细说明一下lucene的API,看看lucene是如何工作的。lucene的下载其实这个很简单了,直接到baidu或者google上搜索一下,一般情况下第一个就是我们要的链接。下边给出lucene下载的链接:http://lucene.apa

2016-09-03 11:18:33 338

转载 lucence 概念(二)

信息检索的概念信息检索(Information Retrieval)是指信息按一定的方式组织起来,并根据信息用户的需要找出有关的信息的过程和技术。狭义的信息检索就是信息检索过程的后半部分,即从 信息集合中找出所需要的信息的过程,也就是我们常说的信息查寻(Information Search 或Information Seek)。我们在下边研究的lucene就是对信息做全文检索的一种

2016-09-03 11:17:03 530

转载 lucence的基本原理(一)

最近开始学习使用Lucence,查了一些资料,简单总结一下,且学且总结~~        Lucene是一个高性能的java全文检索工具包,它使用的是倒排文件索引结构。该结构及相应的生成算法如下:  1)设有两篇文章1和2  文章1的内容为:Tom lives in Guangzhou,I live in Guangzhou too.  文章2的内容为:He

2016-09-03 10:22:47 2139

原创 ToStringBuilder、HashCodeBuilder、EqualsBuilder、ToStringStyle、ReflectionToStringBuilder、CompareToBuild

一、简介与引入   1、ToStringBuilder、HashCodeBuilder、EqualsBuilder、ToStringStyle、ReflectionToStringBuilder、CompareToBuilder等这些类都是位于commons-lang.jar下面的,所以要使用这些类一定要导入commons-lang.jar。   2、为什么要使用ToStringBuild

2016-09-02 12:47:01 980 1

转载 java类加载机制

类加载过程    类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载、验证、准备、解析、初始化、使用和卸载七个阶段。它们开始的顺序如下图所示:    其中类加载的过程包括了加载、验证、准备、解析、初始化五个阶段。在这五个阶段中,加载、验证、准备和初始化这四个阶段发生的顺序是确定的,而解析阶段则不一定,它在某些情况下可以在初始化阶段之后开始,这是为

2016-08-23 14:38:27 317

转载 类加载机制及反射

一、Java类加载机制1.概述       Class文件由类装载器装载后,在JVM中将形成一份描述Class结构的元信息对象,通过该元信息对象可以获知Class的结构信息:如构造函数,属性和方法等,Java允许用户借由这个Class相关的元信息对象间接调用Class对象的功能。      虚拟机把描述类的数据从class文件加载到内存,并对数据进行校验,转换解析和初始

2016-08-23 14:27:52 267

转载 mysql MYISAM INNODB 引擎比较

1.索引结构不同MyISAM引擎使用B+Tree作为索引结构,叶节点的data域存放的是数据记录的地址。下图是MyISAM索引的原理图:这里设表一共有三列,假设我们以Col1为主键,则上图是一个MyISAM表的主索引(Primary key)示意。可以看出MyISAM的索引文件仅仅保存数据记录的地址。在MyISAM

2016-08-21 12:32:46 310

转载 Java常量池理解与总结

一.相关概念什么是常量用final修饰的成员变量表示常量,值一旦给定就无法改变!final修饰的变量有三种:静态变量、实例变量和局部变量,分别表示三种类型的常量。Class文件中的常量池在Class文件结构中,最头的4个字节用于存储魔数Magic Number,用于确定一个文件是否能被JVM接受,再接着4个字节用于存储版本号,前2个字节存储次版本号,后2个存储主

2016-08-19 14:29:33 4965 1

转载 int Integer 区别比较

如果面试官问Integer与int的区别:估计大多数人只会说道两点,Ingeter是int的包装类,int的初值为0,Ingeter的初值为null。但是如果面试官再问一下Integer i = 1;int ii = 1; i==ii为true还是为false?估计就有一部分人答不出来了,如果再问一下其他的,估计更多的人会头脑一片混乱。所以我对它们进行了总结,希望对大家有帮助。  首先看代

2016-08-19 14:27:42 288

原创 JSON 之FastJson解析

public static final Object parse(String text); // 把JSON文本parse为JSONObject或者JSONArray public static final JSONObject parseObject(String text); // 把JSON文本parse成JSONObject    public static fi

2016-08-17 21:31:39 632

转载 Class.forName()的作用与使用总结

1、Class类简介: Java程序在运行时,Java运行时系统一直对所有的对象进行所谓的运行时类型标识。这项信息纪录了每个对象所属的类。虚拟机通常使用运行时类型信息选准正确方法去执行,用来保存这些类型信息的类是Class类。Class类封装一个对象和接口运行时的状态,当装载类时,Class类型的对象自动创建。      Class 没有公共构造方法。Class 对象是在加载类时由

2016-08-17 17:08:44 1208

转载 设计模式六大原则

目录:设计模式六大原则(1):单一职责原则设计模式六大原则(2):里氏替换原则设计模式六大原则(3):依赖倒置原则设计模式六大原则(4):接口隔离原则设计模式六大原则(5):迪米特法则设计模式六大原则(6):开闭原则设计模式六大原则(1):单一职责原则定义:不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。 问题

2016-08-16 20:15:32 365

转载 mysql乐观锁总结和实践

上一篇文章《MySQL悲观锁总结和实践》谈到了MySQL悲观锁,但是悲观锁并不是适用于任何场景,它也有它存在的一些不足,因为悲观锁大多数情况下依靠数据库的锁机制实现,以保证操作最大程度的独占性。如果加锁的时间过长,其他用户长时间无法访问,影响了程序的并发访问性,同时这样对数据库性能开销影响也很大,特别是对长事务而言,这样的开销往往无法承受。所以与悲观锁相对的,我们有了乐观锁,具体参见下面介绍:

2016-08-16 16:55:20 306

转载 mysql悲观锁总结和实践

最近学习了一下数据库的悲观锁和乐观锁,根据自己的理解和网上参考资料总结如下: 悲观锁介绍(百科):悲观锁,正如其名,它指的是对数据被外界(包括本系统当前的其他事务,以及来自外部系统的事务处理)修改持保守态度,因此,在整个数据处理过程中,将数据处于锁定状态。悲观锁的实现,往往依靠数据库提供的锁机制(也只有数据库层提供的锁机制才能真正保证数据访问的排他性,否则,即使在本系统中实现了加锁机制

2016-08-16 16:52:13 343

转载 springmvc底层调用流程

因为DispatcherServlet继承了FrameworkServlet,而FrameworkServlet继承了HttpServletBean,而HttpServletBean继承了HttpServlet,所以本质上说,DispatcherServlet也是一个servlet。因为springmvc实现了httpServlet所以需要先做如下配置来对请求进行拦截。

2016-08-14 18:27:18 3225

转载 Spring中jdbcTemplate的用法实例

一、首先配置JdbcTemplate;要使用Jdbctemplate 对象来完成jdbc 操作。通常情况下,有三种种方式得到JdbcTemplate 对象。       第一种方式:我们可以在自己定义的DAO 实现类中注入一个DataSource 引用来完 成JdbcTemplate 的实例化。也就是它是从外部“注入” DataSource 到DAO 中,然后 自己实例化JdbcTem

2016-08-14 01:19:14 2736

转载 全面分析 Spring 的编程式事务管理及声明式事务管理

开始之前关于本教程本教程将深入讲解 Spring 简单而强大的事务管理功能,包括编程式事务和声明式事务。通过对本教程的学习,您将能够理解 Spring 事务管理的本质,并灵活运用之。先决条件本教程假定您已经掌握了 Java 基础知识,并对 Spring 有一定了解。您还需要具备基本的事务管理的知识,比如:事务的定义,隔离级别的概念,等等。本文将直接使用这些概念而不做

2016-08-14 00:24:53 406

转载 spring,mybatis事务管理配置与@Transactional注解使用

概述事务管理对于企业应用来说是至关重要的,即使出现异常情况,它也可以保证数据的一致性。Spring Framework对事务管理提供了一致的抽象,其特点如下:为不同的事务API提供一致的编程模型,比如JTA(Java Transaction API), JDBC, Hibernate, JPA(Java Persistence API和JDO(Java Data Objects)支

2016-08-14 00:05:51 1308

转载 google guava Preconditions

google guava的base包中提供的Preconditions类用来方便的做参数的校验,他主要提供如下方法:checkArgument 接受一个boolean类型的参数和一个可选的errorMsg参数,这个方法用来判断参数是否符合某种条件,符合什么条件google guava不关心,在不符合条件时会抛出IllegalArgumentException异常checkState 和ch

2016-08-03 17:32:08 335

转载 SpringMVC介绍之Validation

SpringMVC介绍之Validation       对于任何一个应用而言在客户端做的数据有效性验证都不是安全有效的,这时候就要求我们在开发的时候在服务端也对数据的有效性进行验证。SpringMVC自身对数据在服务端的校验有一个比较好的支持,它能将我们提交到服务端的数据按照我们事先的约定进行数据有效性验证,对于不合格的数据信息SpringMVC会把它保存在错误对象中,这些错误信息我们也

2016-08-03 15:34:14 217

转载 动态代理的实现

接下来要到最后一个版本了,版本二解决的问题是可以为任何接口生成代理,那最后一个版本要解决的问题自然是可以为任何接口生成任何代理的问题了,首先定义一个接口InvocationHandler,这么起名字是因为JDK提供的代理实例处理程序的接口也是InvocationHandler:public interface InvocationHandler{ void invoke(Obje

2016-08-01 20:53:02 288

转载 java 反射详解

本篇文章依旧采用小例子来说明,因为我始终觉的,案例驱动是最好的,要不然只看理论的话,看了也不懂,不过建议大家在看完文章之后,在回过头去看看理论,会有更好的理解。下面开始正文。【案例1】通过一个对象获得完整的包名和类名123456789101112131415package Reflect

2016-08-01 19:51:04 209

转载 HashMap与ConcurrentHashMap的区别

从JDK1.2起,就有了HashMap,正如前一篇文章所说,HashMap不是线程安全的,因此多线程操作时需要格外小心。在JDK1.5中,伟大的Doug Lea给我们带来了concurrent包,从此Map也有安全的了。ConcurrentHashMap具体是怎么实现线程安全的呢,肯定不可能是每个方法加synchronized,那样就变成了HashTable

2016-05-17 11:16:35 2073

deep learning for computer vision with python

deep learning for computer vision with python 三本全

2018-11-02

空空如也

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

TA关注的人

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