近期技术总结。
这个月工作之余一直忙于技术研究,本来打算完成:
1.java的大型产品开发框架;2.C#与java的数据交互。
1.完成度70%。
解决了我在javaeye发帖子提出的有关多模块能过互相调用但不互相污染的问题。
原贴:
Java视线论坛 :: 阅读主题 - 有关于classloader的思考(或者说是困惑)
http://www.hibernate.org.cn/viewtopic.php?t=21288
完成了这部分的编码。
完成了多模块的定义。
没完成:
具体aop的事务advisor编写。
体力活,因为原来写过:)偷懒。只写了个接口
完善的测试。
tdd一直没习惯:(
一直写helloworldService来完成测试。
菜鸟~
2.完成度趋近于0%。
本来想好的方式
C#<-->JSON<-->Java
失败:C#端的实现已经写好了,java端现成的json-rpc。
失败原因:
Json格式适合js那种弱类型语言。
否则,java和C#两端都要解析,大数据量有性能问题。
Java端的实现不够健壮,太简单了。
有些地方的代码有能用眼睛看出来的不成熟之处。
跨ClassLoader都不支持。
虽然可以自己改造,可是觉得不值得。
C#<-->xml<-->Java
失败:C#端的实现已经写好了,java端现成的xstream。
失败原因:
xstream能把任意java对象很简单的序列化为xml。
并且该项目十分成熟,深入读代码感觉十分健壮。
(一看就是公司行为,而json-rpc感觉是爱好者写的,个人感觉而已)。
着手实现了C#段的xstream。
因为只是需要把C# object序列化成符合xstream的格式。
前面已经开发了json格式的对象属性遍历。
还是很简单的。
昨天顺利完成。
但是,测试后发现。
xml格式并不符合我的需求。
冗余信息过多,对于很简单的bean,转换时都会生成:
<hellotest02.HelloWorld>
<name type="string">abcd</name>
<id type="int">11</id>
<mny type="double">77.0</mny>
<helloChild type="hellotest02.HelloChild">
<childName type="string">kkk</childName>
</helloChild>
</hellotest02.HelloWorld>
这么一大坨啊。
传输性能上不可接受。
现在我想到了个可能更有效率,优雅一些的方法,能满足我的需要。
正在研究。
1.java的大型产品开发框架;2.C#与java的数据交互。
1.完成度70%。
解决了我在javaeye发帖子提出的有关多模块能过互相调用但不互相污染的问题。
原贴:
Java视线论坛 :: 阅读主题 - 有关于classloader的思考(或者说是困惑)
http://www.hibernate.org.cn/viewtopic.php?t=21288
完成了这部分的编码。
完成了多模块的定义。
没完成:
具体aop的事务advisor编写。
体力活,因为原来写过:)偷懒。只写了个接口
完善的测试。
tdd一直没习惯:(
一直写helloworldService来完成测试。
菜鸟~
2.完成度趋近于0%。
本来想好的方式
C#<-->JSON<-->Java
失败:C#端的实现已经写好了,java端现成的json-rpc。
失败原因:
Json格式适合js那种弱类型语言。
否则,java和C#两端都要解析,大数据量有性能问题。
Java端的实现不够健壮,太简单了。
有些地方的代码有能用眼睛看出来的不成熟之处。
跨ClassLoader都不支持。
虽然可以自己改造,可是觉得不值得。
C#<-->xml<-->Java
失败:C#端的实现已经写好了,java端现成的xstream。
失败原因:
xstream能把任意java对象很简单的序列化为xml。
并且该项目十分成熟,深入读代码感觉十分健壮。
(一看就是公司行为,而json-rpc感觉是爱好者写的,个人感觉而已)。
着手实现了C#段的xstream。
因为只是需要把C# object序列化成符合xstream的格式。
前面已经开发了json格式的对象属性遍历。
还是很简单的。
昨天顺利完成。
但是,测试后发现。
xml格式并不符合我的需求。
冗余信息过多,对于很简单的bean,转换时都会生成:
<hellotest02.HelloWorld>
<name type="string">abcd</name>
<id type="int">11</id>
<mny type="double">77.0</mny>
<helloChild type="hellotest02.HelloChild">
<childName type="string">kkk</childName>
</helloChild>
</hellotest02.HelloWorld>
这么一大坨啊。
传输性能上不可接受。
现在我想到了个可能更有效率,优雅一些的方法,能满足我的需要。
正在研究。