- 博客(27)
- 收藏
- 关注
原创 java注解的实现和工作原理
JAVA 注解的几大作用及使用方法详解注解(Annotation)1、Annotation的工作原理:JDK5.0中提供了注解的功能,允许开发者定义和使用自己的注解类型。该功能由一个定义注解类型的语法和描述一个注解声明的语法,读取注解的API,一个使用注解修饰的class文件和一个注解处理工具组成。Annotation并不直接影响代码的语义,但是他可以被看做是程序的工具或者类库。它
2014-07-27 18:51:45 4284
原创 spring的jar下载
第一种,简单粗暴直接http://repo.springsource.org/libs-release-local/org/springframework/spring/3.2.4.RELEASE/spring-framework-3.2.4.RELEASE-dist.zip直接粘到地址栏或者下载工具里,每次有更新只要改版本号就可以;第二种
2014-07-27 10:24:29 499 2
原创 JNDI各个服务器配置
jndi调用时,各种应用服务器InitialContext的写法 调用ejb时,如果客户端和ejb不在同一个jvm,就要设置InitialContext,不同的应用服务器InitialContext写法也不同.Context.INITIAL_CONTEXT_FACTORY:指定到目录服务的连接工厂Context.PROVIDER_URL:目录服务提供者URL//j
2014-07-07 19:21:11 748
原创 git服务流程
准备1.注册github账号2.下载git bash配置1.cd workspace(如果第一次建立目录请先git init 如果是下载代码则不需要,因为git clone url 后会自带.git文件)2.创建ssh key: ssh-keygen -t rsa -C "gswj0704@163.com"后会要求确认路径和输入密码,我们这使用默认的一路回车就行。
2014-07-03 15:03:03 484
转载 MD5加密使用
import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import org.apache.commons.codec.digest.DigestUtils;//开发的jar包 使用更方便 public class MD5 { /* * 1.一个运
2014-01-03 15:06:34 883
转载 编码全讲解
这是一篇程序员写给程序员的趣味读物。所谓趣味是指可以比较轻松地了解一些原来不清楚的概念,增进知识,类似于打RPG游戏的升级。整理这篇文章的动机是两个问题:问题一: 使用Windows记事本的“另存为”,可以在GBK、Unicode、Unicode big endian和UTF-8这几种编码方式间相互转换。同样是txt文件,Windows是怎样识别编码方式的呢?我很早前就发现Unicode
2014-01-01 11:24:20 766 2
转载 String.format()基本对时间和数字格式化信息
C#格式化数值结果表字符 说明 示例 输出 C货币string.Format("{0:C3}", 2)$2.000D十进制string.Format("{0:D3}", 2)002E科学计数法1.20E+0011.20E+001G常规strin
2013-12-25 16:50:05 635
转载 log4j的如何配置
Log4j支持两种配置文件格式,一种是java属性文件(键—值),一种是xml格式文件。这里仅介绍下java属性文件的配置方法。先看看个配置文件:log4j.propertieslog4j.rootCategory=debug,stdout,Rlog4j.appender.stdout=org.apache.log4j.ConsoleAppenderlog4j.appender
2013-12-25 16:46:31 534
原创 java中compareTo和compare方法之比较
java中compareTo和compare方法之比较这两个方法经常搞混淆,现对其进行总结以加深记忆。compareTo(Object o)方法是java.lang.Comparable接口中的方法,当需要对某个类的对象进行排序时,该类需要实现Comparable接口的,必须重写public int compareTo(T o)方法,比如MapReduce中Map函
2013-11-07 18:14:36 666
原创 java经典之collection
Java Collection对Dictionary,Vector,Stack,,Properties进行了统一的管理。支持类集的接口如下:CollectionListSetSortedSetComparator 定义两个对象如何比较Iterator 枚举类集中的对象ListIterator枚举类集中的对象Collection接口(省略常用的方法)boo
2013-11-06 08:42:16 517
原创 git 常用指令
有时git clone下来会出现很多branch,更麻烦的是如果主分支没代码那你就只能看到.git目录了。如下面的这个:$ git clonegit://gitorious.org/android-eeepc/mesa.git 发现本地就只有一个.git目录,那么这个时候就需要checkout了。 进入你的本地目录,如这个是mesa,利用$ git branch –r
2013-08-27 17:43:59 617
原创 collection接口之Arraylist,vector,Linkedlist
ArrayList 和Vector是采用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,都允许直接序号索引元素,但是插入数据要设计到数组元素移动等内存操作,所以索引数据快插入数据慢,Vector由于使用了synchronized方法(线程安全)所以性能上比ArrayList要差,LinkedList使用双向链表实现存储,按序号索引数据需要进行向前或向后遍历,但是插入数据时只需要
2013-08-27 15:55:23 621
原创 Java中Cloneable接口的用法
Java中Cloneable接口的用法今天编写一个用到Cloneable接口的程序时才注意到原来clone()方法提供的是浅层拷贝,而不是我先前认为的深层拷贝。class A implements Cloneable{ int a=1; ArrayList b=new ArrayList(); public A getClone(){
2013-08-22 15:44:18 1218
原创 冒泡 ,插入,折半插入,希尔,快速,简单选择等排序源码
#include using namespace std;//各种排序方法:/**冒泡排序法**///它的时间复杂度为O(n^2),虽然不及堆排序、快速排序的O(nlogn,底数为2),但是有两个优点:1.“编程复杂度”很低,很容易写出代码;2.具有稳定性,这里的稳定性是指原序列中相同元素的相对顺序仍然保持到排序后的序列,而堆排序、快速排序均不具有稳定性。void Bubble
2013-08-20 14:50:22 586
原创 23种设计模式
目录创建型1. Factory Method(工厂方法)2. Abstract Factory(抽象工厂)3. Builder(建造者)4. Prototype(原型)5. Singleton(单例)结构型6. Adapter Class/Object(适配器)7. Bridge(桥接)8. Composite(组合)9. Decorator(装饰)
2013-08-15 15:58:09 569
原创 Java中thread类与Runnable接口的区别
Java中线程的创建有两种方式:1. 通过继承Thread类,重写Thread的run()方法,将线程运行的逻辑放在其中2. 通过实现Runnable接口,实例化Thread类 在实际应用中,我们经常用到多线程,如车站的售票系统,车站的各个售票口相当于各个线程。当我们做这个系统的时候可能会想到两种方式来实现,继承Thread类或实现Runnable接口,现在看一下这两种方式实
2013-08-15 12:21:09 813
原创 数据库基本指令的概念
介绍:从功能上划分,SQL 语言可以分为DDL,DML和DCL三大类。 1. DDL(Data Definition Language) 数据定义语言,用于定义和管理 SQL 数据库中的所有对象的语言 ; CREATE---创建表 ALTER---修改表 DROP---删除表 2. DML(Data Manipulation Languag
2013-08-15 10:04:50 835
原创 java原理之JVM
Java的运行原理在Java中引入了虚拟机的概念,即在机器和编译程序之间加入了一层抽象的虚拟的机器。这台虚拟的机器在任何平台上都提供给编译程序一个的共同的接口。编译程序只需要面向虚拟机,生成虚拟机能够理解的代码,然后由解释器来将虚拟机代码转换为特定系统的机器码执行。在Java中,这种供虚拟机理解的代码叫做字节码(ByteCode)(class文件的内容),它不面向任何特定的处理器,
2013-08-15 09:46:51 533
原创 Java之hashmap原理及其遍历
【遍历方法一】[java] view plaincopyfor(Map.Entry entry : hashmap.entrySet()){ System.out.println("Key="+entry.getKey()+"---->value="+entry.getValue().toString()) }
2013-08-14 10:25:13 847
原创 如何用一个栈实现二叉树的螺旋遍历
相信大家用两个栈(两个栈可以实现一个队列的效果)来实现二叉树的螺旋遍历是一件比较容易(写起来也不是十分轻松)的活吧,但是如果用一个栈就能实现这个问题的话,看来我们得花点心思了!!(嘻嘻) 那么什么是螺旋遍历呢?---------------1-------------------------3-----------2------------------4------5--
2013-08-07 12:08:00 1089
原创 二叉树中任意两个节点间的最大距离
借着这篇文章其实我是想告诉大家求取任意两个节点之间的方法 ,当然大家知道这种方法之后,一定会懂得如何求解任意一个节点的高度的问题,而两个节点之间的最大距离就是两个节点高度之和的问题而已,具体细节请大家看看下文,但是这一篇文章中的关于求任意一点的高度思想,是解决二叉树螺旋遍历的基础,希望大家理解后可以看下小生的关于二叉树螺旋遍历的文章,大家共同进步!!! 求一个二叉树中任意两个节
2013-08-07 11:35:56 2234
原创 strcpy,strncpy,memcpy的源码分析
首先讲讲strcpy的源码,它是三者中最简单的,但是确实最为精辟的char * __cdecl strcpy(char * dst, const char * src){ char * cp = dst; while( *cp++ = *src++ ) ;
2013-08-06 17:27:20 1609
原创 判断一个链表中是否有环
如何判断一个链表中是否存在环:设置两个指针,开始都指向链表头,然后其中一个指针每次向前走一步,另一个指针每次向前走两步,如果快的遇到NULL了,证明该链表中没有环,如果有环,快的指针每次都要比慢的多走一步,最终两个指针会相遇,(注意:这里快指针不会跳过慢指针而不相遇,因为它每次都只比慢指针多走一个单位)bool judge(list *head){ if(head ==
2013-08-06 16:50:59 595
原创 二叉树的非递归遍历
二叉树的非递归遍历 二叉树是一种非常重要的数据结构,很多其它数据结构都是基于二叉树的基础演变而来的。对于二叉树,有前序、中序以及后序三种遍历方法。因为树的定义本身就是递归定义,因此采用递归的方法去实现树的三种遍历不仅容易理解而且代码很简洁。而对于树的遍历若采用非递归的方法,就要采用栈去模拟实现。在三种遍历中,前序和中序遍历的非递归算法都很容易实现,非递归后序遍历实现起来相对
2013-08-06 16:45:52 483
原创 php表单提交中sql提防注入攻击二
上一篇文章我们讲到了基本的sql注入攻击的概念问题,想必有很多人会基本了解到了我们的用户是如何做到sql注入攻击的,以及我们表单设计将会变得很复杂吗?这一篇我们将会真正了解我们前端设计人员的艰辛,仅仅是一个表格的提交,但是我们设计人员却是要付出很多辛苦的,而此篇所讲仅仅只是sql注入攻击,对于很多漏洞以及本身系统的bug所带来的危害,我们能做多少呢?这个下次再聊吧!! 上一节我们知
2013-08-06 11:43:57 754
原创 php表单提交中sql提防注入攻击一
当你看到这篇文章的时候,想必你一定在忙着如何想好你的UI界面,忙着如何才能成为一名优秀的UI设计师,其实我的想法显然与你不谋而合,我最近一直也在头痛这些,以前一直以为做前端是一件很简单的事情,现在想来是只能说是慢工出细活啊,让我们一起加油吧,亲们!! 今天我们讨论的话题是如何做一个好的表单提交,正与好多网友的博客一样,“千万不要相信你的用户,尽管他是你的上帝”,用户在提交表格的时
2013-08-02 14:37:07 1619
原创 谈谈我的看法之索引中的B树和B+树
但你被问到数据库那么强大,索引起到了功不可没的地位,它帮助我们可以快速定位了元素在数据库的位置,有的人可能不太明白,在数据库中通过索引(通俗地讲就是key)找到了相应地value,这和建个数组有什么区别,而且数组的查找的速度是0(1),其实数据库查找有多快,占用空间的大小有多大呢,数据库的的B树索引最初是用在哪里呢?我们带着这些问题功能来谈谈B树和B+树吧!首先看看下列数据库索引的基本图
2013-08-01 16:34:59 1702
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人