• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Tim Cooke
  • Liutauras Vilda
  • Jeanne Boyarsky
  • paul wheaton
Sheriffs:
  • Ron McLeod
  • Devaka Cooray
  • Henry Wong
Saloon Keepers:
  • Tim Holloway
  • Stephan van Hulst
  • Carey Brown
  • Tim Moores
  • Mikalai Zaikin
Bartenders:
  • Frits Walraven

Running servlet from bean

 
Ranch Hand
Posts: 360
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi,
We have
01. Data access class ( bean ) to connect to database, execute query and return recordset.
02. Class ( bean ) which prepares the dynamic SQL statement based on business logic. This class calls Data access class methods to connect to database, prepare statement and execute.
To improve the performance we would like to add database connection pool in Data access class (bean). Since Servlet�s INIT menthod is the best palce to create connection pool we are planning to make Data access class servlet instead of bean.
My question is can we run the servlet from class ( bean ) mentioned in #2. For testing purpose I tried the following code but it�s not working.
import javax.servlet.*;
import javax.servlet.http.*;
class Servlet1 extends HttpServlet {
String message;
public void init(ServletConfig config) throws ServletException {
message = "Done";
}
public void displayMessage () {
System.out.println(message);
}
}
public class ServletTest {
public static void main(String args[]) {
Servlet1 S = new Servlet1();
S.displayMessage();
}
}
Thanks
Dilip
 
Ranch Hand
Posts: 1467
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Dilip,
I think it is the other way round. Write your connectionPool as a Java class and test independently. Now in all your servlets which want to share a connectionPool object, do this logic.
In all servlet's init() check if there is a ConnectionPool obj in servletContext. If it is not there, then create a ConnecitonPool and sponsor to other servlets which are in same web application also by putting in ServletContext.
The same procedure is done in all other servlet's init(). So whichever servlet sees first time , there is no common ConnectionPool in sevlet context, creates a fresh one and delegates to others. From then onwards, others will just use the connection pool. This procedure I used and found it useful.
 
If you have a bad day in October, have a slice of banana cream pie. And this tiny ad:
Gift giving made easy with the permaculture playing cards
https://coderanch.com/t/777758/Gift-giving-easy-permaculture-playing
reply
    Bookmark Topic Watch Topic
  • New Topic