自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Hsienhua's blog

自己的学习之路

  • 博客(96)
  • 资源 (7)
  • 收藏
  • 关注

原创 spark sql boardcast join 生效问题探索

这里写目录标题本文针对 版本spark 2.2问题描述问题排查broadcast join 自动触发条件。执行解决不能自动触发boardcast join得情况本文针对 版本spark 2.2问题描述spark sql 执行sql语句:big_table a left join small_table b on a.id = b.idsmall_table 只有100多行数据。big_table 大约5亿行数据。没有触发 spark sql 的 broadcast join,导致sql执

2020-06-13 20:03:25 696 1

原创 java谜题4:16进制的趣事

1.谜题两个16进制数相加,代码如下:

2014-04-17 14:28:24 664

原创 java谜题3:长整除

一、谜题

2014-04-15 16:00:10 664

原创 Java谜题2:找零时刻

一、谜题假设一个1.1元商品,客户给了2yua

2014-04-14 14:20:15 787

原创 java谜题1:奇数性

一、谜题

2014-04-08 10:12:30 1068

原创 effective java :创建和销毁对象

用静态工厂方法代替构造器类可以设计一个静态工厂方法,对外提供自己的一个实例。和公有构造器相比的优势(1)静态工厂方法有名称。更容易使用,客户端代码更容易阅读。(2)不必每次调用都创建一个新的对象。静态工厂方法可以根据需求,选择返回有限制个数实例或者创建一个实例。返回有限制的实例,可以使用Singleton,或者Flyweight。(3)静态工厂方

2014-02-19 17:33:41 693

原创 Java7 NIO 之文件系统访问

Java7中 的I/O库得到了进一步增强,成为NIO.2 。 NIO.2 中包含的主要内容包括文件系统访问和异步I/O通道.Java 7 加强了文件操作相关的功能,使用java.nio.file包的类实现。1.文件路径的抽象:Path 类(1)创建Path:Path path1 = Paths.get("E:\\book\\"); //创建path

2014-01-10 17:06:40 1281

转载 Java 7如何操纵文件属性

文章来源:http://blog.csdn.net/chszsJava 7如何操纵文件属性作者:chszs,转载需注明。博客主页:http://blog.csdn.net/chszs准备写点基础性的文章,Java 7已经出来很长一段时间了,但是很多Java程序员仍然停留在早期的Java 5或Java 6的基础上,对Java 7的新特性从未加以使用。本文介

2014-01-10 16:48:00 728

原创 Java NIO 之 buffer

Buffer(缓冲区)是一个包装了基本数据元素数组的对象,提供了比数组更加丰富API操作数据。1.属性Buffer有四个基本属性:1、capacity  容量,buffer能够容纳的最大元素数目,在Buffer创建时设定并不能更改2、limit buffer中有效位置数目3、position 下一个读或者写的位置4、mark  用于记忆的标志位,配合

2014-01-10 11:58:41 754

转载 Java注解

在开发Java程序,尤其是Java EE应用的时候,总是免不了与各种配置文件打交道。以Java EE中典型的S(pring)S(truts)H(ibernate)架构来说,Spring、Struts和Hibernate这三个框架都有自己的XML格式的配置文件。这些配置文件需要与Java源代码保存同步,否则的话就可能出现错误。而且这些错误有可能到了运行时刻才被发现。把同一份信息保存在两个地方,总是个

2013-11-20 21:09:53 816

原创 Java笔记:枚举

Java中:关键字enum可以将一组具名的值得有限集合创建为一种新的类型,而这些具名的值可以作为常规的程序组件使用。这是一种非常有用的功能。基本enum特性//定义一组枚举值enum Shrubbery {GROUND,CRAWLING,HANDING}public class EnumClass { public static void main(St

2013-11-14 13:30:44 801

转载 精选实用正则表达式

匹配中文字符的正则表达式: [\u4e00-\u9fa5]评注:匹配中文还真是个头疼的事,有了这个表达式就好办了匹配双字节字符(包括汉字在内):[^\x00-\xff]评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)匹配空白行的正则表达式:\n\s*\r评注:可以用来删除空白行匹配HTML标记的正则表达式:]*>.*?|评注:网上流传的版本太糟糕,上

2013-10-26 16:56:19 465

转载 Java中HashMap详解

转自:http://alex09.iteye.com/blog/539545HashMap 和 HashSet 是 Java Collection Framework 的两个重要成员,其中 HashMap 是 Map 接口的常用实现类,HashSet 是 Set 接口的常用实现类。虽然 HashMap 和 HashSet 实现的接口规范不同,但它们底层的 Hash 存储机制完全一样,甚至

2013-10-23 20:40:18 725

