如何创建此嵌套对象?

时间:2015-12-29 15:10:15

标签: java angularjs spring jpa nested

所以我的前端同事使用angular.uicalendar成功制作了这个很酷的日历,我试图使用java持久性和Spring MVC来适应后端。 Calendar对象本身有很多信息,他将它作为嵌套对象传递。

父对象似乎有一个“开始”和“结束”,它们是LocalDateTimes,标题是一个字符串。然后在其中,有一个Email对象(boolean sendEmail,int time(就像你希望它发送多长时间一样))然后在同一层上有一个文本对象,其中包含两个几乎完全相同的变量,但是对于文本,还有另一个叫做通知,它也是一样的,但是是否在网站上发布。这里有一个屏幕截图,显示它在前端的外观如果有帮助的话。

Screenshot of Calendar Object

所以我试图复制我的目标,以便我可以存储/编辑对象,我对如何继续感到困惑。我的独立研究表明我可以使用" @ Embedded"注解?我有一个有趣的建议是将参数变成Hashmap。"显然Spring应该可以解析它,如果我没有准备好存储它的特殊课程。但我确定那会是什么样子。我是否可以将对象存储在数据库中,并将此HashMap挂在它的末尾?目前我的calendarEvent类看起来是这样的,我试图理解这个Object的样子:

package com.theironyard.Entities;

import javax.persistence.*;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * Created by macbookair on 12/16/15.
 */

@Entity
@Table (name = "events")
public class CalendarEvent {
    @Id
    @GeneratedValue
    public int id;

    @Column(nullable = false)
    public LocalDateTime start;

    @Column(nullable = false)
    public LocalDateTime end;

    @Column(nullable = false)
    public String title;

    //possibly use @Embedded here ?
    public Object email() {
        boolean send;
        int time; // hours before sending email
        return email();
    }

    public Object text() {
        boolean send;
        int time;
        return text();
    }

    public Object notification() {
        boolean send;
        int time;
        return notification();
    }

    public CalendarEvent(int id, LocalDateTime start, LocalDateTime end, String title) {
        this.id = id;
        this.start = start;
        this.end = end;
        this.title = title;
    }

    public int getId() {
        return id;
    }

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

    public LocalDateTime getStart() {
        return start;
    }

    public void setStart(LocalDateTime start) {
        this.start = start;
    }

    public LocalDateTime getEnd() {
        return end;
    }

    public void setEnd(LocalDateTime end) {
        this.end = end;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }
}

所以我总结一下:什么是存储这个对象的最佳方式?我可以将主对象存储在数据库中,并挂起HashMap吗? 谢谢大家。

0 个答案:

没有答案