java的OSGi确实是个坑】的更多相关文章

sun已经把java的OSGi这个坑填得够深了,sun估计短时间想把这个坑调回来是不可能了,跟.net比包管理模块化开发确实java够烂的. java的模块化架构开发只能让OSGi回去睡觉,自定义模块化架构框架了.…
文章也已经同步到我的csdn博客: http://blog.csdn.net/u012881584/article/details/72615481 关于Java解压文件的一些坑及经验分享 就在本周, 测试人员找到我说现上的需求文档(zip格式的)无法预览了, 让我帮忙看看怎么回事. 这个功能也并不是我做的, 于是我便先看看线上日志有没有什么错误,果不其然, 后台果然报错了. java.lang.IllegalArgumentException:MALFORMED at java.util.zi…
JAVA基础(零)-- 踩坑与错误(常更) 1 坑 考虑输入为null的情况 自动转换 x/Math.pow(10,i)*Math.pow(10,i) //由于math.pow()返回double类型,所以并非取整,而是真正的除法,如20/3.0 = 6.6666667 //该题121/Math.pow(10,1)*Math.pow(10,1)得不到期望结果120,而是121,要想取整,必须(int)强制转换 2 错误 2.1 java.lang.UnsupportedOperationExce…
好长一段时间前,某些场景需要JUC的读写锁,但在某个时刻内读写线程都报超时预警(长时间无响应),看起来像是锁竞争过程中出现死锁(我猜).经过排查项目并没有能造成死锁的可疑之处,因为业务代码并不复杂(仅仅是一个计算过程),经几番折腾,把注意力转移到JDK源码,正文详细说下ReentrantReadWriteLock的隐藏坑点. 过程大致如下: 若干个读写线程抢占读写锁 读线程手脚快,优先抢占到读锁(其中少数线程任务较重,执行时间较长) 写线程随即尝试获取写锁,未成功,进入双列表进行等待 随后读线程…
前言 作为Java程序员的你,不知道有没有踩过一些基础知识的坑. 有时候,某个bug查了半天,最后发现竟然是一个低级错误. 有时候,某些代码,这一批数据功能正常,但换了一批数据就出现异常了. 有时候,你可能会看着某行代码目瞪口呆,心里想:这行代码为什么会出错? 今天跟大家一起聊聊99%的Java程序员踩过,或者即将踩的6个坑. 1. 用==号比较的坑 不知道你在项目中有没有见过,有些同事对Integer类型的两个参数使用==号比较是否相等? 反正我见过的,那么这种用法对吗? 我的回答是看具体场景…
为什么说一个好的员工能顶 100 个普通员工 我们的做法是,要用最好的人.我一直都认为研发本身是很有创造性的,如果人不放松,或不够聪明,都很难做得好.你要找到最好的人,一个好的工程师不是顶10个,是顶100个.所以,在核心工程师上面,大家一定要不惜血本去找,千万不要想偷懒只用培养大学生的方法去做.最好的人本身有很强的驱动力,你只要把他放到他喜欢的事情上,让他自己有玩的心态,他才能真正做出一些事情,打动他自己,才能打动别人.所以你今天看到我们很多的工程师,他自己在边玩边创新.所以,找最好的人,要给…
最近与建行接口做对接和与一家短信运营商做对接时候遇到了这个坑 在java中对UrlEncode 时候哪些url非安全字符被转为%数字和大写字幕组合,比如:zhangsan/d 会被转为 zhangsan%2Fd  ,而在C#中确被转为 zhangsan%2fd  .注意大小写的差异 然后就导致了各种加密验签无法通过的情况. 于是就自己在C#原来的UrlEncode的基础上写了一个UrlEncode方法 /// <summary> /// Url编码 /// </summary> /…
常见的java调用python脚本方式 1.通过Jython.jar提供的类库实现 2.通过Runtime.getRuntime()开启进程来执行脚本文件 1.Jython Jpython使用时,版本很重要!大多数坑来源于此.这句话不听的人还得走点弯路 运行环境:Python2.7 + Jython-standalone-2.7.0 <!--Maven依赖,jar包自行前往仓库下载--> <dependency> <groupId>org.python</grou…
今天线上有个NullPointerException 的异常,我翻了一下代码,抛异常的竟然是switch语句 我有种不祥的预感,本地做了实验 结果是 Java的switch如果传入null值,会抛出 java.lang.NullPointerException 的异常 看下面的代码,不要指望会跳到default分支,实际情况是在switch语句就抛异常了. // Java代码 String s = null; switch (s) { //因为s=null 所以这里妥妥的会抛异常 case "a…
app支付前java后台统一下单文档:https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=9_1 微信支付接口签名校验工具:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=20_1 app支付后台代码可参考:https://blog.csdn.net/wd0032/article/details/79680215 微信退款可参考:https://www.cnblog…