2012-12-04 111 views
0

我想用Spring MVC開發一款遊戲。如何以及在哪裏存儲應用程序初始化數據?

例如我有一個Monster類。

什麼是在春天初始化和存儲怪物數據的最佳方式?

一種選擇是在一些Init java文件中創建所有Monster實例並創建靜態數組,以便每個類都可以訪問它們,但這似乎是一種錯誤的方式。

舉例怪物:String name, int hp, int defence, int attack

在另一方面,我應該使用XML或屬性文件來把我所有的MonsterItem信息?未來還可以輕鬆添加新的ItemsMonsters

這種春季作業的常用技術是什麼?

我試圖儘可能清楚地解釋,詢問是否有什麼不清楚的地方。

+0

你想以某種方式保存您的怪物+項目,以便在以後讀回您的應用程序? –

+0

基本上是的..以及它不必將它們保存到數據庫..但是,如果我想知道是否有創建和添加新的'怪物'和'Item'的完整解決方案,一些配置文件可能... – Jaanus

回答

2

JAXB如何?見多麼容易寫配置和讀回:

import java.io.*; 
import java.util.*; 
import javax.xml.bind.*; 
import javax.xml.bind.annotation.*; 

class Config { 
    @XmlElementWrapper(name="monsters") 
    @XmlElement(name="monster") 
    public List<Monster> monsters = new ArrayList<Monster>(); 
} 

class Monster { 
    public String name = "Test"; 
} 

public class Test1 { 

    public static void main(String[] args) throws Exception { 
     Config cfg = new Config(); 
     cfg.monsters.add(new Monster()); 
     //save 
     OutputStream os = new FileOutputStream("conf.xml"); 
     JAXB.marshal(cfg, os); 
     // read 
     cfg = JAXB.unmarshal(new FileInputStream("conf.xml"), Config.class); 
    } 
} 

conf.xml中

<config> 
    <monsters> 
     <monster> 
      <name>Test</name> 
     </monster> 
    </monsters> 
</config> 
相關問題