- 博客(195)
- 资源 (4)
- 收藏
- 关注
原创 oracle10g完全缷载略记
软件环境: 1、Windows7 + Oracle 10g 2、Oracle安装路径为:d:/Oracle实现方法:1、开始->设置->控制面板->管理工具->服务停止所有Oracle服务; 运行--services.msc 2、开始->程序->Oracle – OraDb10g_home1>Oracle Installation Products-> Universal ...
2016-07-09 15:14:29
187
原创 MySQL zip版的简单安装方式
Windows下MySQL zip版的简单安装1、下载MySQL-5.6.31-win32.zip的版本。2、解压到任意路径,比如"D:\Programm Files\"。3、进入MySQL路径,复制my-default.ini为my.ini,在[mysqld]部分添加basedir = "D:/Program Files/Mysql-5.5.10-win32"data...
2016-06-25 17:56:32
530
原创 关系型数据库三范式解释
数据库 三范式最简单最易记的解释,整理一下方便大家记忆。书上讲了好多, 归结起来3句话: 1NF:字段不可分; 2NF:有主键,非主键字段依赖主键; 3NF:非主键字段不能相互依赖; 解释: 1NF:原子性 字段不可再分,否则就不是关系数据库; 2NF:唯一性 一个表只说明一个事物; 3NF:每列都与主键有直接关系,不存在传递依赖; 不符合第一范式的...
2016-04-07 11:54:00
330
原创 java验证字符串中是否包含数字,对数字的操作
在javascript中有一个方法isDigit()使用来判断一个字符串是否都是数字,在java的字符串处理方法中没有这样的方法,觉得常常需要用到,于是上网搜了一下,整理出了两个用正则表达式匹配的判断方法,如下; [code="java"]// 判断一个字符串是否都为数字 public boolean isDigit(String strNum) { return st...
2016-03-15 11:01:33
987
原创 jdk7 Collections.sort()方法报非法参数异常
JDK7的Comparison method violates its general contract异常前一阵遇到了一个使用Collections.sort()时报异常的问题,跟小伙伴@zhuidawugui 一起排查了一下,发现问题的原因是JDK7的排序实现改为了TimSort,之后我们又进一步研究了一下这个神奇的算法。2.背景先说一下为什么要研究这个异常,前几天线上...
2016-03-03 18:57:48
566
原创 Maven 中央仓库地址和lastUpdate文件删除
Maven 中央仓库地址:1. http://mvnrepository.com/ (本人推荐仓库)2. http://www.sonatype.org/nexus/3. http://repo1.maven.org/maven2引自:http://blog.csdn.net/mynameissls/article/details/21223453方法功能:删除Mave...
2016-03-01 13:46:15
647
原创 log4j.properties配置详解
Log4J的配置文件(Configuration File)就是用来设置记录器的级别、存放器和布局的,它可接key=value格式的设置或xml格式的设置信息。通过配置,可以创建出Log4J的运行环境。1. 配置文件Log4J配置文件的基本格式如下:#[code="java"]配置根Loggerlog4j.rootLogger = [ level ] , app...
2016-01-18 16:50:25
229
原创 Java 日期时间 Date类型,long类型,String类型表现形式的转换
Java 日期时间 Date类型,long类型,String类型表现形式的转换1、java.util.Date类型转换成long类型[code="java"]java.util.Date dt = new Date();System.out.println(dt.toString()); //java.util.Date的含义long lSysTime1 = dt.getTim...
2015-12-24 17:35:58
266
原创 maven install报错
今天遇到一问题,以前做的一项目,以前直接maven install没问题,今天一直报如下错误;而更为奇怪的是同样的项目拷贝到别的同事那里没有这个问题。 **显示详细的报错信息:run as--->maven build...-->clean install -X 进入到调试模式错误如下:[INFO] BUILD FAILURE[INFO] ---------------------...
2015-12-08 22:00:01
1254
原创 linux环境变量
环境变量,或者称为全局变量,存在与所有的shell 中,在你登陆系统的时候就已经有了相应的系统定义的环境变量了。Linux 的环境变量具有继承性,即子shell 会继承父shell 的环境变量。本地变量,当前shell 中的变量,很显然本地变量中肯定包含环境变量。Linux 的本地变量的非环境变量不具备继承性。Linux 中环境变量的文件 当你进入系统的时候,linux 就会...
2015-11-25 17:22:42
119
原创 Java多线程-工具篇-BlockingQueue
Java多线程-工具篇-BlockingQueue前言: 在新增的Concurrent包中,BlockingQueue很好的解决了多线程中,如何高效安全“传输”数据的问题。通过这些高效并且线程安全的队列类,为我们快速搭建高质量的多线程程序带来极大的便利。本文详细介绍了BlockingQueue家庭中的所有成员,包括他们各自的功能以及常见使用场景。认识BlockingQueue阻塞队列,...
2015-11-24 16:13:49
112
原创 Java 实例 - 队列(Queue)入门用法
队列是一种特殊的线性表,它只允许在表的前端进行删除操作,而在表的后端进行插入操作。LinkedList类实现了Queue接口,因此我们可以把LinkedList当成Queue来用。以下实例演示了队列(Queue)的用法:队列是一种特殊的线性表,它只允许在表的前端进行删除操作,而在表的后端进行插入操作。LinkedList类实现了Queue接口,因此我们可以把LinkedList...
2015-11-23 17:27:51
453
原创 vmware里的vmnet1 和vmnet8区别
虚拟机里的vmnet1 和vmnet8 vmnet1是host-only,也就是说,选择用vmnet1的话就相当于VMware给你提供了一个虚拟交换机,仅将虚拟机和真实系统连上了,虚拟机可以与真实系统相互共享文件,但是虚拟机无法访问外部互联网,而vmnet8是NAT,就是网络地址转换,相当于给你一个虚拟交换机,将虚拟机和真实系统连上去了,同时这台虚拟交换机又和外部互联网相连,这...
2015-11-17 16:10:08
858
原创 Java中序列化的serialVersionUID作用
Java序列化是将一个对象编码成一个字节流,反序列化将字节流编码转换成一个对象。 序列化是Java中实现持久化存储的一种方法;为数据传输提供了线路级对象表示法。Java的序列化机制是通过在运行时判断类的serialVersionUID来验证版本一致性的。在进行反序列化时,JVM会把传来的字节流中的serialVersionUID与本地相应实体(类)的serialVersionUID进行比较...
2015-11-13 14:13:35
126
原创 java的序列化和反序列化
Java基础学习总结——Java对象的序列化和反序列化一、序列化和反序列化的概念 把对象转换为字节序列的过程称为对象的序列化。 把字节序列恢复为对象的过程称为对象的反序列化。 对象的序列化主要有两种用途: 1) 把对象的字节序列永久地保存到硬盘上,通常存放在一个文件中; 2) 在网络上传送对象的字节序列。 在很多应用中,需要对某些对象进行序列化,...
2015-10-27 19:48:57
104
原创 Hadoop2.5.2完全分布式集群安装
《Hadoop2.5.2集群安装》 1、环境介绍操作系统:CentOS X64 6.5物理机器:192.168.170.130(node1)、192.168.170.131(node2)、192.168.170.132(node3)JDK版本:JDK7.XHadoop版本:Hadoop2.5.22、修改主机名称和host名称通过命令“hostname”查看当前...
2015-08-21 21:42:15
327
原创 crontab 执行脚本***.sh 方法
编写linux脚本文件 如 ***.sh程式必须以下面的行开始(必须方在文档的第一行):#!/bin/sh符号#!用来告诉系统他后面的参数是用来执行该文档的程式。在这个例子中我们使用/bin/sh来执行程式。当编辑好脚本时,假如要执行该脚本,还必须使其可执行。要使脚本可执行:crontab执行sh文件无效 首先命令行执行:/opt/work/tqueue/delold...
2015-08-19 19:14:33
4592
原创 java中volatile关键字的含义
java中volatile关键字的含义在java线程并发处理中,有一个关键字volatile的使用目前存在很大的混淆,以为使用这个关键字,在进行多线程并发处理的时候就可以万事大吉。Java语言是支持多线程的,为了解决线程并发的问题,在语言内部引入了 同步块 和 volatile 关键字机制。synchronized 同步块大家都比较熟悉,通过 synchronized 关键...
2015-08-12 20:10:48
116
原创 Java读写文件中文乱码问题
问题:在用Java程序进行读写含中文的txt文件时,经常会出现读出或写入的内容会出现乱码。原因其实很简单,就是系统的编码和程序的编码采用了不同的编码格式。通常,假如自己不修改的话,windows自身采用的编码格式是gbk(而gbk和gb2312基本上是一样的编码方式),而IDE中Encode不修改的话,默认是utf-8的编码,这就是为什么会出现乱码的原因。当在OS下手工创建并写入的txt文件(gb...
2015-07-20 17:49:54
268
原创 GZIP、LZO、Zippy/Snappy压缩算法应用场景小结
GZIP、LZO、Zippy/Snappy是常用的几种压缩算法,各自有其特点,因此适用的应用场景也不尽相同。这里结合相关工程实践的情况,做一次小结。压缩算法的比较以下是Google几年前发布的一组测试数据(数据有些老了,有人近期做过测试的话希望能共享出来):Algorithm % remaining Encoding DecodingGZIP 13.4% ...
2015-07-17 15:31:02
348
原创 String类中split方法的使用
String类中split方法的使用split 方法:将一个字符串分割为子字符串,然后将结果作为字符串数组返回。stringObj.split([separator],[limit])参数:stringObj 必选项。要被分解的 String 对象或文字。该对象不会被 split 方法修改。separator 可选项。字符串或 正则表达式 对象,它标识了分隔字符串时使用的是一个...
2015-07-02 14:39:48
252
原创 eclipse svn过滤要提交或更新的文件
eclipse svn过滤要提交或更新的文件 svn客户端过滤文件与此操作类似。 将maven项目提交到svn时,应该避免将target目录及eclipse配置文件 (.project,.classpath,.settings)提交,因为这些文件都是可以从源代码和pom文件重新生成的,没有必要再进行版本控制, 如果提交到svn中反而容易引起冲突和不便。 Window...
2015-06-11 15:54:54
262
原创 Maven项目无src/main/java源文件或无法创建此源文件
在项目上右键选择properties,然后点击java build path,在Librarys下,编辑JRE System Library,选择 workspace default jre 即可。
2015-06-11 11:03:14
107
原创 maven web项目显示红叉叉
1.)新建 maven web 项目中(代码没问题,但Java resources总会显示红色的叉叉);pom.xml第一行也显示红色的叉解决方法:Description Resource Path Location Type ...project facets version…project 编译问题 1、properties->project Facets-&g...
2015-06-04 13:54:49
534
原创 linux中 jps命令使用
jps(Java Virtual Machine Process Status Tool)是JDK 1.5提供的一个显示当前所有java进程pid的命令,简单实用,非常适合在linux/unix平台上简单察看当前java进程的一些简单情况。 jps [ options ] [ hostid ] 选项 -q 仅输出VM标识符,不包括class name,jar name,argum...
2015-05-20 09:44:24
1881
原创 linux下cat命令详解
简略版:cat主要有三大功能:1.一次显示整个文件。$ cat filename2.从键盘创建一个文件。$ cat > filename 只能创建新文件,不能编辑已有文件.3.将几个文件合并为一个文件: $cat file1 file2 > file参数:-n 或 --number 由 1 开始对所有输出的行数编号-b 或 --number-nonblank 和 -n...
2015-05-20 09:38:13
133
原创 基于 Hive 的文件格式:RCFile 简介及其应用
Hadoop 作为MR 的开源实现,一直以动态运行解析文件格式并获得比MPP数据库快上几倍的装载速度为优势。不过,MPP数据库社区也一直批评Hadoop由于文件格式并非为特定目的而建,因此序列化和反序列化的成本过高。1、hadoop 文件格 式简介目前 hadoop 中流行的文件格式有如下几种:(1 ) Seque nceFileSequenceFile是Hadoop API ...
2015-05-06 13:51:01
193
原创 linux cp命令
cp 命令 cp命令用来复制文件或者目录,是Linux系统中最常用的命令之一。一般情况下,shell会设置一个别名,在命令行下复制文件时,如果目标文件已经存在,就会询问是否覆盖,不管你是否使用-i参数。但是如果是在shell脚本中执行cp时,没有-i参数时不会询问是否覆盖。这说明命令行和shell脚本的执行方式有些不同。 1.命令格式:用法: cp [选项]......
2015-05-06 12:05:24
541
原创 Linux中 ll 和 ls 区别
ll和ls是我们在linux中经常使用的两个命令,这两个是有区别的,其中ll是CentOS等Linux默认支持,在debian中默认是不支持的别名,而ls命令则在大部分linux发行版中都支持,下面就这两个命令的区别详细说下。ll 列出来的结果详细,有时间,是否可读写等信息 ,象windows里的详细信息ls 只列出文件名或目录名 就象windows里的列表ll ...
2015-05-05 09:43:06
4149
原创 基于hive的日志数据统计实战
基于 hive 的日志数据统计实战一、 hive 简介 hive 是一个基于 hadoop 的开源数据仓库工具,用于存储和处理海量结构化数据。 它把海量数据存储于 hadoop 文件系统,而不是数据库,但提供了一套类数据库的数据存储和处理机制,并采用 HQL (类 SQL )语言对这些数据进行自动化管理和处理。我们可以把 hive 中海量结构化数据...
2015-05-04 13:38:47
148
原创 PreparedStatement防止SQL注入
一条效率差的sql语句,足以毁掉整个应用.Statement是PreparedStatement的父接口,不进行预编译操作,减少了进行预编译的开销.单次运行PreparedStatement要比Statement要慢一些. PreparedStatement可以实现Statement的所有功能,但是之所以叫它预编译指令,是因为在创建它的一个对象时可以给定具有一定格式的SQL字符串,然后用它的...
2015-04-11 16:27:55
176
原创 Redis与Memcached的区别
如果简单地比较Redis与Memcached的区别,大多数都会得到以下观点:1 Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,hash等数据结构的存储。2 Redis支持数据的备份,即master-slave模式的数据备份。3 Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。在Redis中,并不是所有的数据都一...
2015-04-11 15:20:14
79
原创 Hibernate一级缓存详解
1.Session 级别的缓存,它同session邦定。它的生命周期和session相同。Session消毁,它也同时消毁;管理一级缓存,一级缓存无法取消,用两个方法管理,clear(),evict()2.两个session 不能共享一级缓存,因它会伴随session的生命周期的创建和消毁;3.Session缓存是实体级别的缓存,就是只有在查询对象级别的时候才使用,如果使用HQL和SQL是...
2015-04-11 11:58:46
88
原创 JAVA多线程和并发基础
JAVA多线程和并发基础面试问答原文链接 译文连接 作者:Pankaj 译者:郑旭东 校对:方腾飞 多线程和并发问题是Java技术面试中面试官比较喜欢问的问题之一。在这里,从面试的角度列出了大部分重要的问题,但是你仍然应该牢固的掌握Java多线程基础知识来对应日后碰到的问题。(校对注:非常赞同这个观点) Java多线程面试问题1. 进程和线程之间有什么不同? ...
2015-04-11 11:58:30
105
原创 Session的生命周期
我们已经知道,Session是在用户第一次访问网站的时候创建的,那么Session是什么时候销毁的呢? 其实,Session使用一种平滑超时的技术来控制何时销毁Session。默认情况下,Session的超时时间(Timeout)是20分钟,即用户保持连续20分钟不访问网站,则Session被收回。如果在这20分钟内用户又访问了一次页面,那么20分钟就重新计时了。也就是...
2015-04-11 11:58:11
90
原创 Java堆内存Heap与非堆内存Non-Heap
堆(Heap)和非堆(Non-heap)内存 按照官方的说法:“Java 虚拟机具有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从此处分配。堆是在 Java 虚拟机启动时创建的。”“在JVM中堆之外的内存称为非堆内存(Non-heap memory)”。可以看出JVM主要管理两种类型的内存:堆和非堆。简单来说堆就是Java代码可及的内存,是留给开发人员使用的;非堆就是JVM留给 ...
2015-04-08 22:19:51
151
原创 JVM内存模型
/*** 转载请注明作者longdick http://longdick.iteye.com**/Java 的内存模型由3个代组成,各个代的默认排列有如下图(适用JDK1.4.* 到 JDK6): Java 的内存模型分为Young(年轻代)Tenured(终身代)Perm(永久代)有些旧版本也叫作NewOldPerm叫法不同,表达的意思却是基本相同。注意Young(年轻代)还可以...
2015-04-08 22:07:11
90
原创 java类加载机制
研究Java类加载机制必要性:(1)有助于理解JVM执行过程,并指导开发者采用更有效的措施配合程序执行;(2)让程序能动态的控制类加载,实现热部署,提高程序的灵活性和适应性。类加载过程:1、寻找jre目录,寻找jvm.dll,并初始化JVM;2、产生一个Bootstrap Loader(启动类加载器);3、Bootstrap Loader自动加载Extended Loader...
2015-04-08 21:42:07
172
原创 classloader加载class的流程及自定义ClassLoader
/*** 转载请注明作者longdick http://longdick.iteye.com**/java应用环境中不同的class分别由不同的ClassLoader负责加载。一个jvm中默认的classloader有Bootstrap ClassLoader、Extension ClassLoader、App ClassLoader,分别各司其职:Bootstrap ClassLoad...
2015-04-08 21:33:32
125
原创 Java中equals()与hashCode()方法详解
一.equals()方法详解 equals()方法在object类中定义如下: [code="java"]public boolean equals(Object obj) { return (this == obj); } [/code] 很明显是对两个对象的地址值进行的比较(即比较引用是否相同)。但是我们知道,String 、Math、Integ...
2015-04-08 16:19:13
126
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人