Ребята, прошу прояснить следующее: в моем веб-приложении имеются три простых запроса к БД SELECT, INSERT и UPDATE.
Соответственно имею три класса с разным функционалом к БД.
Пример SELECT:
class DirectorSelect{
public String selectDirectors() {
Connection koneksi = null;
Statement stat = null;
String str = "";
try{
Class.forName("com.mysql.jdbc.Driver");
koneksi = DriverManager.getConnection("jdbc:mysql://localhost/dbizza","root","");
stat = koneksi.createStatement();
ResultSet hasil = stat.executeQuery("SELECT * FROM directors");
while (hasil.next()) {
str = str + (hasil.getInt(1) + "\t" + hasil.getString(2)+ "\t" + hasil.getString(3)+ "\t" + hasil.getDate(4)+ "\t" + hasil.getString(5));
}
stat.close();
koneksi.close();
} catch (SQLException sqle) {
str = "SQLException error";
} catch (ClassNotFoundException cnfe) {
str = "ClassNotFoundException error";
}
return str;
}
И один сервлет:
public class DirectorsViewServlet extends HttpServlet {
public void doGet(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException {
res.setContentType("text/html");
PrintWriter out = res.getWriter();
DirectorSelect ds = new DirectorSelect();
out.println(ds.selectDirectors());
}
public void doPost(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException {
doGet(req, res);
}
}
Вопрос 1 как в сервлете при помощи
request.setAttribute();
request.getRequestDispatcher("index.jsp").forward(request, response);
передать значение метода в JSP.
Вопрос № 2 как реализовать оставшиеся два метода двух классов в сервлете, но что бы они выполнялись не все вместе, как на примере
пример:
request.setAttribute("p", new PrintText());
request.setAttribute("s", new ShowText());
request.setAttribute("е", new ShowText1());
request.getRequestDispatcher("index.jsp").forward(request, response);
а только по соответствующему запросу, возможно отправлялись на разные страницы jsp. Или прошу прояснить, что мое понимание логики работы сервлета не верное? Спасибо всем большое.