原创 Java 笔记:压缩功能(zip和gzip)

概述Java I/O类库中的类支持读写压缩格式的数据流。它们属于InputStream和OutputStream继承层次结构的一部分。这些类包括:CheckedInputStream :GetCheckSum为任何InputStream产生效验和。CheckedOutputStream : GetCheckSum为任何OutputStream产生效验和。DeflaterOutp

2013-10-21 20:46:52 1020

原创 Java 笔记:NIO新IO

java 新 IO从JDK1.4 开始,Java提供了一些列改进IO新特性,放在Java.nio及其子包下。并改进了原包中的很多类以NIO为基础进行了改写,满足了NIO的功能。NIO采用内存映射文件的方式来处理输入/输出,将文件或者文件的一段区域映射到内存中,就可以像访问内存一样访问文件,所以速度要比旧IO快很多。Channel 和 BufferChannel(通道

2013-10-18 21:58:21 886

原创 java设计模式笔记:调停者模式

调停者模式调停者模式是对象的行为模式。调停者模式包装了一系列对象相互作用的方式,使得这些对象不必相互明显引用。从而使它们可以较松散地耦合。当这些对象中的某些对象之间的相互作用发生改变时,不会立即影响到其他的一些对象之间的相互作用。从而保证这些相互作用可以彼此独立地变化。为什么需要调停者  如下图所示,这个示意图中有大量的对象,这些对象既会影响别的对象,又会被别的对象

2013-10-16 21:41:03 724

原创 Java设计模式笔记:解释器

解释器模式解释器模式是类的行为模式。给定一个语言之后,解释器模式可以定义出其文法的一种表示,并同时提供一个解释器。客户端可以使用这个解释器来解释这个语言中的句子。解释器模式的结构下面就以一个示意性的系统为例,讨论解释器模式的结构。系统的结构图如下所示:  模式所涉及的角色如下所示:  (1)抽象表达式(Expression)角

2013-10-16 20:44:36 1167

转载 tomcat报内存溢出 java.lang.OutOfMemoryError

设置Tomcat启动的初始内存其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)是物理内存的1/4。可以利用JVM提供的-Xmn -Xms -Xmx等选项可进行设置。以下给出1G内存环境下java jvm 的参数设置参考:JAVA_OPTS="-server -Xms800m -Xmx800m  -XX:PermSize=64M -XX:MaxN

2013-10-16 09:38:24 684

原创 java设计模式笔记:访问者模式

1.访问者模式 访问者模式是对象的行为模式。访问者模式的目的是封装一些施加于某种数据结构元素之上的操作。一旦这些操作需要修改的话,接受这个操作的数据结构则可以保持不变。2.访问者模式的结构  访问者模式适用于数据结构相对未定的系统,它把数据结构和作用于结构上的操作之间的耦合解脱开,使得操作集合可以相对自由地演化。访问者模式的简略图如下所示:  数

2013-10-15 21:23:43 600

原创 java设计模式:状态模式

1.状态模式状态模式(state),又称状态对象模式,是对象的行为模式。状态模式允许对象在其内部状态改变的时候改变其行为。这个对象看上去就像是改变了它的类一样。2.状态模式的结构状态模式的意图是让一个对象在其内部状态改变的时候,其行为也随之改变。示意图如下:状态模式参与角色:抽象状态(State)角色:定义接口,用来封装环境(Context)对象一个

2013-10-15 13:40:17 607

原创 使用ant管理工程的HelloWorld示例

1.说明apache ant是一个轻量级的、基于命令行的工程管理工具。2.安装ant(1)ant下载:http://ant.apache.org/bindownload.cgi(2)解压下载的包到任意目录,记住目录,例如我的是:C:\apache-ant-1.9.2(3)设置环境变量,ANT_HOME:C:\apache-ant-1.9.2,path:;C:\apach

2013-10-12 10:01:23 805

转载 PostgreSQL的递归查询(with recursive)

文章转自:http://my.oschina.net/Kenyon/blog/55137开发有需求,说需要对一张地区表进行递归查询,Postgres中有个 with recursive的查询方式,可以满足递归查询(一般>=2层)。 测试如下:create table tb(id varchar(3) , pid varchar(3) , name varchar(10));

2013-10-09 17:13:37 1420

原创 Java设计模式:备忘录模式

