1

I could use some help how to get values from a mysql database, and parse it to a servlet, which opens a jsp file "Showlist.jsp" and have all the values as parameter.

My tabel in my database contains:

ID, Name, Initials, cpr, password, role. 

I have created 3 users in my system, and i want to show all users in a jsp file.

Right now i have 3 layers which contain the following classes:

View layer - html / jsp files

Function layer - Class function

Data layer - Class DAOoperator (Contains mysql statements. - Class DTOoperator (Which is my object with getter and setter methods) - class DataAccess (contains connection to mysql database)

All this is controlled by a servlet called Controller.

Is there an easy way to do this??

2 Answers 2

2

Never use Scriplet in 21st century instead use JavaServer Pages Standard Tag Library

For more about Oracle Tutorial - Using JSTL


Logic: Simply fetch the data form the database in Servlet and populate the data in a POJO class and set the final list of all the users as request attribute and finally forward the request to the JSP page.

Sample code:

User.java

public class User{ private String ID, Name, Initials, cpr, password, role; // getter and setter } 

Servlet:

List<User> list = new ArrayList<User>(); //fetch the record form database // populate the record in User POJO class // add the users in the list // finally set the list as request attribute request.setAttribute("users",list); // forward the request to the JSP request.getRequestDispatcher("/xyz.jsp").forward(request,response); 

xyz.jsp:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <table border="1"> <c:forEach items="${ requestScope.users}" var="user"> <tr> <td><c:out value="${user.ID }" /></td> <td><c:out value="${user.Initials }" /></td> <td><c:out value="${user.cpr }" /></td> <td><c:out value="${user.role }" /></td> </tr> </c:forEach> </table> 
Sign up to request clarification or add additional context in comments.

Comments

0

In the servlet you access the DAO and call the getUser() method which returns a list of user. Then you set the result to the request.

request.setAttribute("users", userList); 

In the jsp you can get it by:

 <% List<User> userList = (List<User>)request.getAttribute("users"); %> 

a better approach is to use jstl in the jsp instead of plain java code.

2 Comments

But, in the getUser() method in my DAO class, i should run a SElect * from tabel right?? and then what`?
Never suggest Scriplet in 21st century.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.