自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Leonのメモリ

工作记录

  • 博客(66)
  • 收藏
  • 关注

转载 Java之适配器模式(Adapter Pattern)

1.概念:将一个接口转换成客户希望的另外一个接口。(该模式使得原本不兼容的类可以一起工作)2.UML图(1)对象的Adapter模式结构图(2)类的Adapter模式结构图3.代码(1)对象适配器public interface Target{   public void R

2016-09-30 13:57:25 444

转载 Java之装饰模式(Decorator Pattern)

1. 概念动态将职责附加到对象上,若要扩展功能,装饰者提供了比继承更具弹性的代替方案。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。[由于继承的静态特质使其缺乏灵活性;且随着子类的增多、组合,会导致更多子类的膨胀。类应设计的对扩展开放,对修改关闭。装饰的意思:就是包装一下。把另的对象包装一下。]2. UML图3.代码/************业务接口

2016-09-30 11:27:31 498

转载 Spring MVC 解读——@Autowired、@Controller、@Service从原理层面来分析

Spring MVC 解读——@Autowired一、@Autowired    作为一个spring开发者对@Autowired注解必定是非常了解了, 顾名思义自动装配,应该是Spring会自动将我们标记为@Autowired的元素装配好,与其猜测不如看看它的定义:[java] view plain copy@Tar

2016-09-26 18:54:00 789

转载 常用加密算法介绍--DES3

对称算法,是对DES算法的组合,指定3个KEY,运算3次DES,加密过程如下图所示:解密正好相反,依次使用key3,key2,key1,进行Decryption,Encryption,Decrpytion可能的输出结果:=============================================Default Algorithm inf

2016-09-21 13:38:58 2171

原创 生成采用des3算法保护的私钥

1.产生证书的工具:openssl,商户可以根据自己的情况选择使用linux版本或者windows版本,如果使用linux版本的话,可以不需要安装openssl,因为大多数安装成功的linux操作系统中都已经默认安装了openssl。如果商户要使用openssl的windows版本的话,请到openssl的官方推荐网站:http://slproweb.com/products/Win32Ope

2016-09-21 13:35:33 1253

转载 TreeMap Comparator 排序

Java中map的种类很多,java.util包中按照键值排序的容器为TreeMap。TreeMap中默认的排序为升序,如果要改变其排序可以自己写一个Comparator,就暂且把Comparator叫做比较子。下面的例子把原来降序的容器改为降序--比较子定义class descendComparator implements Comparator{ public

2016-09-20 11:17:04 541

转载 浅谈Java中的hashcode方法

浅谈Java中的hashcode方法  哈希表这个数据结构想必大多数人都不陌生,而且在很多地方都会利用到hash表来提高查找效率。在Java的Object类中有一个方法:1public native int hashCode();  根据这个方法的声明可知,该方法返回一个int类型的数值,并且是

2016-09-19 17:00:20 285

原创 生成的Excel出力到指定文件夹生成Zip文件再打包这些文件到页面下载

@At@Ok("raw:stream")@Permit(url = "/web/monitor/reportBillOrder/index")public void exportExcel(@Param("q") String q, HttpServletResponse response) throws UnsupportedEncodingException {QueryBil

2016-09-19 15:12:49 1156

原创 Java中删除文件、删除目录及目录下所有文件

功能:删除某个目录及目录下的所有子目录和文件知识点:File.delete()用于删除“某个文件或者空目录”!所以要删除某个目录及其中的所有文件和子目录,要进行递归删除,具体代码示例如下:import java.io.File;public class DeleteDirectory { /** * 删除空目录 * @param dir 将要删除

2016-09-19 15:01:46 740

转载 使用Spring的注解方式实现AOP

spring对AOP的实现提供了很好的支持。下面我们就使用Spring的注解来完成AOP做一个例子。首先,为了使用Spring的AOP注解功能,必须导入如下几个包。aspectjrt.jar,aspectjweaver.jar,cglib-nodep.jar.然后我们写一个接口[java] view plain copy print?

2016-09-18 18:39:47 299

原创 Eclipse远程debug

1.在catalina.sh文件中加入如下配置:[javascript] view plain copyCATALINA_OPTS="-Xdebug  -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n"(需要在同一行)  2.启动tomcat 后台用 jps

2016-09-18 15:46:58 321

转载 java获取当前路径的几种方法

1、利用System.getProperty()函数获取当前路径: System.out.println(System.getProperty("user.dir"));//user.dir指定了当前的路径 2、使用File提供的函数获取当前路径: File directory = new File("");//设定为当前文件夹 try{     System.out.pr

2016-09-13 16:01:37 668

原创 JavaBean,POJO,EJB区别

JavaBean 是一种JAVA语言写成的可重用组件。它的方法命名,构造及行为必须符合特定的约定:1.这个类必须有一个公共的缺省构造函数。2.这个类的属性使用getter和setter来访问,其他方法遵从标准命名规范。3.这个类应是可序列化的。POJO全称是Plain Ordinary Java Object / Pure Old Java ObjectPOJO

2016-09-08 10:37:28 336

转载 单例模式_java程序性能优化

单例模式是一种对象创建模式,用于生产一个对象的具体实例,他保证系统中一个类只产生一个实例,单例模式的好处:1、对于频繁使用的对象,可以省略对象创建的时间2、由于new操作的次数减少,因而对系统内存的使用频率也会降低,减轻GC压力,缩短GC停顿时间单例模式主要针对于系统的关键组件和被频繁使用的对象,使用它可以有效改善系统的性能。单例类必须要有:1、private访问级

2016-09-07 13:27:13 531

转载 Java 7 Fork/Join 并行计算框架概览

应用程序并行计算遇到的问题    当硬件处理能力不能按摩尔定律垂直发展的时候,选择了水平发展。多核处理器已广泛应用,未来处理器的核心数将进一步发布,甚至达到上百上千的数量。而现在很多的应用程序在运行在多核心的处理器上并不能得到很好的性能提升,因为应用程序的并发处理能力不强,不能够合理有效地的利用计算资源。线性的计算只能利用n分之一的计算支援。    要提高应用程序在多核处理器上的执

2016-09-02 17:28:58 627

转载 java.lang.OutOfMemoryError:GC overhead limit exceeded填坑心得

我遇到这样的问题,本地部署时抛出异常java.lang.OutOfMemoryError:GC overhead limit exceeded导致服务起不来,查看日志发现加载了太多资源到内存,本地的性能也不好,gc时间消耗的较多。解决这种问题两种方法是,增加参数,-XX:-UseGCOverheadLimit,关闭这个特性,同时增加heap大小,-Xmx1024m。坑填了,but why?

2016-09-02 14:19:13 473

转载 java 合并两个byte数组

//java 合并两个byte数组      public static byte[] byteMerger(byte[] byte_1, byte[] byte_2){          byte[] byte_3 = new byte[byte_1.length+byte_2.length];          System.arraycopy(byte_1, 0, byte_3,

2016-08-31 17:30:31 3442

原创 页面下载Excel的Zip文件

页面下载Excel的Zip文件://获取生成好的Excel文件List wbLst = ×××××××;// 设定responseHeaderresponse.setHeader("content-disposition", "attachment;filename=" + URLEncoder.encode(DateUtils.toDate(new Date(), "

2016-08-31 15:37:48 534

转载 JAVA多线程实现的三种方式

Java多线程实现方式主要有三种:继承Thread类、实现Runnable接口、使用ExecutorService、Callable、Future实现有返回结果的多线程。其中前两种方式线程执行完后都没有返回值,只有最后一种是带返回值的。1、继承Thread类实现多线程继承Thread类的方法尽管被我列为一种多线程实现方式,但Thread本质上也是实现了Runnable接口的

2016-08-30 17:58:34 258

转载 Cross-site scripting(XSS)

1.1.1 摘要      在本系列的第一篇博文中,我向大家介绍了SQL Injection常用的攻击和防范的技术。这个漏洞可以导致一些非常严重的后果,但幸运的是我们可以通过限制用户数据库的权限、使用参数化的SQL语句或使用ORM等技术来防范SQL Injection的发生,接来了要向大家介绍Cross-site scripting(XSS)。      定义:Cross-si

2016-08-29 15:41:36 557

转载 SQL Injection

1.1.1 摘要      日前,国内最大的程序员社区CSDN网站的用户数据库被黑客公开发布,600万用户的登录名及密码被公开泄露,随后又有多家网站的用户密码被流传于网络,连日来引发众多网民对自己账号、密码等互联网信息被盗取的普遍担忧。     网络安全成为了现在互联网的焦点,这也恰恰触动了每一位用户的神经,由于设计的漏洞导致了不可收拾的恶果,验证了一句话“出来混的,迟早是要还的”

2016-08-29 14:21:06 455

转载 redis -Spring与Jedis的集成

首先不得不服spring这个宇宙无敌的开源框架,几乎整合了所有流行的其它框架,http://projects.spring.io/spring-data/ 从这上面看,当下流行的redis、solr、Hadoop、mongoDB、couchBase... 全都收入囊中。对于redis整合而言,主要用到的是spring-data-redis 原文地址:http://www.cnblogs

2016-08-29 12:27:34 804

转载 redis3.0.0 集群安装详细步骤

Redis集群部署文档(centos6系统)(要让集群正常工作至少需要3个主节点,在这里我们要创建6个redis节点,其中三个为主节点,三个为从节点,对应的redis节点的ip和端口对应关系如下)127.0.0.1:7000127.0.0.1:7001127.0.0.1:7002127.0.0.1:7003127.0.0.1:7004127.0.

2016-08-29 12:24:08 345

转载 redis -master/slave(主/从模式)

类似MySQL的master-slave模式一样,redis的master-slave可以提升系统的可用性,master节点写入cache后,会自动同步到slave上。环境:master node: 10.6.144.155:7030slave node: 10.6.144.156:7031 一、配置仅需要在slave node上修改配置:找

2016-08-29 11:33:43 5334

转载 redis client端示例代码

redis提供了几乎所有主流语言的client,Java中主要使用二种:Jedis与Redisson一、Jedis的使用1 dependency>2 groupId>redis.clientsgroupId>3 artifactId>jedisartifactId>4 vers

2016-08-29 11:19:25 939

转载 jedis笔记

最近项目中用到比较多redis,感觉之前对它一直局限于get/set数据的层面。其实作为一个强大的NoSql数据库产品,如果好好利用它,会带来很多意想不到的效果。(因为我搞java,所以就从jedis的角度来补充一点东西吧。PS:不一定全,只是个人理解,不喜勿喷) 1、关于JedisPool.returnSource(Jedis jeids) 这个方法是从redis的池中释放一个r

2016-08-29 11:03:35 499

原创 maven-compiler-plugin 指定工程编译JDK

org.apache.maven.plugins           maven-compiler-plugin           3.1                          1.7                1.7

2016-08-26 20:09:58 635

转载 图解HTTPS协议加密解密全过程

我们都知道HTTPS能够加密信息,以免敏感信息被第三方获取。所以很多银行网站或电子邮箱等等安全级别较高的服务都会采用HTTPS协议HTTPS简介  HTTPS其实是有两部分组成:HTTP + SSL / TLS,也就是在HTTP上又加了一层处理加密信息的模块。服务端和客户端的信息传输都会通过TLS进行加密,所以传输的数据都是加密后的数据。具体是如何进行加密,解密,验证的,且看下

2016-08-26 19:51:23 705

原创 maven操作手顺

maven操作手顺1.下载maven,解压2.配置MAVEN_HOME3.修改setting.xml3.1 配置本地仓库: 3.2 配置中央仓库(可不配置用默认)settings>    ...    mirrors>      mirror>        id>maven.net.cnid>        name>one of th

2016-08-26 19:32:08 605

转载 Java ClassLoader 原理详细分析

一、什么是ClassLoader?大家都知道,当我们写好一个Java程序之后,不是管是CS还是BS应用,都是由若干个.class文件组织而成的一个完整的Java应用程序,当程序在运行时,即会调用该程序的一个入口函数来调用系统的相关功能,而这些功能都被封装在不同的class文件当中,所以经常要从这个class文件中要调用另外一个class文件中的方法,如果另外一个文件不存在的,则会引发系统异

2016-08-26 14:30:04 443

转载 JVM内存溢出示例

1、Java 堆溢出下面的程中我们限制Java 堆的大小为20MB,不可扩展(将堆的最小值-Xms 参数与最大值-Xmx 参数设置为一样即可避免堆自动扩展),通过参数-XX:+HeapDumpOnOutOfMemoryError 可以让虚拟机在出现内存溢出异常时Dump 出当前的内存堆转储快照以便事后进行分析。参数设置如下

2016-08-26 13:31:21 1187

转载 JVM内存模型及垃圾回收算法

JVM内存模型总体架构图程序计数器多线程时,当线程数超过CPU数量或CPU内核数量,线程之间就要根据时间片轮询抢夺CPU时间资源。因此每个线程有要有一个独立的程序计数器,记录下一条要运行的指令。线程私有的内存区域。如果执行的是JAVA方法,计数器记录正在执行的java字节码地址,如果执行的是native方法,则计数器为空。虚拟机栈线程私有的,与线程在同一时间创建。管理JAV

2016-08-26 12:59:53 691

转载 JConsole jvm分析工具

一、JConsole是什么    从Java 5开始 引入了 JConsole。JConsole 是一个内置 Java 性能分析器,可以从命令行或在 GUI shell 中运行。您可以轻松地使用 JConsole(或者,它更高端的 “近亲” VisualVM )来监控 Java 应用程序性能和跟踪 Java 中的代码。二、如何启动JConsole如果是从命令行启动,使 JD

2016-08-25 18:27:32 5240

转载 Https单向认证和双向认证

HTTPS其实是有两部分组成:HTTP + SSL / TLS,也就是在HTTP上又加了一层处理加密信息的模块。服务端和客户端的信息传输都会通过TLS进行加密,所以传输的数据都是加密后的数据1. 客户端发起HTTPS请求这个没什么好说的,就是用户在浏览器里输入一个https网址,然后连接到server的443端口。2. 服务端的配置

2016-08-25 17:28:17 379

转载 java AtomicLong原理解析

java AtomicLong原理解析摘自http://www.tuicool.com/articles/zuui6z乐观锁与悲观锁独占锁是一种悲观锁,synchronized就是一种独占锁,它假设最坏的情况,并且只有在确保其它线程不会造成干扰的情况下执行,会导致其它所有需要锁的线程挂起,等待持有锁的线程释放锁。而另一个更加有效的锁就是乐观锁。所谓乐观锁就是

2016-08-24 20:33:56 774

转载 synchronized 对象锁

当没有明确的对象作为锁,只是想让一段代码同步时,可以创建一个特殊的instance变量(它得是一个对象)来充当锁:class Foo implements Runnable{        private byte[] lock = new byte[0]; // 特殊的instance变量        Public void methodA()       

2016-08-24 18:52:57 323

原创 String.format()用法

/*String.format()用法 1、转换符%s: 字符串类型,如:"ljq"%b: 布尔类型,如:true%d: 整数类型(十进制),如:99%f: 浮点类型,如:99.99%%: 百分比类型,如:%%n: 换行符 */@Testpublic void test1(){ String str=null;    str=String.format("Hi, %s"

2016-08-18 19:19:01 281

转载 java如何获取本机IP

public static void main(String[] args) {        // TODO Auto-generated method stub        InetAddress ia=null;        try {            ia=ia.getLocalHost();                    

2016-08-18 18:49:23 330

转载 网页颜色搭配表及颜色搭配技巧

网页颜色搭配表及颜色搭配技巧颜色搭配常识:1.网页中色彩的表达使用三种颜色,及红(R)、绿(G)、蓝(B),及通常所说的RGB色彩,它包含了人类所感知的所有颜色,网页中表达颜色如下(红色为例)RGB格式:红色是(255,0,0) 或十六进制hex格式为(FF0000)。2.将色彩按"红->黄->绿->蓝->红"依次过度渐变可得到12色环:红,橙红,橙,橙黄,黄,黄绿,绿,蓝绿,蓝,

2016-08-16 19:36:53 2602 1

转载 日本传统色彩大全

古代紫#895b8a茄子紺#824880二藍#915c8b京紫#9d5b8b蒲葡#7a4171若紫#bc64a4紅紫#b44c97梅紫#aa4c8f菖蒲色#cc7eb1紅藤色#cca6bf浅紫#c4a3bf紫水晶#e7e7eb薄梅鼠#dcd6d9暁鼠#d3cfd9牡丹鼠#d3ccd6霞色#c8c2c6藤鼠#a6a5c4半色#a69

2016-08-16 19:31:59 94069 1

空空如也

空空如也

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

TA关注的人

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