简介 在前面一篇文章里讨论过几种应用系统集成的方式,发现实际上面向消息队列的集成方案算是一个总体比较合理的选择。这里,我们先针对具体的一个消息队列Activemq的基本通信方式进行探讨。activemq是JMS消息通信规范的一个实现。总的来说,消息规…
当我们清楚了以后内容后,现在我们来用JBoss实现一个例子来加深对JBoss和JMS的了解。 在上面叙述中,我们知道明确使用JMS provider有三个基本的事情要做:配置JNDI初始化上下文,连接工厂的名字和使用目的地的名字。 当编写产品的最好的…
先啰嗦两句,如果你还不知道Netty是做什么的能做什么。那可以先简单的搜索了解一下。我只能说Netty是一个NIO的框架,可以用于开发分布式的Java程序。具体能做什么,各位可以尽量发挥想象。技术,是服务于人而不是局限住人的。 如果你已经万事具备,那…
1. 背景 1.1. 惊人的性能数据 最近一个圈内朋友通过私信告诉我,通过使用Netty4 + Thrift压缩二进制编解码技术,他们实现了10W TPS(1K的复杂POJO对象)的跨节点远程服务调用。相比于传统基于Java序列化+BIO(同步阻塞I…
昨天在做项目的时候遇到了一个坑,没错,就是获取MyBatis自增长主键值的坑。因为之前一直用ibatis,所以惯性的用了ibatis的写法,结果返回的值一直是1(受影响的行数)。于是去翻了翻MyBatis的源码,发现它把主键值放到了参数对象上,获取主…
我们知道MySql中主键可以设成auto_increment,也就是自增主键,每当新增一条记录,主键值自动加1。 在MyBatis中,执行insert,返回值为受影响的语句行数,此操作跟JDBC一致。 但是如果应用中需要将插入的值的主键返回时,这时有…
Apache FtpServer是一个纯Java实现的FTP服务器,基于大名鼎鼎的网络框架apache MINA实现。它既可以作为一个完整的FTP服务器单独使用,也可以在Java程序中调用,类似于Jetty可以作为嵌入式的HTTP服务器。 下面介绍如…
在java程序开发中,ftp用的比较多,经常打交道,比如说向FTP服务器上传文件、下载文件,本文给大家介绍如何利用jakarta commons中的FTPClient(在commons-net包中)实现上传下载文件。 一、上传文件 原理就不介绍了,大…
本文由 ImportNew - Jaskey 翻译自 javarevisited。欢迎加入翻译小组。转载请见文末要求。 每一个Java程序员都知道日志对于任何一个Java应用程序,尤其是服务端程序是至关重要的,而很多程序员也已经熟悉各种不同的日志库如…
原文链接 作者: Mohamed Sanaulla 译者: 李璟(jlee381344197@gmail.com) 早先我写了一篇《函数式接口》,探讨了部分Java 8中函数式接口的用法。我也提及了Predicate接口属于java.util.…
为什么需要 Stream Stream 作为 Java 8 的一大亮点,它与 java.io 包里的 InputStream 和 OutputStream 是完全不同的概念。它也不同于 StAX 对 XML 解析的 Stream,也不是 Amazon…
问题: Intelij IDEA的项目部署到tomcat能够正常run,当使用tomcat自带或jrebel的debug调试功能时报错ERROR: Cannot load this JVM TI agent twice, check your Jav…
分析错误: weblogic开启debug模式启动时出现下面的错误: ERROR: Cannot load thisJVM TI agent twice, check your Java command line for duplicate jdwp…
ant 运行时,必需依赖jdk6.0,而是用ant编译Java文件时,却需要是用jdk1.4或者1.5。那如何指定ant编译版本呢? 最近发现了两种解决方案: 1、为 javac 任务指定target属性,取值为:1.3、1.4、1.5 即自己需要编…
以前经常谈论的Java对比c++的一个优势是Java中没有多继承的问题。 因为Java中子类只能继承(extends)单个父类, 尽管可以实现(implements)多个接口,但是接口中只有抽象方法,方法体是空的,没有具体的方法实现,不会有方法冲突的…