aspose file tools*
The moose likes EJB and other Java EE Technologies and the fly likes How to pass the DTO  to the dao implementention layer Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Spring in Action this week in the Spring forum!
JavaRanch » Java Forums » Java » EJB and other Java EE Technologies
Bookmark "How to pass the DTO  to the dao implementention layer" Watch "How to pass the DTO  to the dao implementention layer" New topic
Author

How to pass the DTO to the dao implementention layer

PavanPL KalyanK
Ranch Hand

Joined: Feb 28, 2009
Posts: 212
Can anybody please tell me :

How to pass the DTO data of an User Object will be passed to the DAO Layer?
Jimmy Clark
Ranch Hand

Joined: Apr 16, 2008
Posts: 2187
Why in the world would you want to pass DTO data to a DAO layer?
PavanPL KalyanK
Ranch Hand

Joined: Feb 28, 2009
Posts: 212
Let me explain

I have a JSP with all the fields and i in the servlet i am creating the DTO instance in the servlet and setting all the entered data in the setters of the User Object , Now i want to pass this data to the DAO Layer to perform a Insert operation .



public void setName(request.getParameter("Name"))
{
}



I am new to development .
Please tell me correct approach if i am wrong
Jimmy Clark
Ranch Hand

Joined: Apr 16, 2008
Posts: 2187
Can you describe the DAO layer that you have written? How does it work? What does it consist of?

If you can describe it, then maybe we can figure out to pass data to it.

Maybe something like the following will work for you.

DAO dao = new DAO();

dao.passDataToDAO(userObject);
PavanPL KalyanK
Ranch Hand

Joined: Feb 28, 2009
Posts: 212
James , thats what i was asking do we need to pass this DTO Object from the BusinessDelegade Layer to the DAO Implmentation Layer ??
PavanPL KalyanK
Ranch Hand

Joined: Feb 28, 2009
Posts: 212
please anybody on this ??
Jimmy Clark
Ranch Hand

Joined: Apr 16, 2008
Posts: 2187
do we need to pass this DTO Object from the BusinessDelegade Layer to the DAO Implmentation Layer ??


No, you do not "need" to pass this object. Why do you think you "need" to pass this object?
Again, can you describe what this "DAO layer" does? How does it work? Or, how did you design it?
PavanPL KalyanK
Ranch Hand

Joined: Feb 28, 2009
Posts: 212
This took time to repost

Let me explain

1. front end, I have a user input page

2.which takes the input params and calls DAO to update the data

I had implemented Using Hibernate



MY doubt is how the User Object is being passed to the DAO

where should i call all these ?

User user = new User()

user.setName(request.getParameter("UserName"))

inside the servlet which gets all the data from the JSP page or inside the DAO layer ??
Jimmy Clark
Ranch Hand

Joined: Apr 16, 2008
Posts: 2187
inside the servlet which gets all the data from the JSP page or inside the DAO layer ??


It depends. If you are creating a three-tier web application, then you would not have this in the servlet code. The three tiers are Presentation, Business and Integration. The user data is passed down from the Presentation tier to the Business tier. The User object would be created in whatever business logic code exists on the Business tier. The DAO code is part of the Business tier.

If you are not creating a three-tier application, then you basically can create the User object wherever you want to.

PavanPL KalyanK
Ranch Hand

Joined: Feb 28, 2009
Posts: 212

I am talking with respect to the three tier architecture only.

Now in this 3 tier architecture the User Object (The DTO object) will be created inside the DAO layer only?

This is what i understood (with respect to 3 tiers ) .Correct me if i am wrong .

Jimmy Clark
Ranch Hand

Joined: Apr 16, 2008
Posts: 2187
Understand that the DAO layer is part of the Business tier.

If you use the User object as both a business object and a DTO, then you will create the User object in the Presentation tier and pass this to the Business tier code. Once the User object is in the Business tier, it is no longer a DTO, it is a business object. If there is any business logic related to processing the User object, then this occurs. To move the data from the Business tier to the Integration tier, you pass the object to the DAO code, and the DAO code stores the record on some data storage device on the Itegration tier.
PavanPL KalyanK
Ranch Hand

Joined: Feb 28, 2009
Posts: 212

Thanks James , i got what you had specified .



Good Explanation.
 
 
subject: How to pass the DTO to the dao implementention layer