1 BO Are the classes, that represent entities in the business domain. (NOT EJBs, although BO persistence can be through EJBs.)
2 DAO The Persistence Objects for BOs. (In theory, if you are using EJBs, they serve as DAOs, although, this explanation violates the strict definition of DAO, and I might get flamed...) 3 VO == BO, although VOs can be assembled in a way, which does not reflect Business Entities any more. 4 DTO == VO packaging? Depends... I would put business logic in a separate layer (package) and invoke business logic delegate classes from the action classes. This decouples struts from your logic. Currently, we have a project, with the following structure: struts action package business delegate package session bean package entity bean package eg.: How you name the package, is actually up to you. Just do not name it java. or javax. or sun. (and of course, com.ms., and all those copyrighted thingies...) Tibor -----Ursprüngliche Nachricht----- Von: Vinay [mailto:[EMAIL PROTECTED]] Gesendet: Donnerstag, 23. Januar 2003 16:34 An: Struts Users Mailing List Betreff: Packaging struts business logic and action classes Can somebody please clarify or explain the following 1. Business Objects (BO's) 2. Data Access Objects (DAO's) 3. Value Objects (VO's) 4. Data transfer objects (DTO's) All of the above I know is part of the Model(M) in MVC architecture.I think that Value Objects and DTO's are the same , and they have setters and getters.Correct me if I am wrong. What is the general way of packaging a struts application? like if my companyname is www.companyname.neti will probably have an application or context as applicationname as its name. I would like my business logic to be independent from the struts specific controller(action classes) . I also know the package should start with net.companyname.applicationname. Thanks in advance. Help appreciated.