Я застрял в кажущейся простой проблеме часами, и я просто не могу найти решение. Я пытаюсь реализовать очень простой Форум в Java, и я пытаюсь загрузить записи в данный момент.Получение данных в JList через JDBC - Недостающее звено
Мой форум - это JList, который заполнен JPanels и принимает записи через JLists DefaultListModel
и метод addMessage
. Так что, если я добавляю запись без базы данных выглядит следующим образом:
MessageList m = new MessageList();
m.addMessage("NAME AUTOR", "<html><body style='width: 675px;'>Lorem ipsum dolor sit amet.", "22.01.13", "SOA");
messageList выглядит следующим образом:
public class MessageList extends JList{
DefaultListModel messageModel = new DefaultListModel();
MessageRenderer messageRenderer = new MessageRenderer();
public MessageList(){
this.setCellRenderer(messageRenderer);
this.setModel(messageModel);
}
public void addMessage(String author, String text, String date, String tag){
messageModel.addElement(new Message(author, text, date, tag));
}
}
Я также написал код для получения ArrayList
(так называемый allBtr
) с объектами почтовых сообщений (называемых ConBeitrag
) из базы данных:
ArrayList<ConBeitrag> allBtr = new ArrayList<ConBeitrag>();
ConBeitrag conBtr = new ConBeitrag();
try {
allBtr = conBtr.getAllBtr();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
объектов сообщения выглядеть следующим образом:
public class ConBeitrag {
private int beitragid;
private int projektid;
private int mitarbeiterid;
private String beitragText;
private String erstellt_am;
private String geaendert_am;
private String schlagwort1;
private String schlagwort2;
private MdBeitrag mdBtr = new MdBeitrag();
public ConBeitrag(){
}
public ConBeitrag(int beitragid, int projektid, int mitarbeiterid, String beitragText, String erstellt_am, String geaendert_am){
this.beitragid = beitragid;
this.projektid = projektid;
this.mitarbeiterid = mitarbeiterid;
this.erstellt_am = erstellt_am;
this.geaendert_am = geaendert_am;
this.beitragText = beitragText;
this.schlagwort1 = schlagwort1;
this.schlagwort2 = schlagwort2;
}
public ArrayList<ConBeitrag> getAllBtr() throws SQLException{
MdBtrInterface modInt;
modInt = new MdBeitrag();
ArrayList<ConBeitrag> AlBtr = modInt.getAllBtr();
for(ConBeitrag object: AlBtr){
System.out.println(object.beitragText);
}
return AlBtr;
}
}
Теперь, что было бы разумным способом, чтобы получить ArrayList
в форме, я могу передать в метод addMessage
? Я подошел к этому с конца GUI, а затем из базы данных, и теперь я застрял посередине.
Перезапись ToString() метод:
@Override
public String toString() {
return mitarbeiterid + beitragstext + erstellt_am + schlagwort1 + schlagwort2;
}
Является ли сообщение «ConBeitrag» «на каком-либо другом языке? –
Да, некоторые термины немецкие. «ConBeitrag» более или менее «ConMessage». – cflx
Что происходит, когда вы пытаетесь использовать 'addMessage()'? –