成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

mongo多態(tài)保存

darryrzhong / 990人閱讀

Org
public class Org {

    @Id
    private String id;

    private String name;

    private Set employees;

    public String getId() {
        return id;
    }

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

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Set getEmployees() {
        return employees;
    }

    public void setEmployees(Set employees) {
        this.employees = employees;
    }
}
employee
public abstract class Employee {

    protected String name;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

}
leader
public class Leader extends Employee{

    private String address;

    private String title;

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }
}
worker
public class Worker extends Employee{

    private String mobile;

    public String getMobile() {
        return mobile;
    }

    public void setMobile(String mobile) {
        this.mobile = mobile;
    }
}
保存實例
@Test
    public void testPolymorphic() {
        Org org = new Org();
        org.setName("tech");

        Leader leader = new Leader();
        leader.setName("leader");
        leader.setAddress("fj");
        leader.setTitle("vp");

        Worker worker = new Worker();
        worker.setName("worker");
        worker.setMobile("15909898989");

        Set employees = new HashSet<>();
        employees.add(leader);
        employees.add(worker);

        org.setEmployees(employees);
        orgDao.save(org);
    }
mongo里的數(shù)據(jù)保存了class
{
    "_id" : ObjectId("57f635e0af7b3807e8101884"),
    "_class" : "com.codecraft.demo.model.Org",
    "name" : "tech",
    "employees" : [ 
        {
            "mobile" : "15909898989",
            "name" : "worker",
            "_class" : "com.codecraft.demo.model.Worker"
        }, 
        {
            "address" : "fj",
            "title" : "vp",
            "name" : "leader",
            "_class" : "com.codecraft.demo.model.Leader"
        }
    ]
}
取數(shù)據(jù)
@Test
    public void testFind(){
        Org org = orgDao.findOne("57f635e0af7b3807e8101884");
        Set employees = org.getEmployees();
        for(Employee emp : employees){
            if(emp instanceof Leader){
                System.out.println(emp);
            }else if(emp instanceof Worker){
                System.out.println(emp);
            }
        }
    }
docs

用 mongodb 儲存多態(tài)消息/提醒類數(shù)據(jù)

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/18878.html

相關(guān)文章

  • (翻譯) MongoDB(20)配置 mongo Shell

    摘要:自定義提示你可以通過在中設(shè)置變量來修改提示的內(nèi)容變量可以保存字符串以及代碼如果包含返回字符串的函數(shù)可以在每個提示中顯式動態(tài)信息你可以在文件中添加提示的邏輯以便在你每次啟動的時候進行提示自定義提示去顯示操作的數(shù)量例如創(chuàng)建一個在當前會話中顯示帶 自定義提示 你可以通過在 mongo shell 中設(shè)置變量 prompt 來修改提示的內(nèi)容. prompt 變量可以保存字符串以及 JavaSc...

    yanest 評論0 收藏0
  • Express 實戰(zhàn)(八):利用 MongoDB 進行數(shù)據(jù)持久化

    摘要:在使用過程中我們可以通過增加哈希次數(shù)來提高數(shù)據(jù)的安全性。當然,對密碼的哈希操作應(yīng)該在保存數(shù)據(jù)之前。 showImg(https://segmentfault.com/img/remote/1460000010821081); 毫無疑問,幾乎所有的應(yīng)用都會涉及到數(shù)據(jù)存儲。但是 Express 框架本身只能通過程序變量來保存數(shù)據(jù),它并不提供數(shù)據(jù)持久化功能。而僅僅通過內(nèi)存來保存數(shù)據(jù)是無法應(yīng)對...

    yanbingyun1990 評論0 收藏0
  • 初識MongoDB分片

    摘要:復(fù)制一份,命名為,修改文件內(nèi)容如下注意改為我們第一步創(chuàng)建的目錄,端口號改為這個隨意,只要該端口沒被占用即可,表示這是一個配置服務(wù)器,另外由于我們的配置服務(wù)器要做成備份集,所以要設(shè)置。 分片是指將數(shù)據(jù)拆分,拆分后存放在不同的機器上的過程,以此來降低單個服務(wù)器的壓力,同時也解決單個服務(wù)器硬盤空間不足的問題,讓我們可以用廉價的機器實現(xiàn)高性能的數(shù)據(jù)架構(gòu)。有的小伙伴不理解分片和副本集的差異,一言...

    Nino 評論0 收藏0
  • Express使用mongodb管理會話儲存 connect-mongo模塊簡介

    摘要:簡介在我的前一篇小文中小書提到了可以更換會話儲存那么這篇文章我們就來講講在進行會話管理的時候如何將會話數(shù)據(jù)保存在外部數(shù)據(jù)庫中本文中我們使用用作會話儲存數(shù)據(jù)庫本文中使用的模塊以及版本號一覽模塊名稱版本號特性支持支持所有版本的支持支持 簡介 在我的前一篇小文中express-session小書提到了express-session可以更換會話儲存. 那么這篇文章我們就來講講express在進...

    jackzou 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<