JSP не показывает данные, переданные JAVA сервлетомJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 JSP не показывает данные, переданные JAVA сервлетом

Сообщение Anonymous »

Я всего лишь новичок, практикующий интеграцию Hibernate с JSP и Servlet. Проблема возникла, когда я попытался получить данные из базы данных.
Как обычно, у меня есть класс сущности со всеми геттерами и сеттерами. Данные вводятся с другой страницы JSP, отправляются через другой сервлет и успешно сохраняются в базе данных. Но при получении информации на другую страницу JSP через другой сервлет я не получаю никаких результатов. Данные должны отображаться в общем блоке «карточки» из начальной загрузки. Вот код JSP, заголовок и содержимое которого теперь пусты. Частично проблема заключается в том, как мне получить геттеры [getTitle() и getContent()] из класса сущности для извлечения данных из объекта. Я все еще учусь, поэтому у меня так много путаницы.

Код: Выделить всё







All Notes







All Notes:











[url=#]Go[/url]







Я пробовал note.title, note.gettitle, note.getTitle(). Ничего не помогло. Там просто отображается пустое место, где должен был быть текст. Код сервлета следующий:

Код: Выделить всё

package com.servlets;

import java.io.IOException;
import java.util.List;

import org.hibernate.Session;
import org.hibernate.query.Query;

import com.entities.note;
import com.helper.factoryProvider;

import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;

@WebServlet(urlPatterns = "/ShowNoteServlet")
public class ShowNoteServlet extends HttpServlet {

@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("hello");
try {
Session session = factoryProvider.getFactory().openSession();
Query query = session.createQuery("from notes");
List list = query.list();
System.out.println(list);

req.setAttribute("notes", list);
req.getRequestDispatcher("all_notes.jsp").forward(req, resp);

session.close();
} catch (Exception e) {
e.printStackTrace();
}
}

}
Я поместил эти 2 абсурдных println(), чтобы проверить, работает ли код сервлета или нет, и да, даже несмотря на то, что tomcat запускал последний построенный военный файл, я бы в консоли тоже ничего не выводится.
Сейчас карты выглядят вот так. Предполагалось, что в таблице должно быть несколько карточек на основе нескольких строк записей. Для справки, это мой код объекта и структура каталогов:

Код: Выделить всё

package com.entities;

import java.util.Date;
import java.util.Random;

import jakarta.persistence.Entity;
import jakarta.persistence.Id;
import jakarta.persistence.Table;

@Entity
@Table(name = "notes")
public class note {
@Id
private int id;
private String title;
private String content;
private Date addedDate;

public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public Date getAddedDate() {
return addedDate;
}
public void setAddedDate(Date addedDate) {
this.addedDate = addedDate;
}

public note(String title, String content, Date addedDate) {
super();
this.id = new Random().nextInt(100000);
this.title = title;
this.content = content;
this.addedDate = addedDate;
}

public note() {
super();
}
}
Я был бы очень рад, если бы вы указали, где я делаю неправильно и как это исправить. Я видел, как люди писали весь запрос в виде скриптлета, но он выглядел неопрятно и не модульно. Это единственный способ? Или есть другой лучший и чистый способ сделать это?

Подробнее здесь: https://stackoverflow.com/questions/792 ... va-servlet
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»