xml建模----详细完整,易懂结合代码分析

简介: xml建模----详细完整,易懂结合代码分析

一.XML建模是什么

        将XML配置文件中的元素、属性、文本信息转换成对象的过程叫做XML建模

二.XML建模有什么作用???

XML是被设计用来存储数据、携带数据和交换数据的。XML不是为了显示数据而设计的,主要是用于交换数据,可以从HTML中分离数据,也可以用于存储数据,大量的数据可以存储到XML文件中或者数据库中,应用程序可以读写和存储数据,一般的程序可以显示数据。

三.XML建模的案例

以config.xml为例

以面向对象的思维来建模,来解析上方代码(先看标签,然后再看属性)步骤

1.   在configModel中添加actionModel,就要有个容器来装载actionModel,又因为axtionModel是唯一值,所有这个容器就为 (Map集合);
2.   actionModel中添加forwordModel,用Map容器来装载;
3.   在actionModel中还有属性 path,type;
4.   在forwordModel中有属性 name,path,redirect ;

接下来,根据这个步骤来建包,建立ActionModel,ConfigModel,ForwordModel三个包

1.ActionModel包

package com.yinzi.xml2;
import java.util.HashMap;
import java.util.Map;
public class ActionModel {
  private String path;
  private String type;
  private Map<String, ForwordModel> fmap=new HashMap<String, ForwordModel>();
  public String getPath() {
    return path;
  }
  public void setPath(String path) {
    this.path = path;
  }
  public String getType() {
    return type;
  }
  public void setType(String type) {
    this.type = type;
  }
  //将Forword往action里面放   压栈
  public void push(ForwordModel forwordmodel) {
    fmap.put(forwordmodel.getName(), forwordmodel);
  }
  //将Forword从action里通过name值取出来
  public ForwordModel pop(String name) {
    return fmap.get(name);
  }
}

2.ConfigModel包

package com.yinzi.xml2;
import java.util.HashMap;
import java.util.Map;
public class ConfigModel {
private Map<String , ActionModel> amap=new HashMap<String, ActionModel>();
//将Action往Config里面放   压栈
public void push(ActionModel actionmodel) {
  amap.put(actionmodel.getPath(), actionmodel);
}
//将Action从Config里通过path值取出来
public ActionModel pop(String path) {
  return amap.get(path);
}

3.ForwordModel包

package com.yinzi.xml2;
public class ForwordModel {
  private String name;
  private String path;
  private boolean redirect;
  public ForwordModel() {
    // TODO Auto-generated constructor stub
  }
  public String getName() {
    return name;
  }
  public void setName(String name) {
    this.name = name;
  }
  public String getPath() {
    return path;
  }
  public void setPath(String path) {
    this.path = path;
  }
  public boolean getRedirect() {
    return redirect;
  }
  public void setRedirect(boolean redirect) {
    this.redirect = redirect;
  }
  public ForwordModel(String name, String path, boolean redirect) {
    super();
    this.name = name;
    this.path = path;
    this.redirect = redirect;
  }
  @Override
  public String toString() {
    return "ForwordModel [name=" + name + ", path=" + path + ", redirect=" + redirect + "]";
  }
}

建立完包后,这里我使用的是工厂模式,来建立一个包来获取数据 就是解析

里面的参数,就是将它变为动态,想要获取哪个文件的数据,就写入哪个文件,改括号的东西就可以了,这里是获取了actionModel的数据,要保证ForwordModel里面有东西

然后数据的获取到之后加入进去就可以了,然后一般都会再写一个无参的方法调用

然后再ConfigModel里面拿取

 

相关文章
|
11月前
|
XML Java 数据格式
一.Xml建模之入门
一.Xml建模之入门
50 1
|
10月前
|
XML 设计模式 开发框架
J2EE(xml建模)
J2EE(xml建模)
48 0
|
11月前
|
XML 存储 设计模式
XML系列(三)之 XML建模
XML系列(三)之 XML建模
|
11月前
|
XML 设计模式 开发框架
J2EE之XML建模(超详细)
J2EE之XML建模(超详细)
43 0
|
11月前
|
XML 存储 JSON
XML建模最详细介绍讲解
XML建模最详细介绍讲解
81 0
|
XML 存储 设计模式
XML建模
XML建模
61 0
|
10月前
|
XML 存储 开发框架
J2EE之XML建模
J2EE之XML建模
37 0
|
11月前
|
XML 数据采集 JSON
XML建模
XML建模
41 0
|
10月前
|
XML 存储 Java
XML建模
XML建模
|
9月前
|
XML 存储 设计模式
xml建模
xml建模
43 0