自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Lizo_Is_Me的专栏

猪场java工程师

  • 博客(87)
  • 资源 (2)
  • 收藏
  • 关注

原创 java编码详解

举个例子我们在开发过程中,特别是多种编码格式并存的情况下,很容易遇到乱码问题。 假如有一个GBK编码java文件,然后再使用-Dfile.encoding=GBK参数,写入的文件中哪些是乱码呢。那如果使用UFT-8编码的java文件呢。public class Main { static String content = "中文"; public static void main(S

2017-06-26 15:04:25 517

原创 spring boot with dubbo

github: https://github.com/Athlizo/spring-dubbo-parent码云:  https://git.oschina.net/null_584_3382/spring-dubbo-parent相关文档:Spring Dubbo 开发笔记(一)——概述:Spring Dubbo开发笔记(二)——dubbo初始化Spring Dubbo开发笔

2017-06-20 19:35:05 322

原创 如何编写Spring-Boot自动配置

AutoConfigurationSpring-boot的一个重要特性就是提供了各种各样的AutoConfiguration。例如DataSourceAutoConfiguration。这样我们只需要在配置文件中进行如下配置spring: datasource: url: jdbc:mysql://xxxxxxxxxxx/realname username: xxxxx

2017-06-20 19:33:30 402

原创 解读设计原则

概述设计原则就一本菜谱,告诉我们一道美味的菜应该是什么样的,或者说需要具备什么。但是又没有一个固化或可测量的标准。写代码就和烹饪一样,只有当自己品尝以后才知其味。1 开闭原则定义:开闭原则(Open-Closed Principle, OCP):一个软件实体应当对扩展开放,对修改关闭。即软件实体应尽量在不修改原有代码的情况下进行扩展。解读开闭原则很简单,就是当需求变更的时候,尽量不要修改已有代码。开

2017-06-20 19:29:29 246

原创 基于Spring的轻量级工作流框架

摘要该项目是一个基于Spring的工作流框架,主要解决一些业务比较重的系统,使用模块化的方式去分割该系统。既可以有效的管理代理(防止冗余代码),对业务的修改也十分方便。项目地址码云:https://git.oschina.net/null_584_3382/business-flow-parentgithub:https://github.com/Athlizo/business-flow-pa

2017-05-14 15:11:46 1951

原创 Spring-boot整合dubbo

摘要本不是介绍在Spring-boot下使用duboo服务,而是介绍如何使用一个spring-boot和dubbo结合起来的小工具(jar包)。为什么要写这个小工具如果你用过Spring-boot来提供dubbo服务,相信使用中有很多“不爽”的地方。既然使用spring boot,那么能用注解的地方绝不用xml配置,这才是spring-boot-style。开个玩笑,真正意思是,spring-boo

2017-05-14 15:05:36 423

原创 代码方式配置和xml文件方式混合配置spring

使用代码的配置方式和xml配置方式配置spring

2016-09-13 19:11:51 1016

原创 低版本JDK解决TLS冲突

场景写一个调用第三方登陆的模块,本地开发的时候使用Apache HttpClient时候,就按照一般的POST JSon数据能够正确获取返回数据,但是当部署到线上环境的时候,就报Exception in thread "main" javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure然后google

2016-09-09 20:34:10 11231 3

原创 Paxos 个人理解

Paxos算法中主要的角色有:Client:发起请求的人Acceptor (Voters):负责选举头头片Proposer:负责向Acceptor发起Clinet的提议Learner:当提议决定的以后,需要有所行动的人Leader:选举出来的做决策的Leaderbasic Paxos站在Proposer的角度Prepare阶段: 1) 向Acceptors发送 【prepare请求

2016-09-06 21:59:19 256

原创 spring security 自定义 openid

目标 利用spring security实现与自定义 openid的对接大概说一些spring security的账户验证的流程(太细的地方我也不清楚)

2016-08-30 19:13:21 2716

原创 spring security 实现form-login功能

一、首先我们知道自定义一个Security的filter的格式为<custom-filter ref="myFilter" position="FORM_LOGIN_FILTER"/><!-- position 可以换成 befor after-->其中security过滤的加载顺序如下 其中需要重写的是用户登录filter 也就是 FORM_LOGIN_FITER二、 然后我们需要自定义一

2016-08-22 22:22:10 1410

原创 SpringMVC + redis缓存

相关依赖包就不在赘述xml配置 使用JedisConnectionFactory可以很方便的创建和使用Jedis来对Redis进行操作,这里没有对权限进行控制。对Jedis进行封装import org.apache.log4j.Logger;import org.springframework.data.redis.connection.jedis.JedisConnection;import

2016-07-27 20:07:33 1371

原创 Spring+SpringMVC+mybatis简单实例

在上一篇SSM基本配置介绍了Spring+SpringMVC+mybatis的基本配置,现在用一个简单实例来来介绍一下最基本的用法 整个工程的结构如下 这里就包括了一个完整的流程,如下图 ControllerdispatcherController层也就是前端分发控制层,也就是负责接收请求,分发请求到具体的controller中。例如AttentionController的代码如下: S

2016-07-16 16:18:27 1546

原创 Spring+SpringMVC+mybatis的基本配置

关于maven的依赖就不在赘述,直接从配置文件开始,本文假设你对spring和springmvc和mybatis有一定了解配置Spring首先是在web.xml中配置 是在web启动的时候初始化IOC容器, Spring.xml文件的内容很简单 主要是对配置文件的加载和定义自动的扫描的包路径 在配置文件中,主要是一些数据库的连接等等一些相关配置 配置springMVC继续在web.

2016-07-16 13:41:32 440

原创 Spring 学习笔记

1. IOC概述采用工厂模式使用IOC可以看见使用IOC的耦合度是最低的2.配置bean2.1 基于xml其中class——bean的全类名,通过反射的方式来创建bean实例,因此必须要类中包含无参数的构造器id——IOC容器中通过id获取bean2.2创建IOC容器3.Spring注入方式其中使用构造

2016-07-09 20:00:29 103

原创 effect java 读书笔记

一:考虑使用静态工厂方法替代构造函数好处有:1.我们可以定义静态函数的名字,相对于只能使用类名作为构造函数名,可以使用函数名更加详细的说明该静态函数的功能。2.是一些设计模式的基础——单例模式,工厂模式等等3.可以简化参数化的构造函数,使代码简介缺点:1.一般使用静态工厂方法来创建类对象,会把该类的构造函数设置为private,这样使得类不能被子类化(但是一般都不鼓励使用继

2016-07-04 23:41:56 209

原创 正式入职以后的感想

20年的读书生涯终于完了,再也没有像读书的时候给你定目标——中考高考、修学分、论文。今后的一切都要自己去做决定。对未来即充满了向往,也充满了恐惧。希望能出人头地,也担心最后随波逐流。希望过得没有无怨无悔,也担心最后后会后悔不已。希望能坚持梦想,也担心最后对现实一步一步的妥协。欣慰的是到目前都是按照希望的方向前进。

2016-07-03 15:40:03 128

原创 利用位运算实现加、减、乘、除

1.加法加法其实主要问题是怎么处理进位,当然我们可以每一位分别相加,然后用一个变量来保存下一位是否进位private static int add(int a, int b) { int res = 0; int jinwei = 0; for(int i = 0 ; i <32 ; i++){ int numA = (a>>i) & 1; int numB = (

2015-09-10 20:52:29 1026

原创 再来谈谈HashMap中的entrySet

HashMap,可能是java中应用较多的Collection之一,之前大概看过一次其中的原理,无非就是先用key的hashcode查找桶,然后用equals比较具体的对象。但是最近在遍历HashMap的时候,发现有个entrySet(),仔细看了源码之后才发现其中的奥秘(当然keySet和ValueSet也是类似的原理,之前还以为keySet是HashMap中的一个副本,囧)在说EntryS

2015-08-27 20:02:36 2528

原创 epoll原理简析

1.使用简单:只有4个api函数:epoll_create() epoll_ctl() epoll_wait()个close()2.支持大规模的socket连接:由于一个socket连接在epoll中是用一个FD(文件描述符)来表示的,所以epoll能支持最大并发连接的数量与linux能打开最大文件数量有关(或者说与内存有关)3.高效的内存使用策略: 1).当epoll创建的时候,也就是调用epoll_create() 的函数后,会在内核中开辟一定内存空间(和epoll_create()中参数有

2015-07-13 10:39:12 782

原创 java之ConcurrentHashMap

ConcurrentHashMap是java.util.concurrent中实现了ConcurrentMap接口的一个线程安全的HashMap,功能和hashtable类似,但是实现原理却不一样。Hashtable原理很简单,就是利用synchronized去保证线程安全,所以并发量很低。而ConcurrentHashMap的实现原理,就是把一个hashmap分成若干个小的hashmap

2015-07-08 10:05:54 786

原创 java之Lock原理解析

在 java.util.concurrent.locks包中有很多Lock的实现类,常用的有ReentrantLock、 ReadWriteLock(实现类ReentrantReadWriteLock),其实现都依赖 java.util.concurrent.AbstractQueuedSynchronizer类,实现思路都大同小异。1.AbstractQueuedSynchronizer

2015-07-01 16:31:58 2174

原创 读书笔记之OSI模型

分层的好处是利用层次结构可以把开放系统的信息交换问题分解到一系列容易控制的软硬件模块-层中,而各层可以根据需要独立进行修改或扩充功能,同时,有利于个不同制造厂家的设备互连。OSI参考模型中不同层完成不同的功能,各层相互配合通过标准的接口进行通信。应用层 (Application): 网络服务与最终用户的一个接口。协议有:HTTP FTP TFTP SMTP SNMP DNS

2015-06-16 15:10:23 469

原创 jvm之运行时数据区

Java虚拟机在执行java程序的过程时,根据不同的用途,把他管理的内存划分为不同的区域。主要包括:线程私有: 程序计数器,java虚拟机栈

2015-06-16 10:13:20 96

原创 BAT实习内推笔试卷(第一场)——个人答案以及分析

第一题:给定一个长度不小于2的数组arr。 写一个函数调整arr,使arr中要么所有的偶数位上都是偶数,要么所有的奇数位上都是奇数上。 要求:如果数组长度为N,时间复杂度请达到O(N),额外空间复杂度请达到O(1),下标0,2,4,6...算作偶数位,下标1,3,5,7...算作奇数位,例如[1,2,3,4]调整为[2,1,4,3]即可分析:时间复杂度请达到O(N),就不能

2015-06-11 20:12:12 978

转载 java之Volatile使用

Java 语言中的 volatile 变量可以被看作是一种 “程度较轻的 synchronized”;与 synchronized 块相比,volatile 变量所需的编码较少,并且运行时开销也较少,但是它所能实现的功能也仅是 synchronized 的一部分。本文介绍了几种有效使用 volatile 变量的模式,并强调了几种不适合使用 volatile 变量的情形。锁提供了两种

2015-06-10 16:18:24 413

原创 Java之Synchronized

一、CASCAS(compare and swap),解决多线程并行情况下使用锁造成性能损耗的一种机制,CAS操作包含三个操作数——内存位置(V)、预期原值(A)和新值(B)。如果内存位置的值与预期原值相匹配,那么处理器会自动将该位置值更新为新值。 具体来说,就是当一个CPU要操作某一块内存区域的时候,会记录下操作前,内存的值A,放在Cache中,当CPU操作完成完成后,把A的值修改为新的

2015-06-09 16:51:43 436

原创 面试题错题本之java

1.在jdk1.5的环境下,有如下4条语句:1234Integer i01 = 59;inti02 = 59;Integer i03 =Integer.valueOf(59);Integer i04 = newInteger(59)。以

2015-06-03 16:20:12 780

原创 编程题-旅行商问题-状态压缩DP

题目给定一个n个顶点组成的带权有向图的距离矩阵d(n,n),要求从顶点0出发,经过每个顶点恰好一次后再回到顶点0,怎么样使得经过的变的总权重最小值分析因为所有可能的路线有(n-1)!种,可以通过DP来解决 一说到DP,第一步也是最重要的一步是写出递归表达式。假设已经访问过的顶点的集合为S,当前所在的顶点为v。用dp[S][v]dp[S][v]表示从v出发访问剩余所有顶点,最终回到顶点0的路径的权重

2015-05-20 16:12:26 1134

原创 TimSort--归并排序的优化

简介MergeSort对已经反向排好序的输入时复杂度为O(n^2),而timsort就是针对这种情况,对MergeSort进行优化而产生的,平均复杂度为n*O(log n),最好的情况为O(n),最坏情况n*O(log n)。并且TimSort是一种稳定性排序。思想是先对待排序列进行分区,然后再对分区进行合并,看起来和MergeSort步骤一样,但是其中有一些针对反向和大规模数据的优化处理。步骤分区

2015-04-23 17:39:24 1958

转载 机器学习之-BoostedTree

1. 前言应 @龙星镖局  兄邀请写这篇文章。作为一个非常有效的机器学习方法,Boosted Tree是数据挖掘和机器学习中最常用的算法之一。因为它效果好,对于输入要求不敏感,往往是从统计学家到数据科学家必备的工具之一,它同时也是kaggle比赛冠军选手最常用的工具。最后,因为它的效果好,计算复杂度不高,也在工业界中有大量的应用。2. Boosted Tree的若干同义词说到这

2015-04-23 10:24:11 4408

原创 sunday算法简介

概述一说到字符串匹配算法,脑海里的第一映像,大部分是KMP算法,因为一般教科书里面都有,但是kmp算法对于我这种脑袋不怎么好用的,看完过一段时间就忘了。sunday同样是作为字符串匹配算法,比kmp,bm算法快,关键的关键是原理简单。问题描述先说说sunday算法解决的问题吧:给两个字符串A,B,问字符串A的所有子串中有没有B 具体的例子来说,给你一篇文章,判断该文章里面有没有“我爱我的家”这句

2015-04-21 22:03:42 1086

原创 64位win7安装numpy,scipy

在win7下安装numpy有2种方法:1.可以通过easy_install 2.直接安装其实这2种方法都是获取numpy资源包的2种途径,我使用easy_install 老是提示超时,所以直接下的资源包

2015-03-29 13:12:17 109

原创 设计模式总结之结构型

一、组合模式(Composite)常用指数:★★★★★定义将对象以树形结构组织起来,以达成“部分-整体” 的层次结构,使得客户端对单个对象和组合对象的使用具有一致性. UML好处使得客户端把一个个单独的成分对象和由他们复合而成的合成对象同等看待实例windows文件系统二、外观模式(Facade)常用指数:★★★★★定义为子系统中的一组接口提供一致的界面,facade提供了一高层接口,这个接口使得子

2015-03-22 21:44:37 505

原创 设计模式总结之创建型

概述设计模式中用于创建类的模式有以下几种: 单例,工厂方法,抽象工厂,建造者和原型1.单例模式(Singleton)常用指数:★★★★★定义保证一个类仅有一个实例,并提供一个访问他的全局访问点使用方法://双重锁的形式public class SingletonClass{ private static SingletonClass instance=null; public s

2015-03-21 15:23:23 454

原创 数据结构中的树

声明:尊重原创,转载请注明出处http://blog.csdn.net/lizo_is_me/article/details/442600251 平衡二叉树平衡二叉树(Balanced binary tree)是由阿德尔森-维尔斯和兰迪斯(Adelson-Velskii and Landis)于1962年首先提出的,所以又称为AVL树。定义:平衡二叉树或为空树,或为如下性质的二叉排序树:(1)左右子

2015-03-14 20:52:02 1041

原创 单词拼写检查笔记

序最近在看自然语言处理方面的书籍,也写写相关的读书笔记吧 英语单词拼写是文字录入,编辑,出版等工作中的一项重要任务。实现单词拼写检测的方法很多,我这里就暂时写2个,第一个是在《统计自然语言处理》书中的 K.Oflazer用有限自动机写的,第二个是在网上看见的一个20几行python代码写的《How to Write a Spelling Corrector》自动机法基于优先自动机的识别器,可以看成

2015-03-10 11:43:35 1209

原创 编程题-翻棋游戏-枚举

题目 约翰知道,那些高智力又快乐的奶牛产奶量特别高.所以他做了一个翻瓦片的益智游戏来娱乐奶牛.在一个M×N(1≤M,N≤15)的骨架上,每一个格子里都有一个可以翻转的瓦片.瓦片的一面是黑色的,而另一面是白色的.对一个瓦片进行翻转,可以使黑变白,也可以使白变黑.然而,奶牛们的蹄子是如此的巨大而且笨拙,所以她们翻转一个瓦片的时候,与之有公共边的相邻瓦片也都被翻转了.那么,这些奶牛们最少需要多少次翻转,使

2015-03-08 16:44:39 906

原创 HMM:前向算法实例

看本篇文章,假设你已经知道HMM中的前向算法相关概念 如果不知道,推荐先学习HMM学习最佳范例中相关文章这个问题来自于HMM学习最佳范例五:前向算法5 只不过再手动算一下,加深一下自己的理解已知隐马尔科夫模型如下:1、隐藏状态 (天气):Sunny,Cloudy,Rainy; 2、观察状态(海藻湿度):Dry,Dryish,Damp,Soggy; 3、初始状态概率: Sunny(0.63),

2015-03-05 18:21:37 1202

转载 HMM学习最佳范例

本文链接都是来自www.52nlp.cn中的一个HMM学习最佳范例系列,只是由于不方便查看,故在此做个类似目录东西,方便查看HMM学习最佳范例一:介绍 HMM学习最佳范例二:生成模式 HMM学习最佳范例三:隐藏模式 HMM学习最佳范例四:隐马尔科夫模型 HMM学习最佳范例五:前向算法1 HMM学习最佳范例五:前向算法2 HMM学习最佳范例五:前向算法3 HMM学习最佳范例五:前向算法4

2015-03-05 15:16:18 758

git客户端forWindows

Windows下git客户端 版本 1.9.5

2014-12-22

Python Cookbook chm

python cookbook 英文版原版 编者:(美国)马特利(Alex Martelli) (美国)马特利(Anna Martelli Ravenscroft) (美国)阿舍尔(David Ascher)

2014-06-19

空空如也

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

TA关注的人

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