2012-05-28 6 views
1

У меня есть таблица «Расписание», как следующее:Как отобразить график

enter image description here

Я использую Hibernate в моем проекте. Поэтому, когда я запрашиваю эту таблицу, я получаю список, содержащий данные для класса, учителя, курса и комнаты. Но я столкнулся с проблемой, я не знаю способа распечатать расписание на экране, поскольку расписания обычно отображаются.

Расписания обычно отображаются следующим образом.

enter image description here

Можно ли решить мою эту проблему?

+0

Вы спрашиваете, как написать запрос, который создает данные, подходящие для отображения? Если да, покажите нам, как будет выглядеть такое расписание. –

+0

Я не спрашиваю о запросе. Я прошу показать его на консоли или на странице JSF. Я добавляю изображение расписания. – Ammar

+0

В каком поле таблицы есть информация дня (Moday, вторник и т. Д.)? –

ответ

0

Ваша таблица может быть представлена ​​в виде списка TimeSlot. Каждый объект TimeSlot в списке имеет timeRange (время начала и окончания) и 5 ​​событий (понедельник, четверг ...). TimeSlots имеют естественный порядок, который является упорядочением начала их временного диапазона.

Итерацию через все строки в таблице. Для каждой строки найдите существующий TimeSlot с тем же интервалом времени или создайте его, если он еще не существует, и сохраните его в списке временных интервалов. Затем установите соответствующее поле дня TimeSlot в зависимости от дня вашей строки. Сортировка списка.

После того, как у вас есть отсортированный список объектов TimeSlot, отображение таблицы - это всего лишь вопрос итерации по списку TimeSlot и создание одной строки таблицы в TimeSlot.

Смежные вопросы