JAVA
文章平均质量分 54
wubinbaoyi
这个作者很懒,什么都没留下…
展开
-
查看某个class是从那个jar包中load进来的,避免不同jar包打架的情况
add -verbose:class to your JVM argumentand it will show info like:[Loaded org.testng.remote.RemoteTestNG from file:/Users/nick/workspace/myproject/testng-eclipse/testng-eclipse-plugin/lib/test原创 2017-12-12 11:24:45 · 171 阅读 · 0 评论 -
javassist介绍
动态类库: 检查, 动态修改和创建java类。与JDK只带的反射功能类似,但更强大。重要的类:ClassPool: 跟踪和控制所操作的类,与jvm的classLoader类似。CtClass:CRU,可以检查类数据(字段和方法),在类中添加新字段,方法和构造函数,改变类,父类和接口的方法;但是不提供删除类中字段,方法和构造函数的任何方法。CtField: 用来访问域CtMethod:用来访问...原创 2018-03-20 14:02:23 · 234 阅读 · 0 评论 -
RabbitMQ学习之[error] Failed to create cookie file 'h:/.erlang.cookie': enoent
rabbitmqm windows 启动失败,由于环境变量homedrive没有权限写入.erlang.cookie原创 2017-12-26 16:31:03 · 3061 阅读 · 3 评论 -
rabbitmq之RPC(remote procedure call)
Request-Reply pattern:http://www.enterpriseintegrationpatterns.com/patterns/messaging/RequestReply.html之前研究的生产者/消费者模式都是单向的,生产者生产message,消费者消费messageRPC则是双向的,消费者消费完message,返回result给生产者。这样,就存在原创 2017-12-28 19:08:53 · 168 阅读 · 0 评论 -
rabbitmq之topic
topic exchange:能够route message 基于多个标准(相互独立的多重意义/标准),每个标准以dot分隔,匹配是合并式,全部满足才算匹配成功。比如message发布时的routingkey是quick.orange.rabbit (注意中间的dot),bindingkey是*.orange.rabbit 或者*.orange.*或者*.*.rabbit等等都是算匹配成功的原创 2017-12-28 16:42:45 · 239 阅读 · 0 评论 -
rabbitmq之routing
routingkey 和 bindingkeyroutingkey:producer 发布message 通过basicPublish方法,其中有一个exchange 参数用来指定发送到哪个exchange,一个参数routingkey,用来指定exchange接收到message后,发送给哪个binding在此exchange的queues (queue binding到exchange有个原创 2017-12-28 16:18:09 · 297 阅读 · 0 评论 -
rabbitmq之 Publish/Subscribe
应用场景:把一条message 发送给多个consumers去处理相关元素:exchange: 使用exchange type fanout,定义新的exchange和新的名字,不用默认的empty string exchange direct type。queue: 定义queue,server 会自动跟生产的queue一个临时的名字,只所以定义queue时不给名字,是因为正常的qu原创 2017-12-27 21:19:47 · 161 阅读 · 0 评论 -
rabbitmq之Fair dispatch
正常情况下,rabbitmq server(broker)会盲目地,按照message数目平均地分发message给consumer,而不考虑有的message处理起来比较耗时,有的处理起来很快,场景问题是,假设有两个consumers,consumerA和consumerB,4条messages,evenly, message1,message3会分发给consumerA去处理,messag原创 2017-12-27 16:43:37 · 448 阅读 · 0 评论 -
rabbitmq之Message durability
消息持久性,通过consumer的ack机制,可以保证在message没有完全处理完之前,就出现consumer crash/ connection,channel close的场景下,message不会从queue里删掉,requeue,redeliver给下一个valId binding的consumer。但是当broker server crash或者RabbitMQ server st原创 2017-12-27 16:17:43 · 4509 阅读 · 0 评论 -
rabbitmq 3 entities之 binding
Binding: 绑定exchange和queue,用来指示怎么route message到哪个/哪些queues, 对于direct exchange,binding通过routingkey,对于fanout exchange,routingkey无效,所有绑定的到此exchange的queue都会接受到deliver到此exchange的messages。对于 topic exchange,b原创 2017-12-26 21:26:07 · 194 阅读 · 0 评论 -
Property and xml configuration parse by using apache common lib commons-configuration.jar
PropertiesConfiguration propertiesConfiguration = new PropertiesConfiguration();//create a empty PropertiesConfiguration objectpropertiesConfiguration.setIOFactory(org.apache.commons.configuration原创 2017-12-15 10:20:40 · 201 阅读 · 0 评论 -
代理模式和装饰器模式区别
参考https://blog.csdn.net/andong154564667/article/details/80258061根据自己的理解,做了一点点修改。两种模式的作用:用于AOP,不改变原有实现的情况下,进行功能扩展,proxy模式比较适合固定的AOP功能需求,decorator比较适合动态扩展的AOP需求1. 同样的事情,proxy模式和decorator模式都能实现,...翻译 2019-03-26 15:19:53 · 1661 阅读 · 0 评论