1.备忘录模式备忘录模式又叫(Memento)是对象的行为模式。备忘录对象(Memento)对象是一个用来存储另外一个对象内部状态的快照的对象。备忘录模式的用意是在不破坏封装的条件下,将一个对象的状态捕捉,并外部化,存储起来,从而可以在合适的时候把这个对象还原到存储起来的状态。2.备忘录模式的结构备忘模式的总体结构:参与模式的角色:备忘录角色(Mem

2013-09-14 16:30:41 586

原创 Java设计模式:命令模式

1.命令模式命令模式(Command)属于对象的行为模式。命令模式把一个请求或者操作封装到一个对象中。命令模式允许系统使用不同请求把客户端参数化,对请求排队或者记录请求日志,可以提供命令的撤销和恢复功能。2.命令模式的类图参与的角色:Client:客户角色,创建了一个具体命令(ConcreteCommand)对象并确定其接收者。Command:命令角色:

2013-09-14 10:24:41 551

原创 Postgres主从分区表应用

1.实现分区表(1)创建主表create table tbl_partition (id integer,name varchar(20),gender boolean,join_date date,dept char(4));(2)创建从表create table tbl_partition_201211 (check ( join_date >= DATE

2013-09-11 14:10:47 1135

转载 8种Nosql数据库系统对比

导读:Kristóf Kovács 是一位软件架构师和咨询顾问,他最近发布了一片对比各种类型NoSQL数据库的文章。虽然SQL数据库是非常有用的工具,但经历了15年的一支独秀之后垄断即将被打破。这只是时间问题:被迫使用关系数据库,但最终发现不能适应需求的情况不胜枚举。但是NoSQL数据库之间的不同,远超过两 SQL数据库之间的差别。这意味着软件架构师更应该在项目开始时就选择好一个适

2013-09-11 09:13:45 772

原创 Java设计模式笔记之责任链模式

1.责任链模式责任链模式是对象的行为模式。在责任链模式中,每个对象对其下家的引用而连接起来形成一条链。请求在这个链上传递,直到链上的某一个对象处理这个请求。客户端并直到链上的哪一个对象处理这个请求,使得系统可以在不影响客户端的情况下动态地重新组织链和分配责任。2.责任链模式的结构结构类图如下:责任链模式涉及到的角色如下所示:  ●  抽象处理者(

2013-09-10 21:10:14 546

原创 Java设计模式笔记之迭代器模式

1.迭代器模式迭代器(子)模式(Iterator)又叫游标模式,是对象的行为模式。迭代器模式可以顺序的访问一个聚集中的元素,而不用暴露聚集的内部表象。2.为什么需要迭代器模式一个聚集持有多个对象,就需要对客户端提供遍历对象的方法,使用过程会出现以下问题:(1)迭代逻辑没有改变,但是需要将一种聚集换成另一种聚集。(2)聚集没有改变,但是迭代方式需要改变,例如新增可以删除元素的功能

2013-09-09 21:45:03 809 1

原创 Java IO笔记:标准IO

1.标准输入和输出标准IO是指程序的输入和标准输出,用户和程序之间、程序和程序之间的交流都可以通过标准IO实现。Java中使用System.in(输入),System.out(输出)和System.err(错误输出)来提供程序的输入和输出。2.读取输入数据public class Echo { public static void main(String[] args) t

2013-09-07 16:09:35 626

原创 Ubuntu定时备份Postgres

1.建一个备份脚本backup内容如下#!/bin/shexport PGPASSWORD=lanrui2013[] #postgres的用户密码环境变量sudo -u postgres pg_dump -U postgres -w db > /home/diyadmin/backups/`date +%F`.bak2.设置crontab(1)输入命令 sudo c

2013-09-06 10:18:02 1562

原创 Java设计模式笔记之观察者模式

1.观察者模式观察者模式是对象的行为那模式,又叫发布-订阅(Publish/Subcrible)模式,模型-视图(Model/View)模式、源-监听器模式或从属者模式。观察者模式定义了一种一对多的依赖关系,让多个观察者同时监听某一个主题对象。这个主题对象在状态上发生变化时,会通知多有观察者对象,使它们自动更新。2.观察者模式的结构参与角色:Subjec

2013-09-03 17:14:47 745

原创 Java IO笔记(3)RandomAccessFile

1.RandomAccessFileRandomAccessFile适用由大小已知的记录组成的文件,所以我们可以使用seek()将记录从一处转移到另一处;RandomAccessFile不是InputStream或者OutputStream继承层次的一部分,是自我独立的类;RandomAccessFile的大部分功能,但不是全部,由nio存储映射文件取代。2.使用示例i

2013-09-03 14:18:45 630

原创 Java IO笔记(2)典型应用

Java IO的一些典型应用,内容来源于《Java编程思想》1.缓冲输入文件public class BufferedInputFile { public static String read(String filename) throws IOException { /** * 为了提高速度,使用BufferedReader,添加缓存功能 */ Buff

2013-09-03 13:36:50 651

原创 Java与设计模式笔记之模板方法模式

1.模板方法模式模板方法模式是类的行为模式。准备一个抽象类,将部分逻辑以具体方法以及具体构造子的形式实现,然后声明一些抽象方法来迫使子类实现剩余的逻辑。不同的子类以不同的方式实现这些抽象方法,从而对剩余的逻辑有不同的实现。2.模板方法模式模板方法模式的结构更多的是体现在方法上,类结构很简单。参与角色:AbstractClass抽象模板,责任由2个定义

2013-08-31 16:59:28 779

原创 Java设计模式笔记之策略模式

1.策略模式策略模式是对象的行为模式。其用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。2.策略模式的结构参与角色:Context:环境角色,持有一个引用,并给客户端提供一个方法,调用策略。Strategy:抽象策略角色,定义所有策略算法的公共接口,给Context调用

2013-08-31 15:09:52 665

原创 用iText把图片转成PDF

1.iTextiText是一个非常著名的能够快速产生PDF文件的Java类库。支持文本,表格,图形的操作,可以方便的跟 Servlet 进行结合。软件首页:http://www.itextpdf.com2.实现图片转成PDF在项目中要求把几个图片转成pdf,一页一个。代码如下:/** * * @param destPath 生成pdf文件的路劲 * @pa

2013-08-31 11:02:44 1872

原创 Java IO记录(1)概述

1.Java的IO流Java的IO流(Stream)是实现输入/输出的基础,Java中把不同的输入/输出源(命令行、文件、网络等)抽象表述为 “流”,通过流的方式允许Java程序使用相同的方式来访问不同的输入/输出源。2.流的分类(1)按照“流向”,可以分输入流和输出流输入流:只能从流中读取数据,以InputStream和Reader作为基类输出流:只能向流中写数据,以Ou

2013-08-30 16:23:40 571

原创 Java设计模式笔记之桥梁模式

1.桥梁模式桥梁模式是对象的结构模式。用意是:将抽象化与实现化脱耦,使得二者可以独立地变化。抽象化是指对对于多个实体抽象出普遍的共性,可以把不同实体当做同样的实体对待。Java中一般接口或者抽象类来表示这种抽象实体。实现化,针对抽象化实体的具体实现。这里的脱耦是指,将强关联的继承关系变为弱关联的聚合关系。继承关系在编译器就固定了结构,不如聚合灵活。例如2.桥梁模式的结构结构

2013-08-29 17:02:57 695 1

转载 Java程序员在写SQL程序时候常犯的10个错误

Java程序员编程时需要混合面向对象思维和一般命令式编程的方法,能否完美的将两者结合起来完全得依靠编程人员的水准:技能(任何人都能容易学会命令式编程)模式(有些人用“模式-模式”,举个例子,模式可以应用到任何地方,而且都可以归为某一类模式)心境(首先,要写个好的面向对象程序是比命令式程序难的多,你得花费一些功夫)但当Java程序员写SQL语句时,一切都不一样了。SQ

2013-08-27 10:33:28 764 1

原创 Java设计模式笔记之门面模式

1.门面模式(Facade)门面模式是对象的结构模式。外部与一个子系统的通信必须通过一个统一门面(Facade)对象进行通信。门面对象通过对子系统功能的整理,给外界提供一个更高层,更简洁的接口。2.门面模式结构门面模式适合比较复杂大型的功能系统,一般描述的是子系统(功能模块)之间的关系,下面是用协作图来描述的门面模式。从上述协作图可以看出,门面中只有两种角色:门面角色(

2013-08-26 17:28:14 825

effective java 中文版 part3

effective java 中文版 带书签清晰版 03

2012-04-16

effective java 第二版 中文

effective java 第二版 中文 带书签 ,清晰版

2012-04-16

effective java 第二版 part1

effective java 第二版 中文版,带书签,很清晰

2012-04-16

iphone应用编程

iphone 应用编程指南中文版,iPhone SDK为创建iPhone的本地应用程序提供必需的工具和资源。在用户的 Home屏幕上,iPhone的本地应用程序表示为图标。它们和运行在Safari内部 的web应用程序不同,在基于iPhone OS的设备上,它们作为独立的执行程序 来运行。本地应用程序可以访问iPhone和iPod Touch的所有特性,比如加速 计、位置服务、和多点触摸接口,正是这些特性使设备变得更加有趣。本地应 用程序还可以将数据保存在本地的文件系统中,甚至可以通过定制的URL类型 来和安装在设备上的其它程序进行通讯。

2011-06-30

blackberry 高级应用开发

blackberry手机的高级应用开发指南

2011-06-30

blackberry应用开发

黑莓手机的基本应用开发指南。有兴趣的可以看看

2011-06-30

空空如也

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

TA关注的人

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