`
wxl24life
  • 浏览: 290892 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
今天被问了一个 Java 基础知识:Java 类成员的访问控制符(Access Modifier)有几种?这些访问控制符之间有何区别?   首先回答第一个问题。通常我们可以显示声明的访问控制符有三个:public, private 和 protected。但是,我们也会 ...
刚才在测试一段代码时碰到了 java.lang.ExceptionInInitializerError。   简单搜了下资料,这个 error 出现的原因是:在静态初始化块(static initializer,包含静态变量初始化语句)中有 unchecked exception 抛出而没有被捕获住。   借助 java doc 文档 中的介绍,记录几个要点。   1、首先,它是一个 error,继承自 java.lang.Error。java.lang.ExceptionInInitializerError 的命名符合 java 规范 - 以 Error 结尾。 java.l ...
先看两段代码,请试着分别写出它们的输出结果。   1、try-catch 块与 finally 块同时抛异常。   import java.io.IOException; public class ExceptionInFinallyBlock { public static void main(String[] args) { try { try { System.out.print("A"); throw new Exception(&q ...
  这个错误是在SVN提交的时候报的: 写道 Transaction is out of date svn: Commit failed (details follow)...   解决办法: Team -> SVN update(更新) 这里可以对整个工程执行一次 SVN update。   参考:SO
在上一篇文章里,我写了在阅读 ActiveMQ 的一小段源码时碰到的两种设计模式:抽象工厂和策略模式。实际上 ActiveMQ 源码量很大,只要认真分析,你会找到很多设计模式的应用场景。其中,有一个模式非常典型,并且它在整个 ActiveMQ 的源码架构中扮演者非常重要的角色,它就是 GoF 设计模式中的:命令模式(Command Pattern)。Command 是 ActiveMQ broker 与 client 的主要通信方式,每个 Command 对象代表了一个待执行的动作。关于命令模式在 ActiveMQ 源码中的应用,我会在后面找个时间专门写一下。   这篇文章讨论另一个问题 ...
今天主要分析两个类的实现。 首先看一下 org.apache.activemq.broker.BrokerFactory 类。从类的命名上看似乎使用了 GoF 设计模式中的抽象工厂模式。我们通过源码来分析一下是否真的应用了这种模式。     public final class BrokerFactory { // ... public static BrokerService createBroker(URI brokerURI, boolean startBroker) throws Exception { if (brokerURI ...
在 Java 里定义一个类的时候,很多时候我们需要提供成员变量,成员变量专业叫法是 Memeber Variable 或者干脆的叫作 Field. 根据是否使用 static 关键字修饰,可以将 Field 分为两种: static field:也称作 class variable,这种 filed 属于 class,并不属于单个 instance,所有该 class 的 intance 共享内存中的同一份 class field。 non-static field:也称作 instance variable,它属于每一个具体的 instance,class 的每一个 instan ...
  今晚按照这篇向导 Turning Vim into a modern Python IDE,对 Vim 装饰了一番,作为以后开发 Python 代码的 IDE。   先上效果图:     这张图里用到的插件有(所有快捷键适应于默认的 .vimrc 配置下): Gundo 用于查看本地文件修 ...
  这是前几天碰到的一个由 SLF4J 引发的异常 Exception in thread "main" java.lang.IllegalAccessError: tried to access field org.slf4j.impl.StaticLoggerBinder.SINGLETON from class org.slf4j.LoggerFactory at org.slf4j.LoggerFactory.<clinit>(LoggerFactory.java:60) 在网上搜索时,找到了 SLF4J FAQ 这篇文档,其中就有对这 ...
以下内容主要参考 SLF4J FAQ 文档。只用于记录我的一点理解,如有必要请仔细阅读 FAQ 文档。   1. 什么是 SLF4J?    SLF4J is a simple facade for logging systems allowing the end-user to plug-in the desired logging system at deployment time.   要理解这句话需要先弄懂几个概念:   facade. 它实际上是 GoF 设计模式中的 Facade 模式,中文是外观模式。该模式通过一个 Facade 对象为一系列复杂的对象提供简化 ...
  java.lang.NoClassDefFoundError 和 java.lang.ClassNotFoundException 都是 Java 语言定义的标准异常。从异常类的名称看似乎都跟类的定义找不到有关,但是还是有些差异。我们先来看一下 java 规范中对这两个异常的说明:   java.lang.NoClassDefFoundError: Thrown if the Java Virtual Machine or a ClassLoader instance tries to load in the definition of a class (as part of a ...
  在两个地方可以配置 persistent 属性,分别是broker端和client端。   broker端配置文件里的 broker 对象属性中有一个 persistent 属性,该属性的默认值是 true。 在默认属性 true 的前提下,如果希望以 non-persistent 的方式传输消息,需要在 client(producer)端指定 DeliveryMode. NON_PERSISTENT。 如果 broker 端把 persistent 属性设置为 false,不管 client(producer)端使用哪种 DeliveryMode,都不无法保证消息的持久化 ...
本文的目的是在 broker 端实现消息的路由分发,通俗点讲就是,根据消息的特征将消息分发到不同的 queue 或者 topic 上。要实现消息路由,最简单的方式是在 activemq 提供的 xml 配置文件下面构建路由规则。 所使用的版本: ActiveMQ 5.6.0 Camel 2.9.2 在 ActiveMQ 的每个发行版的 conf 目录下包含了很多的示例 xml 配置文件,它们是对 ActiveMQ 重要 feature 的配置举例,比如使用jdbc作持久化机制时针对不同数据库的配置、如何进行权限配置、如何配置 network broker 等等。在研究Ac ...
  错误堆栈信息如下所示。url 出于隐私没有列出,但是可以肯定的是 jdbc url 配置信息正确无误。   从错误描述 Apparently wrong driver class specified for URL 看,应该是jdbc driver的问题 。   简单在网上搜了下这个错误,尝试将 oracle 的 jdbc driver JAR 包放在了Jboss deploy目录上一层的lib目录下,再次启动 jboss,问题解决。    org.jboss.resource.JBossResourceException: Could not create connect ...
[ERROR] COMPILATION ERROR : [INFO] ------------------------------------------------------------- [ERROR] \******\TEST.java:[15,29] 软件包 org.jboss.ws.tools.ant 不存在 [INFO] 2 errors [INFO] ------------------------------------------------------------- [INFO] ---------------------------- ...
Global site tag (gtag.js) - Google Analytics