依据XML中的数据,Java解析XML模板,自动生成代码。有何方法呢?

解决方案 »

  1.   

    用全XML路线好了,不要用Java了。
    XSLT程序本身就是XML文档。
      

  2.   

    XML模板:
    <?xml version="1.0" encoding="UTF-8"?>
    <Template  name="test" is_valid="Y" note="M#">
      <Source  ><![CDATA[CREATE OR REPLACE VIEW <my:Item source='$dataset.data_name' format='field'/>
    AS
       SELECT *
       FROM <my:Item source='$dataset.data_from' format='field'/>
       WITH READ ONLY
    ]]></Source>
    </Template>
    XML数据:
    <?xml version="1.0" encoding="UTF-8"?>
    <Data data_name="T_USER" >
      <FieldString is_null="Y" is_store="Y" is_abstract="N" data_name="NAME" data_size="100" />
    </Data>JAVA依据XML数据及,XML模板生成SQL代码。相当于是个代码生成工具了。
    其中在XML配置my:Item标签。Java怎么去解析在XML中的标签?
      

  3.   

    不知道有没有数据库工具可以做这个的...如果自己做,可以这样:
    ①从Template中读出CDATA内容,
    ②从Data中读出FieldString内容
    ③用Java字符串处理函数替换掉my:Item标签(可以考虑用正则表达式)对了,你4楼的代码中,$dataset.data_from似乎无法解析的吧。
      

  4.   

    应该是可以的解析$dataset.data_from的。关于FieldString应该都是通过实例化去实现的,具体怎么写我也不知道。请高手求救
      

  5.   

    我怎么越看越觉着这功能像ibatis
      

  6.   

    楼主说的是脚本语言,如SQL, HTML,嘿嘿。
    难道楼主相开发一个自己的简单的脚本语言引擎?
      

  7.   

    我的思路如下:
    1对xml文件进行解析,获取类名,以及它所包含的变量,和各个方法
    2用所获得的类名,方法等生成字符串,并获得java文件
    3运行脚本文件对所产生的java文件进行编译,并部署
      

  8.   

    1 Dom4j or SaX  解析xml 生成对象。
    2 配置Template 生成代码。 如: free velocity  so on 
      

  9.   

    Xalan
    如果是标准的xslt这个工具应该能帮的上你
      

  10.   

    jdom 或者dom4j来弄吧,省事!