2016-10-07 82 views
0

我能夠保存在MongoDB中使用GSON一個簡單的POJO文件內容,但現在我想POJO文件中的枚舉數據保存到MongoDB的。但我沒有得到如何保存枚舉數據。如何在POJO文件保存一個枚舉數據的MongoDB

這是我的POJO文件:

import javax.annotation.Generated; 

@Generated("org.jsonschema2pojo") 
public class Coverage1 { 
    public enum Coverage { 
Hearing_Aid_Professional_Liability("HEAR"), Incidental_Motorized_Land_Conveyances_Liability_Only("LANDC"), PremisesOperations_334("PREM"), Rental_Reimbursement("RREIM"), Liquor_Law_Liability_332("LLL"), Wind("WIND"), Business_Personal_Property("BPP"), OpticianOptometrists_Professional_Liability("OOPRL"), Builders_Risk("BLDRK"); 

    private String val; 

Coverage(String val){ 
     this.val = val; 
    } 

    public String getVal() 
    { 
     return this.val; 
    } 

    public void setVal (String val) 
    { 
     this.val = val; 
    } 
} 


    private String id; 

    private CoverageCd coverageCd; 
    private CoverageDesc coverageDesc; 
    private CoverageTypeCd coverageTypeCd; 

    public String getId() { 
     return id; 
    } 


    public void setId(String id) { 
     this.id = id; 
    } 


    public CoverageCd getCoverageCd() { 
     return coverageCd; 
    } 


    public void setCoverageCd(CoverageCd coverageCd) { 
     this.coverageCd = coverageCd; 
    } 


    public CoverageDesc getCoverageDesc() { 
     return coverageDesc; 
    } 

    public void setCoverageDesc(CoverageDesc coverageDesc) { 
     this.coverageDesc = coverageDesc; 
    } 


    public CoverageTypeCd getCoverageTypeCd() { 
     return coverageTypeCd; 
    } 

    public void setCoverageTypeCd(CoverageTypeCd coverageTypeCd) { 
     this.coverageTypeCd = coverageTypeCd; 
    } 

} 

這是我的課從那裏我正在蒙戈呼叫

 Employee employee = new Employee(); // Create java object of Simple POJO with field No and Name 
     employee.setNo(2L); 
     employee.setName("POJO Test"); 
     Coverage1 cv= new Coverage1();//POJO containing Enum 
     //How to save the Enum in Mongo 
     // Deserialize object to json string 
     Gson gson = new Gson(); 
     String json = gson.toJson(employee); 
     System.out.println(json); 
     // Parse to bson document and insert 
     Document doc = Document.parse(json); 
     db.getCollection("NameColl").insertOne(doc); 

我現在能得到的另一個類枚舉的值,但沒有得到如何將整個數據保存在MongoDB中。

Coverage1 cv= new Coverage1(); 
      for(Coverage1.Coverage enumval:Coverage1.Coverage.values()){ 
       System.out.println(enumval); 
       cv.setValue(enumval);//How to set the entire Enum Data in Mongo 
      } 

請建議如何在MongoDB中插入整個Enum數據。

回答

0

可以不斷保存爲字符串調用Enum#name()方法和使用Enum#valueOf()

實例檢索回:

myEnum.valueOf(arg0) 
+0

感謝那些幫助。但我還有一個疑問,如果可以幫助我。我需要將整個Enum數據保存在MongoDB中,但不知道如何實現它。將新代碼添加到問題中 –

相關問題