自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

嘛也不会

嘛也不会

  • 博客(51)
  • 资源 (4)
  • 收藏
  • 关注

原创 06、消费端

@DubboReference private DemoService demoService; @Override public String sayHello(String name) { return demoService.sayHello(name); }上面获取@DubboReference 实际获取的是 InvokerInvocationHandler 代理对象@Override public Object invoke...

2020-07-10 19:06:36 296

原创 04、Registry

ListenerRegistryWrapper@Override public void register(URL url) { try { registry.register(url); } finally { if (CollectionUtils.isNotEmpty(listeners)) { RuntimeException exception = null; .

2020-07-10 15:56:14 186

原创 05、Protocol 通讯协议

2020-07-10 15:42:35 329

原创 03、ServiceConfig

重点代码protected synchronized void doExport()package org.apache.dubbo.config;public class ServiceConfig<T> extends ServiceConfigBase<T> { public static final Logger logger = LoggerFactory.getLogger(ServiceConfig.class); /** * A

2020-07-10 15:30:03 391

原创 02、DubboBootstrap

public static DubboBootstrap getInstance() { //双重检查 if (instance == null) { synchronized (DubboBootstrap.class) { if (instance == null) { instance = new DubboBootstrap(); }

2020-07-10 15:18:00 321

原创 01、DUBBO注解式启动

自行下载dubbo源码 :git clone https://github.com/apache/dubbo.git 2.7.8@Configuration @EnableDubbo(scanBasePackages = "org.apache.dubbo.demo.provider") //@1 @PropertySource("classpath:/spring/dubbo-provider.properties") static class Provide.

2020-07-10 14:44:58 1033

转载 java synchronized详解

Java语言的关键字,当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码。      一、当两个并发线程访问同一个对象object中的这个synchronized(this)同步代码块时,一个时间内只能有一个线程得到执行。另一个线程必须等待当前线程执行完这个代码块以后才能执行该代码块。     二、然而,当一个线程访问object的一个synchron

2013-08-06 22:38:02 528

转载 js中获取 <%=request.getContextPath()%>

在jsp中获取context path或者basePath 是很容易的。在javascript中也可以获取,并且有的时候也很有必要。    String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.get

2013-08-02 15:18:34 2264

转载 深入研究java.lang.ThreadLocal类

深入研究java.lang.ThreadLocal类  一、概述 ThreadLocal是什么呢?其实ThreadLocal并非是一个线程的本地实现版本,它并不是一个Thread,而是threadlocalvariable(线程局部变量)。也许把它命名为ThreadLocalVar更加合适。线程局部变量(ThreadLocal)其实的功用非常简单,就是为每一个使用该变量的线程都

2013-07-29 20:56:10 451

转载 JAVA深复制(深克隆)与浅复制(浅克隆)

1.浅复制与深复制概念⑴浅复制(浅克隆)被复制对象的所有变量都含有与原来的对象相同的值,而所有的对其他对象的引用仍然指向原来的对象。换言之,浅复制仅仅复制所考虑的对象,而不复制它所引用的对象。⑵深复制(深克隆)被复制对象的所有变量都含有与原来的对象相同的值,除去那些引用其他对象的变量。那些引用其他对象的变量将指向被复制过的新对象,而不再是原有的那些被引用的对象。换言之,深复

2013-07-25 21:14:56 445

转载 MyEclipse9下Maven开发Web工程的配置教程

1、打开myeclipse 选择File->new -> Project...->Maven Project 在next后如果你想改变默认的工程位置 那你能在 use default workspace location 的 Browswe了选择一个 点 next 在这一步里 你一定要选择 maven-archetype-webapp 点 next 填入自己的Group I

2013-07-24 20:57:35 517

转载 servlet 文件下载

package com.hkrt.demo;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;

2013-07-15 18:19:04 471

转载 c3p0配置详解

3  30  1000  false   属性preferredTestQuery将被忽略。你不能在这张Test表上进行任何操作,它将只供c3p0测试   使用。Default: null--> Test   保留,并在下次调用getConnection()的时候继续尝试获取连接。如果设为true,那么在尝试   获取连接失败

2013-07-15 18:12:14 368

原创 自定义EL表达式

1、首先编写EL处理类 预定义为表达式的方法必须为 公共静态 package com.hkrt.demo;public class Util { public static int length(){ return 100; }}2、定义util.tld            /WEB-INF/util.tld<taglib version="2.1"

2013-07-15 17:51:19 569

转载 dbcp的基本配置及相关问题总结

1. 引入dbcp (选择1.4)Java代码       com.alibaba.external      jakarta.commons.dbcp      1.4    com.alibaba.external jakarta.commons.dbcp 1.4 2. dbcp的基本配置相关配置说明: initialSize :

2013-07-15 17:38:07 649

转载 Skip Locked

create table t(id number not null);insert into t values(1);insert into t values(2);insert into t values(3);commit;现在连续两次执行同一个SQL语句,如下:SQL>select * from t where rownum         ID---

2013-07-03 13:02:45 773

转载 数据库锁

数据库是一个多用户使用的共享资源。当多个用户并发地存取数据时,在数据库中就会产生多个事务同时存取同一数据的情况。若对并发操作不加控制就可能会读取和存储不正确的数据,破坏数据库的一致性。加锁是实现数据库并发控制的一个非常重要的技术。当事务在对某个数据对象进行操作前,先向系统发出请求,对其加锁。加锁后事务就对该数据对象有了一定的控制,在该事务释放锁之前,其他的事务不能对此数据对象进行更新操作。

2013-07-03 12:33:02 393

转载 myeclipse中将项目(java project)导出jar或.exe文件 .

一、导出jar文件: 如果你的程序开发已经接近尾声了,正准备将其生成桌面可执行文件却不知道该如何操作时,你只要按照以下步骤实行即可:选中你的项目---然后右击弹出选项列表---选择Export---Java---jar file---next---browser(选择jar的存放路径)---next---next(不管太多继续下一步)---browser(选择你程序的主类--OK)---f

2013-06-25 14:52:06 756

转载 java agent

今天在项目开发的时候,碰到一个很有意思的插件 hotcode,此插件只有阿里集团内部的人才能获得。此插件最吸进我的地方就是可以支持热替换我们运行在服务器上的java  class。在其简单的文档里面可以看到,原理就是用java agent实现的  感觉很好奇,于是乎就查阅了相关资料,发现资料并不是很多,仔细研究了一下,希望大家一起学习这篇文章主要探讨了Java Agent。 Java Agen

2013-06-25 14:45:14 1375 1

转载 java实现简单的单点登录

摘要:单点登录(SSO)的技术被越来越广泛地运用到各个领域的软件系统当中。本文从业务的角度分析了单点登录的需求和应用领域;从技术本身的角度分析了单点登录技术的内部机制和实现手段,并且给出Web-SSO和桌面SSO的实现、源代码和详细讲解;还从安全和性能的角度对现有的实现技术进行进一步分析,指出相应的风险和需要改进的方面。本文除了从多个方面和角度给出了对单点登录(SSO)的全面分析,还并且讨论了如何

2013-06-25 11:50:42 759

转载 Weblogic8远程调试

环境:weblogic: 814JDK:1.4.2IDE:NetBeans 7.01背景:由于netbean版本不支持添加weblogic8的服务器,只有在CMD窗口手工启动weblogic。因此调试就成了一个难题。解决方案:1、修改startWeblogic.cmd,在set JAVA_VENDOR=Sun后添加如下代码: set JAVA_OPTIONS=-Xd

2013-06-05 20:07:19 881

原创 Mina 服务中转(待完善)

项目连接银行专线,银行那边要求只能建立一个长连接,这个时候就想到了Mina. 用Mina做一个服务器中转,与银行相连的就是一个客户端(A),提供给自己应用的是一个服务端(B),那么下面只需要进行A与B端的数据实时共享就可以了。下面贴代码。1、连接银行服务的客户端代码import java.net.InetSocketAddress;import java.nio.charset.Cha

2013-03-04 12:59:54 847

转载 java动态代理学习笔记

原文:http://langyu.iteye.com/blog/410071 没事的时候翻看lang.reflect包下的代码,发现有两部分内容:涉及反射和动态代理。 很多地方都可以看到动态代理的影子,只是一直没仔细看下。 在学习之前,先提出几个问题,带着问题来看代码: 1.什么是动态代理? 2.为什么使用动态代理? 3.使用它有哪些好处? 4.哪些地方需要

2013-02-27 15:37:21 337

转载 java自定义注解

Java注解是附加在代码中的一些元信息,用于一些工具在编译、运行时进行解析和使用,起到说明、配置的功能。注解不会也不能影响代码的实际逻辑,仅仅起到辅助性的作用。包含在 java.lang.annotation 包中。1、元注解元注解是指注解的注解。包括  @Retention @Target @Document @Inherited四种。1.1、@Retention: 定义注解

2013-02-27 12:38:22 314

转载 【MongoDB for Java】Java操作MongoDB

http://www.cnblogs.com/hoojo/archive/2011/06/02/2068665.htmlblog:http://blog.csdn.net/IBM_hoojo本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 MongoDB有了全面的认识和理解。现在我们就用Java来操

2013-02-21 11:21:16 954

转载 javascript:history.go()和History.back()的区别(转载)

转自:http://www.mikebai.com/Article/2009-11/757.html 后退+刷新在C# Web程序中,如为页面按钮写返回上一页代码this.RegisterClientScriptBlock("E", "history.go(-2);");其中,history.go(-2),要写为-2,因在按钮事件触发前,已刷新一次页面,所以应是-2。

2013-02-18 12:46:12 634

转载 iBatis框架batch处理优化

在JDBC中如何做batch处理    JDBC提供了数据库batch处理的能力,在数据大批量操作(新增、删除等)的情况下可以大幅度提升系统的性能。我以前接触的一个项目,在没有采用batch处理时,删除5万条数据大概要半个小时左右,后来对系统进行改造,采用了batch处理的方式,删除5万条数据基本上不会超过1分钟。看一段JDBC代码:// 关闭自动执行 con.setAutoCommi

2013-02-16 14:05:08 865

转载 LOG4J

log4jApacheSocketC#C++一、介绍Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务 器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。Log4j由三个重要的组件构成:

2013-02-16 11:11:29 279

转载 HttpSession

1 新客户端向服务器第一次发送请求的时候,request中并无sessionID .2 此时server端会创建一个session对象,并分配一个sessionID,serssion对象会保存在服务器端。此时session的状态处于new state状态,如果调用session.isNew(),则返回true3 当服务器段处理完毕后,将此sessionID,同response一同传回到客户

2013-02-16 11:11:19 377

转载 IE浏览器中显示自己网站的logo方法

我们在打开一些网站的适合,地址栏会显示此网站的LOGO,如果没有设置自己网站的LOGO,在IE浏览器中是显示e的图标,下面我们来说下网站建站完成后让IE浏览器中显示自己网站的logo方法。 制作一个ico图标首先必须制作一个ico图标,并把它命名为“favicon.ico”,把它传到你的网站目录下面。 写入控制ico图标的代码然后,在想展现该个性图标的页面代码head部分中

2013-02-16 11:10:49 1115

转载 MyBatis批量大数据测试的一些结果

MyBatis的前身就是著名的Ibatis,不知何故脱离了Apache改名为MyBatis。MyBatis所说是轻量级的ORM框架,在网上看过一个测试报告,感觉相比于Hibernate来说,优势并不明显。下面说一下比较有趣的现象,根据MyBatis的官方文档,在获得sqlSession时,它有为批量更新而专门准备的: session = sessionFac

2013-02-05 12:11:32 611

转载 IBATIS batch用法探究

有的时候需要一次性执行大批量的SQL,而不是执行一条SQL向数据库提交一次,那么会 用到 IBATIS 的batch提交。 IBATIS的 batch提交也是基于 JDBC的batch功能。   那么我现来写段代码示范一下: 第一步,建立我的测试类。其中 BabyDO,sexEnum 等类是自己写的,并不重要,只要让程序跑起来,读者可以自己写下。不多讲了,主要讲

2013-02-05 10:59:29 366

转载 TOMCAT-SSL双向认证-配置实例

SSL (Secure Socket Layer - 安全套接字层)功能:保障在Internet上数据传输之安全,利用数据加密(Encryption)技术,确保数据在网络上之传输过程中不会被截取及窃听,防止篡改。 如何让我们的WEB应用程序应用SSL安全保障?经过几天摸索,终于实现 TOMCAT+SSL 双向认证,也就是说,首先,客户端将要认证服务器的安全性,确保访问的是正确的服务器,

2013-02-05 10:59:22 367

转载 java keytool 导入

Java自带的keytool工具是个密钥和证书管理工具。它使用户能够管理自己的公钥/私钥对及相关证书,用于(通过数字签名)自我认证(用户向别的用户/服务认证自己)或数据完整性以及认证服务。它还允许用户储存他们的通信对等者的公钥(以证书形式)。keytool 将密钥和证书储存在一个所谓的密钥仓库(keystore)中。缺省的密钥仓库实现将密钥仓库实现为一个文件。它用口令来保护私钥。Java

2013-02-05 10:59:19 619

转载 用keytool生成证书过程

1.创建一个证书C:/jdk1.5.0_04/bin>keytool -genkey -alias xahCA -keyalg RSA -keystore dyfCALib输入keystore密码:  admindyf您的名字与姓氏是什么?  [Unknown]:  不告诉你您的组织单位名称是什么?  [Unknown]:  还是不告诉你您的组织名称是什么?  [U

2013-02-05 10:59:16 520

转载 JVM系列一:JVM内存组成及分配

java内存组成介绍:堆(Heap)和非堆(Non-heap)内存       按照官方的说法:“Java 虚拟机具有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从此处分配。堆是在 Java 虚拟机启动时创建的。”“在JVM中堆之外的内存称为非堆内存(Non-heap memory)”。可以看出JVM主要管理两种类型的内存:堆和非堆。简单来说堆就是Java代码可及的内存,是留给开发人员

2013-02-05 10:58:47 313

转载 JVM系列二:GC策略&内存申请、对象衰老

JVM里的GC(Garbage Collection)的算法有很多种,如标记清除收集器,压缩收集器,分代收集器等等,详见HotSpot VM GC 的种类       现在比较常用的是分代收集(generational collection,也是SUN VM使用的,J2SE1.2之后引入),即将内存分为几个区域,将不同生命周期的对象放在不同区域里:young generation,tenure

2013-02-05 10:58:43 276

转载 JVM系列三:JVM参数设置、分析

不管是YGC还是Full GC,GC过程中都会对导致程序运行中中断,正确的选择不同的GC策略,调整JVM、GC的参数,可以极大的减少由于GC工作,而导致的程序运行中断方面的问题,进而适当的提高Java程序的工作效率。但是调整GC是以个极为复杂的过程,由于各个程序具备不同的特点,如:web和GUI程序就有很大区别(Web可以适当的停顿,但GUI停顿是客户无法接受的),而且由于跑在各个机器上的配置不同

2013-02-05 10:58:37 301

转载 JVM系列四:生产环境参数实例及分析【生产环境实例增加中】

java application项目(非web项目)改进前:-Xms128m-Xmx128m-XX:NewSize=64m-XX:PermSize=64m-XX:+UseConcMarkSweepGC-XX:CMSInitiatingOccupancyFraction=78-XX:ThreadStackSize=128-Xloggc:logs/gc.log

2013-02-05 10:58:33 248

转载 JVM系列五:JVM监测&工具[整理中]

前几篇篇文章介绍了介绍了JVM的参数设置并给出了一些生产环境的JVM参数配置参考方案。正如之前文章中提到的JVM参数的设置需要根据应用的特性来进行设置,每个参数的设置都需要对JVM进行长时间的监测,并不断进行调整才能找到最佳设置方案。本文将介绍如果通过工具及Java api来监测JVM的运行状态,并详细介绍各工具的使用方法。       需要监测的数据:(内存使用情况 谁使用了内存 GC的状况

2013-02-05 10:58:30 348

Java深浅clone

Java深浅clone测试代码 流拷贝 Cloneable

2013-07-25

MIna中转服务

MIna中转服务

2013-03-04

Java加密与解密的艺术

Java加密与解密的艺术

2012-09-07

OSGIOSGI实战OSGI实战

OSGI实战OSGI实战OSGI实战OSGI实战OSGI实战OSGI实战OSGI实战v

2011-03-28

空空如也

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

TA关注的人

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