2017-11-02 3 views
0

Ich versuche, Daten aus einer Datenbank zu bekommen, aber es gibt keine (Tabelle ist leer), und ich will das. Aber wenn ich das mache value="<%=settingsList.get(0).getGitlabUrl()%>">Ich möchte null oder "". Wenn ich diesen Code ausführe, stürzt er ab, weil der Index 0 nicht existiert. Wie kann ich null erhalten, wenn es nichts auf der Liste gibt?So erhalten Sie Daten aus einer einfachen Liste

String user = session.getAttribute("loggedUser").toString(); 
SessionFactory factory = HibernateUtil.GetSessionFactory(); 
Session hibernateSession = factory.openSession(); 
Transaction tx = null; 
List settings = null; 
try { 
    tx = hibernateSession.beginTransaction(); 
    String hql = "FROM Settings s WHERE s.user= :user"; 
    Query query = hibernateSession.createQuery(hql); 
    query.setParameter("user", user); 
    List<Settings> settingsList = query.list(); 

<label for="link" class="form-control-label">GitLab Url</label> 
<input class="form-control" id="link" name="gitlabUrl" type="text" value="<%=settingsList.get(0).getGitlabUrl()%>"> 

Antwort

0

Wenn Sie testen müssen, ob die Liste leer ist, können Sie versuchen:
<%=settingsList.isEmpty() ? "" : settingsList.get(0).getGitlabUrl()%>
oder etwas Gleichwertiges in Abhängigkeit von der Definition Ihrer Liste.

+0

Ich möchte nicht überprüfen, ob Liste leer ist, sonst würde ich nur tun, wenn Größe> 0. Ich möchte in allen Feldern null erhalten. Ich möchte diesen Code nicht wirklich für alle Felder machen. – asdasd

+0

Nullen in allen Feldern? Welche Felder? Was ist der Link zum Aufruf einer Methode für das erste Element einer möglicherweise leeren Liste? – Anthed

+0

Dies soll die Daten aus einer Tabelle anzeigen. Aber bevor ich Daten in eine Tabelle einfüge, muss ich die Seite laden, um die Daten einzufügen. Deshalb möchte ich die Seite mit Nullwerten laden. – asdasd

Verwandte Themen