google-code-export / nutz

Automatically exported from code.google.com/p/nutz
Apache License 2.0
1 stars 1 forks source link

Ioc :实现对XML配置文件的支持 #92

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
实现接口 org.nutz.ioc.IocLoader, 
使用XML配置文件完成类似于Json配置文件的工作.

Original issue reported on code.google.com by wendal1985@gmail.com on 25 Dec 2009 at 12:30

GoogleCodeExporter commented 9 years ago
可以考虑先实现一个 Json2XML 和 XML2Json

Original comment by zozoh...@gmail.com on 25 Dec 2009 at 6:07

GoogleCodeExporter commented 9 years ago
我已经完成了一个, 放到NutzLab了

Original comment by wendal1985@gmail.com on 25 Dec 2009 at 7:15

GoogleCodeExporter commented 9 years ago
我提交的那个设计,读取完成后,将iocMap对象转为Json string, 
跟原版的Json配置文件基本一致.

Original comment by wendal1985@gmail.com on 25 Dec 2009 at 7:17

GoogleCodeExporter commented 9 years ago
写了个XML2Map, 不过, 感觉上, 根据zozohtnt提供那种xml格式, 
生成的Map与Json的map相差很远...

Original comment by wendal1985@gmail.com on 13 Jan 2010 at 7:04

GoogleCodeExporter commented 9 years ago
我觉得 XML 的格式定义应该有两种判断标准:

1. XML 尽量好解析 -- Spring 用的是这个思路
2. 尽量让人写的少 -- zzhoffer 用的是这个思路

比如,我叫<obj> 而不是 <bean> --- 少了一个字 :P
比如 <obj> 下面,我没有用 <fields> 而是直接一个一个放 
<field>, 为的就是让人少写一点,而且也不影响于都。
但是,我觉得在 <obj> 下面放一个 <events> 
很好,因为这个不常写,用一个元素让人看的清除

而且我认为,直接把这个 XML 转换成 IocObject ,比把 XML 转成 
Map 再转成 IocObject 更容易写,更高效

Original comment by zozoh...@gmail.com on 17 Mar 2010 at 6:47

GoogleCodeExporter commented 9 years ago
这个方式 <str>Tasdfadf</str> , 
我觉得不太好解析,可读性也不太好.
如果 没 <fields>,那 <args>意义也不会很大了.

Original comment by wendal1985@gmail.com on 17 Mar 2010 at 9:51

GoogleCodeExporter commented 9 years ago
没有 <args> 的话,不太好区分哪些值是构造函数

<str>adfadfa</str> 同 <val type="string">adfadsfaf</val> 差不多吧

解析的时候,会读 NodeList ,然后遍历,如果是 
Element,则用其 tagName 来做类型。 

Original comment by zozoh...@gmail.com on 17 Mar 2010 at 9:55

GoogleCodeExporter commented 9 years ago
已经提交一份新的实现到svn
http://code.google.com/p/nutz-ioc-loaders/source/browse/#svn/trunk/XmlIocLoader_
v2

Original comment by wendal1985@gmail.com on 25 Mar 2010 at 1:19

GoogleCodeExporter commented 9 years ago
是否考虑放入1.a.27呢?

Original comment by wendal1985@gmail.com on 15 Apr 2010 at 12:45

GoogleCodeExporter commented 9 years ago
这个我同意 +1

Original comment by zozoh...@gmail.com on 15 Apr 2010 at 1:26

GoogleCodeExporter commented 9 years ago
Fix in r1087

Original comment by wendal1985@gmail.com on 17 Apr 2010 at 3:29

GoogleCodeExporter commented 9 years ago

Original comment by wendal1985@gmail.com on 13 May 2010 at 10:56

GoogleCodeExporter commented 9 years ago

Original comment by wendal1985@gmail.com on 14 May 2010 at 11:20