Отображать даты из базы данных MySQL в jcalendar с другим цветом

`

      Class.forName(driver);
      con = DriverManager.getConnection(url+db, user, pass);
      Statement st = con.createStatement();
      ResultSet rs=st.executeQuery("select date from profile");
      ResultSetMetaData metadata = rs.getMetaData();
      int columnCount = metadata.getColumnCount();
      Date str[] = new Date[columnCount];
      int a=0;

получение даты в массив

      while(rs.next()){

      str[a++]=rs.getDate("date");
       }

установка цвета

  Calendar cal = Calendar.getInstance();
  cal.setTime(jCalendar1.getDate());
  int day = cal.get(Calendar.DAY_OF_MONTH);
  int month = cal.get(Calendar.MONTH);
  int year = cal.get(Calendar.YEAR);

  JPanel jpanel = jCalendar1.getDayChooser().getDayPanel();
  Component component[] = jpanel.getComponents();


for(int i = 0; i < columnCount; i++)
{

     if(month == str.get(i).getMonth() && year == str.get(i).getYear())
     {

          component[ str.get(i).getDay()].setBackground(Color.blue);
     }
}

     `

Я хочу отобразить некоторые даты, которые хранятся в базе данных MySQL другим цветом в jcalendar. Я искал, но не мог найти решение. Я новичок в Java, так что я не уверен, что это правильно. Я добавил код, который я пытался до сих пор. Он выдает ошибку в str.get(i), так как не может найти символ

1 ответ

Комбинируя ответ здесь с псевдокодом (так как вы не опубликовали свой код).

  1. Импортируйте даты из MySQL в список MySQLDataBeans или чего-либо еще.
  2. Установите цвет в соответствии с ответом выше для этих дат.

Это все, что вам нужно, но дайте мне знать, если вы все еще потеряны.

Другие вопросы по тегам