自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 Eclipse远程Debug

一、服务端设置 1、第一种方式   进入bin目录下,执行:./catalina.sh jpda start if [ "$1" = "jpda" ] ; then if [ -z "$JPDA_TRANSPORT" ]; then JPDA_TRANSPORT="dt_socket" fi if [ -z "$JPDA_ADDRESS" ]; then   # 端口

2017-09-28 09:49:21 253

原创 基于springmvc的hessian调用原理浅析

一、客户端 1、构造(初始化) 由客户端的配置文件随容器的启动而进行初始化,配置文件如下: xml version="1.0" encoding="UTF-8"?> beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

2017-09-28 09:49:16 324

原创 设计模式 - 代理模式(jdk)

定义:为另一个对象提供一个替身或占位符以控制对这个对象的访问。 一、静态代理 静态代理说白了就是把原先直接调用被代理类的方法放到代理类来调用,同时 我们可以在代理类额外的添加一些操作。 接口: package com.proxy.example; public interface Employ { void work(); } View Code 实现: packa

2017-09-28 09:49:11 202

原创 设计模式 - 模板方法模式

定义:在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。 模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。 角色:     抽象类(AbstractClass):实现了模板方法,定义了算法的骨架。     具体类(ConcreteClass):实现抽象类中的抽象方法,已完成完整的算法。   代码示例:抽象类定义了整个从做饭到吃饭最后清理的流程,子类是具体的不同的方式

2017-09-28 09:49:06 210

原创 设计模式 - 单例模式

定义:确保一个类只有一个实例,并提供一个全局访问点。 一、线程不安全的 1、饱汉式,只有在被第一次调用的时候才创建实例。 package com.singleton; public class Singleton { // 利用静态变量创建唯一实例 private static Singleton instance; // 构造器定义为私有的,防止

2017-09-28 09:49:03 170

原创 HashMap源码浅析(jdk1.8)

HashMap是以key-value键值对的形式进行存储数据的,数据结构是以数组+链表或红黑树实现。 数据结构图如下:   一、关键属性 HashMap初始化和方法使用的属性。 /** * 默认初始容量16(2的4次方) */ static final int DEFAULT_INITIAL_CAPACITY = 1 // aka 16 /**

2017-09-28 09:48:58 216

原创 LinkedList源码浅析(jdk1.8)

LinkedList由双向链表实现的集合,因此可以从头或尾部双向循环遍历。 LinkedList的操作都是对双向链表的操作,理解双向链表的数据结构就很容易理解LinkedList的实现。 双向链表由带前驱和后继的节点构成,简易如下:   如果添加一个c节点,简易步骤如下: 先创建一个新节点。然后把原先的last节点的next指向新节点,在把新节点的pre指向原先的last,最后新节点指为last

2017-09-28 09:48:53 168

原创 ArrayList源码浅析(jdk1.8)

ArrayList的实质就是动态数组。所以可以通过下标准确的找到目标元素,因此查找的效率高。但是添加或删除元素会涉及到大量元素的位置移动,所以效率低。 一、构造方法 ArrayList提供了3个构造方法 1、无参的,就是把表示集合的数组赋值为空。 public ArrayList() { this.elementData = DEFAULTCAPACITY_EMPTY_

2017-09-28 09:48:48 280

原创 设计模式 - 装饰者模式

定义:装饰者模式动态地将责任附加到对象上。若要扩展功能,装饰者提供了比继承更有弹性的替代方案。 对象:     抽象组件:定义一个抽象类或接口,来规范准备附加功能的类;     具体组件:将要被附加功能的类,实现抽象构件角色抽象类或接口;     抽象装饰者:持有对具体构件角色的引用并定义与抽象构件角色一致的接口;       具体装饰:实现抽象装饰者角色,负责对具体构件添加额外功能。   代码示

2017-09-28 09:48:43 182

原创 设计模式 - 观察者模式(JDK)

定义:观察者模式定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。 对象:    抽象主题角色:每个抽象主题角色都可以有任意数量的观察者。抽象主题提供可以增加和删除观察者角色的方法。     具体主题角色:在具体主题内部状态改变时,给所有登记过的观察者发出通知。     抽象观察者角色:为所有具体的观察者定义一个接口,在得到主题的通知时更新自己。  

2017-09-28 09:48:40 175

原创 设计模式 - 策略模式

定义:策略模式定义了算法簇,分别封装起来,让它们之间可以互相替代,此模式让算法的变化独立于使用算法的客户。 对象: 环境对象(Context):该类中实现了对抽象策略中定义的接口或者抽象类的引用。         抽象策略对象(Strategy):它可由接口或抽象类来实现。       具体策略对象(ConcreteStrategy):它封装了实现同不功能的不同算法或行为。 代码示例: 场景:我想

2017-09-28 09:48:37 220

原创 使用cxf做webservice接口调用

一、服务端 建javaweb工程,去官网下载所需的cxf接口发布的jar包,导入到工程。官网地址:http://cxf.apache.org/download.html 1、建立调用接口 package com.ymx.cxf.server; import javax.jws.WebService; @WebService public interface UserService {

2017-09-28 09:48:32 511

原创 Hessian服务端和客户端示例

一、服务端 1、创建web项目,建立客户端调用的hessian接口和实现类。 接口: package com.ymx.hessian.service; import com.ymx.hessian.service.entity.User; public interface UserService { User getUser(String name); } View

2017-09-28 09:48:27 919

原创 JPush简单Java服务端案例实现

一、激光推送准备工作 1、注册极光推送开发者账号,创建应用: 2、完成推送设置,填写应用名提交生成安装包: 3、扫码安装简单的测试apk,查看应用信息会有AppKey和Master Secret用于推送。   二、java服务端  所需jar包和详细具体集成可以查看官方文档,这里只是实现了一个简单的通知或推送消息。 import org.slf4j.Logger; import org.sl

2017-09-28 09:48:22 381

原创 java获取mp3的时长和播放mp3文件

所需包为jaudiotagger-2.2.6-SNAPSHOT.jar和jl1.0.1.jar。 import java.io.BufferedInputStream; import java.io.File; import java.io.FileInputStream; import org.jaudiotagger.audio.AudioFileIO; import org.jaudio

2017-09-28 09:48:17 1783

原创 HttpClient以json形式的参数调用http接口并对返回的json数据进行处理(可以带文件)

1、参数的url就是被调用的地址,map是你要传的参数。参数转成json我使用的是gson方式转换的。     主要使用的jar包有httpclient-4.5.3.jar、httpcore-4.4.6.jar、commons-codec-1.9.jar、gson-2.2.4.jar和commons-logging-1.2.jar。   如果发送的post请求想传送文件,需添加httpmime-4

2017-09-28 09:48:12 2838

空空如也

空空如也

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

TA关注的人

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