- ISO8583(一)初步了解ISO8583
Shujie_L
一:金融交易行业的痛点最起初的时候,金融系统需要用到的硬件设备只有类似于IBM这样的巨头公司才会去开发和生产。随着时间的推移,市场上渐渐出现一些其它公司也开始开发和生产这些金融系统所需要的设备。很自然这些公司便会提出一个问题,就是各大公司和平台的交易所需要传递的信息应该如何统一起来,遵循同一个标准呢?答案就是推出一种统一的协议,让大家都需要去遵循这个协议。而这个协议就是ISO8583协议。二:IS
- 接口测试基础知识
想当米虫
接口测试的地位采用金字塔型和橄榄球型来形象说明一下金字塔型从上到下:UI测试、接口测试、单元测试橄榄球型:接口测试在椭圆的中间可见,一个产品在完成之前,进行的测试最多的是接口测试。什么叫做接口测试传递固定格式信息并获得处理结果的一扇门。接口的类型并非所有应用程序的接口都会以WEBAPI的方式提供,有些场景需要使用TCP承载接口数据基于TCP的socket接口公共协议:如ISO8583私有协议:基于
- 银联8583报文规范详解
cgrass
今天主要是讲解下银联8583报文规范的一些知识。本文适合从事银联收单,pos行业,金融行业开发从业者阅读。一.什么是8583报文规范?1.8583全称:ISO8583包(简称8583包)是一个国际标准的包格式,最多由128个字段域组成,每个域都有统一的规定,并有定长与变长之分。2.8583位图:8583包前面一段为位图,用来确定包的字段域组成情况。其中位图是8583包的灵魂,它是打包解包确定字段域
- POS协议解析
程序员柒叔
pos协议IS08583
单纯的讲IS08583那些字段的定义,我觉得没有什么意思,标准中已经对每个字段解释的非常详细了,如果你觉得理解英文版的ISO8583规范有些困难,网上也有同行为我们翻译好的中文版ISO8583规范,所以我的目的是达到阅读本文后能够对ISO8583知其然,亦知其所以然,使以前基本没有接触它的人也能够达到掌握ISO8583报文规范。好了,我们该转入正题了。最开始时,金融系统只有IBM这些大的公司来提供
- java iso8583 socket 服务_JAVA客户端&服务器的socket通信
weixin_39765869
javaiso8583socket服务javajava端口监听
JAVA客户端&服务器的socket通信socket是两台主机之间的一个连接通道,它可以完成七个基本操作:发送远程机器发送数据接收数据关闭连接绑定端口监听入站数据再绑定端口上接收来自远程机器的连接在客户端上使用socket程序用构造函数创建一个新的socketsocket尝试连接远程服务器用socket从服务器读取Socket创建一个连接,如果连接超时,或者服务器未在端口上,那么就设置一个超时时间
- 关于结合ISO8583我所理解的TLV
予舍杨
项目总结网络协议java
首先,TLV是什么?TLV是Tag,Length,Value的缩写,Tag代表数据类型,是该数据元的唯一标识;Length是数据的长度;Value是数据的值。TLV是由这三种组成的结构体,几乎可以描述所有数据类型,并且几乎所有在卡片和终端之间传送的数据都是TLV格式。值得注意的是,TLV中的数据的值value也可以是一个TLV结构。结合之前写过ISO8583报文协议的部分内容1.TagBER-TL
- ISO8583接口的详细资料
biao2010
银行相关
转载自:http://www.blogjava.net/jjwwhmm/archive/2009/03/31/263041.htmlISO8583接口的详细资料ISO8583包(简称8583包)是一个国际标准的包格式,最多由128个字段域组成,每个域都有统一的规定,并有定长与变长之分。8583包前面一段为位图,用来确定包的字段域组成情况。其中位图是8583包的灵魂,它是打包解包确定字段域的关键,而
- ISO8583报文中的编、解码总结
youyu_torch
支付行业
1.pos收单流程从POS机的角度看,一个典型的收单交易流程为:1.根据报文格式进行组包,向后台发起交易请求;2.后台收到请求后解包进行验证,验证完成后重新组包返回应答报文;3.POS终端收到应答报文后解包,得到最终交易结果,整个流程结束。其中,组包就是编码的过程,解包就是解码的过程。2.计算机编码基础计算机可以存储数字、字母、中文、特殊符号、图像等等各种复杂的数据,但不管是何种数据,最终都是通过
- 银联Iso8583报文 POS终端报文结构
红橡树
Java
终端则(一)基础知识1byte=8bit1byte=2个16进制数BCD码:用4位二进制数来表示1位十进制数中的0~9这10个数码,即1bcd码=4bit(二)报文结构报文长度TPDU头报文头应用数据2字节16进制表示的报文长度(不包括本身)5字节12字节交易数据(不定长度)TPDU头=ID(60H)+目的地址(N4)+源地址(N4),长度为10字节,压缩时用BCD码表示为5个字节长度的数值。报文
- (转载)解析ISO8583报文实例
hongchaolee
Pos应用
本篇文章参考了中国银联POS终端规范,所以如有不明白的可以去我的资源里面下载。现在我们有ISO8583报文如下(十六进制表示法):60000300006031003107300200302004C020C09811000000000000000001000349021000123062258221129963015D15111010000035363835323331343233353231343
- (转载)ISO8583报文128个域说明
hongchaolee
Pos应用iso8583128域
ISO8583包(简称8583包)是一个国际标准的包格式,最多由128个字段域组成,每个域都有统一的规定,并有定长与变长之分。8583包前面一段为位图,用来确定包的字段域组成情况。其中位图是8583包的灵魂,它是打包解包确定字段域的关键,而了解每个字段域的属性则是填写数据的基础,1、位图描述如下:位图位置:1格式:定长类型:B16(二进制16位,16*8=128bit)描述:如将位图的第一位设为'
- JAVA封装Iso报文
一笔成画
一:IS08583包介绍:ISO8583包(简称8583包)是一个国际标准的包格式,最多由128个字段域组成,每个域都有统一的规定,并有定长与变长之分。8583包前面一段为位图,用来确定包的字段域组成情况。其中位图是8583包的灵魂,它是打包解包确定字段域的关键,而了解每个字段域的属性则是填写数据的基础。1:位图说明:位置:在8583包的第1位格式:定长类型:B16(二进制16位,16*8=128
- J8583包组合字段处理优化
Jone_ZhangH
C1-Java
最近研究ISO8583域时,采用了大佬编写的J8583公共jar包。不过对于需求中域的组合字段,压缩变长数据长度值时候,j8583不能把子域的长度位一起压缩。修改了j8583,以供参考。需求:域63自定义域(ReservedPrivate)变量属性ANS…163(LLLVAR),3个字节的长度值+最大163个字节的数据。压缩时用右靠BCD码表示的2个字节的长度值+用ASCII码表示的最大163个字
- 8583报文的使用和解析
U2133048
金融业务
ISO8583报文(简称8583包)又称8583报文是一个国际标准的包格式,最多由128个字段域组成,每个域都有统一的规定,并有定长与变长之分。8583包前面一段为位图,用来确定包的字段域组成情况。其中位图是8583包的灵魂,它是打包解包确定字段域的关键,而了解每个字段域的属性则是填写数据的基础。在POS机的开发上时经常要用到,例如回头客会员管理系统在POS机上的应用就是采用8583报文。“消费”
- ISO8583报文协议——很容易理解
maikelsong
iso8583
我刚进入金融行业时,就知道了IS08583报文协议,我想可能我还没进入这个行业都已经听过了,可知ISO8583的影响力有多大了。最初刚接触它时,确实对其中的一些细节概念不是很清晰,对有些地方比较迷惑。鉴于此,我想很多同行也必然会经历同样得阶段,所以我写下本文,以便大家能够少走一些弯路。同时,我在网上(http://blog.csdn.net/lysheng/archive/2005/03/03/3
- c# 主机和网络字节序的转换
weixin_34301132
最近使用C#进行网络开发,需要处理ISO8583报文,由于其中有些域是数值型的,于是在传输的时候涉及到了字节序的转换。字节顺序是指占内存多于一个字节类型的数据在内存中的存放顺序,通常有两种字节顺序,根据他们所处的位置我们分别称为主机节序和网络字节序。通常我们认为网络字节序为标准顺序,封包的时候,将主机字节序转换为网络字节序,拆包的时候要将网络字节序转换为主机字节序。原以为还要自己写函数,其实网络库
- C#.ToString()格式大全
config_man
.NET
原文地址:http://www.cnblogs.com/1971ruru/archive/2012/12/12/2814853.html最近在做第三方支付,用到了ISO8583包,因为有些域需要特定的格式,所以把常用的都搬过来了,以备不时之需,知识是无限的,大脑也是无限的。C货币2.5.ToString("C")¥2.50D十进制数25.ToString("D5")00025E科学型25000.T
- 简单聊聊ISO8583报文
水手_surge
网上应该有不少关于8583的文章,这个算是属于老生常谈了,但是要找一篇细致的,容易理解的可能还真不太好找,那我们今天就来简单的聊聊。8583协议是基于ISO8583报文国际标准的包格式的通讯协议,8583包最多由128个字段域组成,每个域都有统一的规定,并有定长与变长之分。8583包前面一段为位图,它是打包解包确定字段域的关键代替。8583协议多在POS机的开发上使用。——百度百科数据格式及符号定
- 银行卡为何要使用ISO8583格式
dujh302
一直对这个数据格式没有好感,因为它引导人们把名称简化为无意义的编号,增加记忆和理解的成本。周星驰的《唐伯虎点秋香》中,唐伯虎进入华府做家丁,被编号为9527,一个家丁没有资格被呼作姓名,就算是唐伯虎。曾几何时,高速公路的路牌是各种的名字:机场高速,京珠高速。。。。后来被取缔为s21,g20,让人十分无语。最近,我听得最多的就是49域上送的不对,32域校验不对之类的。当时我的心真的有点捉狂,使得我一
- 银行服务器遭到黑客攻击,骗取ATM现金数百万美元
黑客联盟l
每当您在ATM或零售商店的PoS机器中使用您的支付卡时,软件会(以ISO8583消息格式)询问银行的交换机应用程序服务器以验证交易接受或拒绝,具体取决于您银行的可用金额帐户。然而,隐藏的眼镜蛇攻击者成功地破坏了不同银行的交换机应用服务器,他们拥有最少的余额或零余额的账户(及其支付卡)。然后,安装在受感染交换机应用程序服务器上的恶意软件拦截与攻击者的支付卡相关联的交易请求,并以虚假但合法的肯定响应进
- PHP处理iso8583报文
dobat
PHP
前文前段时间对接一个第三方公司的接口,其他部分或简单、或麻烦,总之没有花很多功夫都完成了。最后在着手交易接口时,犯了难。报文格式区别另外接口,需使用iso8583报文,咋一看文档,很让人懵逼,又是bcd,又是ascii,两个字节压缩成一个字节。用了将近一周时间慢慢懂了报文规则,开始准备写代码时又有了麻烦事。可能查资料的姿势不对,没找到PHP的DEMO,基本上都是Java实现。PHP又没有字节操作概
- 解析ISO8583报文实例
CHCH998
实例解析
原文地址为:解析ISO8583报文实例本篇文章参考了中国银联POS终端规范,所以如有不明白的可以去我的资源里面下载。现在我们有ISO8583报文如下(十六进制表示法):60000300006031003107300200302004C020C09811000000000000000001000349021000123062258221129963015D1511101000003536383532
- 8583报文协议
Dandelions丶ky
最开始的时候,金融系统只有IBM这些大的公司来提供设备,像各种主机和终端等等,在各个计算机设备之间,需要交换数据。我们知道数据是通过网络来传送的,而在网络上传送的数据都是基于0和1这样二进制数据。我们需要一个通用报文协议,来解决金融系统之间的报文交换(让我们知道我们传输的数据代表什么意思),暂且称之为ISO8583报文协议,这个报文协议需要容纳所有公司的数据交互,所以我们需要一个通用的格式。第一步
- iso8583128域
An_LinK
Pos应用iso8583128域ISO8583包(简称8583包)是一个国际标准的包格式,最多由128个字段域组成,每个域都有统一的规定,并有定长与变长之分。8583包前面一段为位图,用来确定包的字段域组成情况。其中位图是8583包的灵魂,它是打包解包确定字段域的关键,而了解每个字段域的属性则是填写数据的基础,1、位图描述如下:位图位置:1格式:定长类型:B16(二进制16位,16*8=128bi
- 初识8583协议
夜远曦白
好长时间没来总结笔记了,源于新入职适应环境要学很多东西,有点小忙,当然这也是为自己的懒惰找的借口啦,哈哈~近来熟悉业务在看销售点终端(POS)应用规范,于是接触到了8583报文协议,来做点笔记。8583协议是基于ISO8583报文国际标准的包格式的通讯协议,多用于POS开发,它就是一种解决金融系统之间的报文交换的协定,各个计算机设备之间通过网络来传送来交换数据,这些数据都是基于0或1这样的二进制数
- ISO8583手机端打包—— iOS库
黑羽肃霜
前言通常刷卡交易中是用到的8583报文是在前置后台打包,或是在POS端打包,手机端只是作为通信链路的媒介存在,不作为打包方案。也有少数用户(不在意安全……)会使用手机端打包。anyway,写了一个iPhone端打包的iOSutil.github项目地址简介ISO8583是金融行业中,有关金融交易的电子信息交换应用规范。ISO8583国际标准设计了一个保证在采用不同应用规范的系统间能够进行信息交换的
- 大话IS08583报文协议
asd1123509133
ISO8583报文协议C/C++编程
背景最近在学习ISO8583报文协议,苦于网上只有些苦涩难懂的中文翻译解释,和由于自己蹩脚的英语看不懂国外资料,在搜寻一翻后,查到了一些资料,特此整理出来..正文如果单纯的讲IS08583那些字段的定义,我觉得没有什么意思,标准中已经对每个字段解释的非常详细了,如果你觉得理解英文版的ISO8583规范有些困难,网上也有同行为我们翻译好的中文版ISO8583规范,所以我的目的是达到阅读本文后能够对I
- ISO8583报文协议
那些年的草木灰
最开始时,金融系统只有IBM这些大的公司来提供设备,象各种主机与终端等。在各个计算机设备之间,需要交换数据。我们知道数据是通过网络来传送的,而在网络上传送的数据都是基于0或1这样的二进制数据,如果没有对数据进行编码,则这些数据没有人能够理解,属于没有用的数据。起初的X.25、SDLC以及现在流行的TCP/IP网络协议都提供底层的通讯编码协议,它们解决了最底层的通讯问题,能够将一串字符从一个地方传送
- 2016-02-24 工作日记
靖思
今天对建行的ISO8583进行学习,这个银联的接口规范学习认知 中国建设银行间连POS终端规范1.1银行卡 bankcard商业银行等金融机构及邮政储汇机构向社会发行的,具有消费信用、转账结算、存取现金等全部或部分功能的信用支付工具。1.2磁条卡 magneticstripecard物理特性符合GB/T14916标准,磁条记录符合GB/T15120、GB/T15694-1、ISO7812-2、GB
- ISO8583银联报文规范
Nemo
本篇文章参考了中国银联POS终端规范,所以如有不明白的可以去我的资源里面下载。现在我们有ISO8583报文如下(十六进制表示法):60000300006031003107300200302004C020C09811000000000000000001000349021000123062258221129963015D15111010000035363835323331343233353231343
- 算法 单链的创建与删除
换个号韩国红果果
c算法
先创建结构体
struct student {
int data;
//int tag;//标记这是第几个
struct student *next;
};
// addone 用于将一个数插入已从小到大排好序的链中
struct student *addone(struct student *h,int x){
if(h==NULL) //??????
- 《大型网站系统与Java中间件实践》第2章读后感
白糖_
java中间件
断断续续花了两天时间试读了《大型网站系统与Java中间件实践》的第2章,这章总述了从一个小型单机构建的网站发展到大型网站的演化过程---整个过程会遇到很多困难,但每一个屏障都会有解决方案,最终就是依靠这些个解决方案汇聚到一起组成了一个健壮稳定高效的大型系统。
看完整章内容,
- zeus持久层spring事务单元测试
deng520159
javaDAOspringjdbc
今天把zeus事务单元测试放出来,让大家指出他的毛病,
1.ZeusTransactionTest.java 单元测试
package com.dengliang.zeus.webdemo.test;
import java.util.ArrayList;
import java.util.List;
import org.junit.Test;
import
- Rss 订阅 开发
周凡杨
htmlxml订阅rss规范
RSS是 Really Simple Syndication的缩写(对rss2.0而言,是这三个词的缩写,对rss1.0而言则是RDF Site Summary的缩写,1.0与2.0走的是两个体系)。
RSS
- 分页查询实现
g21121
分页查询
在查询列表时我们常常会用到分页,分页的好处就是减少数据交换,每次查询一定数量减少数据库压力等等。
按实现形式分前台分页和服务器分页:
前台分页就是一次查询出所有记录,在页面中用js进行虚拟分页,这种形式在数据量较小时优势比较明显,一次加载就不必再访问服务器了,但当数据量较大时会对页面造成压力,传输速度也会大幅下降。
服务器分页就是每次请求相同数量记录,按一定规则排序,每次取一定序号直接的数据
- spring jms异步消息处理
510888780
jms
spring JMS对于异步消息处理基本上只需配置下就能进行高效的处理。其核心就是消息侦听器容器,常用的类就是DefaultMessageListenerContainer。该容器可配置侦听器的并发数量,以及配合MessageListenerAdapter使用消息驱动POJO进行消息处理。且消息驱动POJO是放入TaskExecutor中进行处理,进一步提高性能,减少侦听器的阻塞。具体配置如下:
- highCharts柱状图
布衣凌宇
hightCharts柱图
第一步:导入 exporting.js,grid.js,highcharts.js;第二步:写controller
@Controller@RequestMapping(value="${adminPath}/statistick")public class StatistickController { private UserServi
- 我的spring学习笔记2-IoC(反向控制 依赖注入)
aijuans
springmvcSpring 教程spring3 教程Spring 入门
IoC(反向控制 依赖注入)这是Spring提出来了,这也是Spring一大特色。这里我不用多说,我们看Spring教程就可以了解。当然我们不用Spring也可以用IoC,下面我将介绍不用Spring的IoC。
IoC不是框架,她是java的技术,如今大多数轻量级的容器都会用到IoC技术。这里我就用一个例子来说明:
如:程序中有 Mysql.calss 、Oracle.class 、SqlSe
- TLS java简单实现
antlove
javasslkeystoretlssecure
1. SSLServer.java
package ssl;
import java.io.FileInputStream;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.security.KeyStore;
import
- Zip解压压缩文件
百合不是茶
Zip格式解压Zip流的使用文件解压
ZIP文件的解压缩实质上就是从输入流中读取数据。Java.util.zip包提供了类ZipInputStream来读取ZIP文件,下面的代码段创建了一个输入流来读取ZIP格式的文件;
ZipInputStream in = new ZipInputStream(new FileInputStream(zipFileName));
&n
- underscore.js 学习(一)
bijian1013
JavaScriptunderscore
工作中需要用到underscore.js,发现这是一个包括了很多基本功能函数的js库,里面有很多实用的函数。而且它没有扩展 javascript的原生对象。主要涉及对Collection、Object、Array、Function的操作。 学
- java jvm常用命令工具——jstatd命令(Java Statistics Monitoring Daemon)
bijian1013
javajvmjstatd
1.介绍
jstatd是一个基于RMI(Remove Method Invocation)的服务程序,它用于监控基于HotSpot的JVM中资源的创建及销毁,并且提供了一个远程接口允许远程的监控工具连接到本地的JVM执行命令。
jstatd是基于RMI的,所以在运行jstatd的服务
- 【Spring框架三】Spring常用注解之Transactional
bit1129
transactional
Spring可以通过注解@Transactional来为业务逻辑层的方法(调用DAO完成持久化动作)添加事务能力,如下是@Transactional注解的定义:
/*
* Copyright 2002-2010 the original author or authors.
*
* Licensed under the Apache License, Version
- 我(程序员)的前进方向
bitray
程序员
作为一个普通的程序员,我一直游走在java语言中,java也确实让我有了很多的体会.不过随着学习的深入,java语言的新技术产生的越来越多,从最初期的javase,我逐渐开始转变到ssh,ssi,这种主流的码农,.过了几天为了解决新问题,webservice的大旗也被我祭出来了,又过了些日子jms架构的activemq也开始必须学习了.再后来开始了一系列技术学习,osgi,restful.....
- nginx lua开发经验总结
ronin47
使用nginx lua已经两三个月了,项目接开发完毕了,这几天准备上线并且跟高德地图对接。回顾下来lua在项目中占得必中还是比较大的,跟PHP的占比差不多持平了,因此在开发中遇到一些问题备忘一下 1:content_by_lua中代码容量有限制,一般不要写太多代码,正常编写代码一般在100行左右(具体容量没有细心测哈哈,在4kb左右),如果超出了则重启nginx的时候会报 too long pa
- java-66-用递归颠倒一个栈。例如输入栈{1,2,3,4,5},1在栈顶。颠倒之后的栈为{5,4,3,2,1},5处在栈顶
bylijinnan
java
import java.util.Stack;
public class ReverseStackRecursive {
/**
* Q 66.颠倒栈。
* 题目:用递归颠倒一个栈。例如输入栈{1,2,3,4,5},1在栈顶。
* 颠倒之后的栈为{5,4,3,2,1},5处在栈顶。
*1. Pop the top element
*2. Revers
- 正确理解Linux内存占用过高的问题
cfyme
linux
Linux开机后,使用top命令查看,4G物理内存发现已使用的多大3.2G,占用率高达80%以上:
Mem: 3889836k total, 3341868k used, 547968k free, 286044k buffers
Swap: 6127608k total,&nb
- [JWFD开源工作流]当前流程引擎设计的一个急需解决的问题
comsci
工作流
当我们的流程引擎进入IRC阶段的时候,当循环反馈模型出现之后,每次循环都会导致一大堆节点内存数据残留在系统内存中,循环的次数越多,这些残留数据将导致系统内存溢出,并使得引擎崩溃。。。。。。
而解决办法就是利用汇编语言或者其它系统编程语言,在引擎运行时,把这些残留数据清除掉。
- 自定义类的equals函数
dai_lm
equals
仅作笔记使用
public class VectorQueue {
private final Vector<VectorItem> queue;
private class VectorItem {
private final Object item;
private final int quantity;
public VectorI
- Linux下安装R语言
datageek
R语言 linux
命令如下:sudo gedit /etc/apt/sources.list1、deb http://mirrors.ustc.edu.cn/CRAN/bin/linux/ubuntu/ precise/ 2、deb http://dk.archive.ubuntu.com/ubuntu hardy universesudo apt-key adv --keyserver ke
- 如何修改mysql 并发数(连接数)最大值
dcj3sjt126com
mysql
MySQL的连接数最大值跟MySQL没关系,主要看系统和业务逻辑了
方法一:进入MYSQL安装目录 打开MYSQL配置文件 my.ini 或 my.cnf查找 max_connections=100 修改为 max_connections=1000 服务里重起MYSQL即可
方法二:MySQL的最大连接数默认是100客户端登录:mysql -uusername -ppass
- 单一功能原则
dcj3sjt126com
面向对象的程序设计软件设计编程原则
单一功能原则[
编辑]
SOLID 原则
单一功能原则
开闭原则
Liskov代换原则
接口隔离原则
依赖反转原则
查
论
编
在面向对象编程领域中,单一功能原则(Single responsibility principle)规定每个类都应该有
- POJO、VO和JavaBean区别和联系
fanmingxing
VOPOJOjavabean
POJO和JavaBean是我们常见的两个关键字,一般容易混淆,POJO全称是Plain Ordinary Java Object / Plain Old Java Object,中文可以翻译成:普通Java类,具有一部分getter/setter方法的那种类就可以称作POJO,但是JavaBean则比POJO复杂很多,JavaBean是一种组件技术,就好像你做了一个扳子,而这个扳子会在很多地方被
- SpringSecurity3.X--LDAP:AD配置
hanqunfeng
SpringSecurity
前面介绍过基于本地数据库验证的方式,参考http://hanqunfeng.iteye.com/blog/1155226,这里说一下如何修改为使用AD进行身份验证【只对用户名和密码进行验证,权限依旧存储在本地数据库中】。
将配置文件中的如下部分删除:
<!-- 认证管理器,使用自定义的UserDetailsService,并对密码采用md5加密-->
- mac mysql 修改密码
IXHONG
mysql
$ sudo /usr/local/mysql/bin/mysqld_safe –user=root & //启动MySQL(也可以通过偏好设置面板来启动)$ sudo /usr/local/mysql/bin/mysqladmin -uroot password yourpassword //设置MySQL密码(注意,这是第一次MySQL密码为空的时候的设置命令,如果是修改密码,还需在-
- 设计模式--抽象工厂模式
kerryg
设计模式
抽象工厂模式:
工厂模式有一个问题就是,类的创建依赖于工厂类,也就是说,如果想要拓展程序,必须对工厂类进行修改,这违背了闭包原则。我们采用抽象工厂模式,创建多个工厂类,这样一旦需要增加新的功能,直接增加新的工厂类就可以了,不需要修改之前的代码。
总结:这个模式的好处就是,如果想增加一个功能,就需要做一个实现类,
- 评"高中女生军训期跳楼”
nannan408
首先,先抛出我的观点,各位看官少点砖头。那就是,中国的差异化教育必须做起来。
孔圣人有云:有教无类。不同类型的人,都应该有对应的教育方法。目前中国的一体化教育,不知道已经扼杀了多少创造性人才。我们出不了爱迪生,出不了爱因斯坦,很大原因,是我们的培养思路错了,我们是第一要“顺从”。如果不顺从,我们的学校,就会用各种方法,罚站,罚写作业,各种罚。军
- scala如何读取和写入文件内容?
qindongliang1922
javajvmscala
直接看如下代码:
package file
import java.io.RandomAccessFile
import java.nio.charset.Charset
import scala.io.Source
import scala.reflect.io.{File, Path}
/**
* Created by qindongliang on 2015/
- C语言算法之百元买百鸡
qiufeihu
c算法
中国古代数学家张丘建在他的《算经》中提出了一个著名的“百钱买百鸡问题”,鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问翁,母,雏各几何?
代码如下:
#include <stdio.h>
int main()
{
int cock,hen,chick; /*定义变量为基本整型*/
for(coc
- Hadoop集群安全性:Hadoop中Namenode单点故障的解决方案及详细介绍AvatarNode
wyz2009107220
NameNode
正如大家所知,NameNode在Hadoop系统中存在单点故障问题,这个对于标榜高可用性的Hadoop来说一直是个软肋。本文讨论一下为了解决这个问题而存在的几个solution。
1. Secondary NameNode
原理:Secondary NN会定期的从NN中读取editlog,与自己存储的Image进行合并形成新的metadata image
优点:Hadoop较早的版本都自带,