Implementing Connection interface

I am implementing my own Connection interface.
Most of my methods are implemented by delegating a "real" Connection object I receive from the JDBC driver, except the "close()" method where I instead of closing the connection return it back to the pool that I created.
Now when I do the following:
ConnectionPoolManager poolMan = ConnectionPoolManager.getInstance();
con = poolMan.getConnection(SI.getDataSourceName());
I get the connection and I can close it using
con.close();
My log4j successfuly reports that connection was returned to the pool.
Now the interesting part.
If I create a statement and the resultset from it and then close the connection using the following code:
st = con.createStatement(resultSetType, resultSetConcurrency);
rs = st.executeQuery(SQL)
rs.getStatement().getConnection().close();
It actually closes connection. It never executes my code that returns the connection back to the pool. I am using JBuilder and when I am tracing the code, it never goes into my Connection implementation.
Any help will be greatly appreciated

You need to create a ResultSet Manager, just like you did with the Connection interface.
Your problem here is the getConnection() method of the ResultSet interface returns an object that implements the original Connection interface, not one that applies to your purpose. Then, of course, you'll be able to use the original close() method.
When you create the ResulSet manager, overwrite the close() pattern, according to your programming pattern.
Cesar Villalta A.
[email protected]

Similar Messages

  • Connection interface

    Without implementing Connection interface in our class how we are using the some methods of that interface.
    eg.
    public class JDBCConnection
    public JDBCConnection()
    try
    Class.forName("com.mysql.jdbc.Driver").newInstance();
    con= DriverManager.getConnection("jdbc:mysql://192.168.1.80/bizicommerce","bipin","admin");
    st=con.createStatement();
    System.out.println("Connection Established");
    catch(Exception e)
    System.out.println("Exception in connection"+e.getMessage());
    Bipin.V
                        }

    Without implementing Connection interface in our
    class how we are using the some methods of that interface.Someone else did implement it (in this case: the MySQL staff).
    Edit: print the result of con.getClass().getName() to see what class provides the implementation.

  • Actual implementation of interfaces involved in JDBC connection creation

    Pl some body tell me where does the actual implementation of interfaces like connection,Statement,PreparedStatement..we use to to make a JDBC connection from a simple application or J2EE application.
    Thanks

    Hi sharma,
    JDBC API will be implemented by JDBC Driver vendors. For example Microsoft provide "com.microsoft.jdbc.sqlserver.SQLServerDriver" driver for SQL Server 2000. Similarly Oracle privide several JDBC Drivers to be used with Oracle databases.
    Sun has provided a JDBC-ODBC bridge (Driver) along with its JDK or JSDK. This driver is capable for connecting Java applications with any ODBC connection.
    Cuz this driver is included with the JDK/JSDK therefore you can use it to connect with for example MS Access DB or any other ODBC connected DB.
    If you want to connect your Java or J2EE application to some specific database then you should get the Driver for that particular database.
    regards,
    Humayun

  • Help! with creating a J2ME program using the http connectivity interface

    So this is what I have to do using the http connectivity interface:
    1.Creating two threads – one for communication (receiving and sending) and the other (main) thread will be for interaction with the user.
    2.The main thread will make use of three midlet forms. The first form will ask for web page address (URL) and separately for a delimiter which will separate the words in the URL document, the third form will display the ratio of all symbols on the page and the number of occurrences of the delimiter specified
    3.The second thread should perform http connectivity to the WWW, utilise the web page address supplied and connect to the appropriate web page and read its content, count all symbols on the chosen page, count the number of occurrences of the delimiter given as user input on the same form as the web page address, calculate the ratio between the two and pass this information to the first thread to display.
    I have many questions but my main concerns are:
    *1. How to communicate using HTTP interface within a thread*
    *2. What is a delimiter in the context above and how should it be implemented*
    I've been thrown in at the deep end with little programming experience with this assignment. If anyone can share a similar example or answer my concerns I'd be more than happy.
    Thanks in advance.

    thelane wrote:
    hi thanks for the response.
    As I said I have coded in other languages before, but this is a new for me in java. I needed to get it working quickley. Now I can clean up.
    I will have a look at method and see how I get on.
    ANy similiar examples would be great.
    Thanks.I can certainly give you a similar example.
    Say you have code such as this:
      int a = 10, b = 11;
      int temp = 1;
      for(int i = 2; i < a; ++i) {
       temp *= i;
      System.out.println(a + " factorial is " + temp);
      temp = 1;
      for(int i = 2; i < b; ++i) {
       temp *= i;
      System.out.println(b + " factorial is " + temp);Each section of code takes the factorial of the current variable an outputs it. The factorial code can be placed within a method to be called more easily, as such:
    public void factorial(int num) {
    int temp = 1;
    for(int i = 2; i < num; ++i) {
      temp *= i
    System.out.println(num + " factorial is " + temp);
    }Then, whenever you need to call it, you can just do so:
    int a=10,b=11,c=12;
    factorial(a);
    factorial(b);
    factorial(c);

  • Reg Implementing the interfaces in JDBC

    Hi,
    When we do a program that deals with database connectivity,we are not implementing the Interfaces like Statement,ResultSet.But we are using those
    interfaces inside our program.
    Can anybody justify how it is possible.
    Thanks in advance

    The DB vendors are responsible for providing implementation classes for these interfaces. That's why we need to keep DB specific jar files in CLASSPATH when we do DB activities..
    Gautam

  • Implementing DriverInterceptor interface

    Hi,
    I'd like to audit time spent inside the driver when executing specific methods, such as executeQuery. How can match between the start time and the end time? Do Weblogic created a dedicated instance for each thread? If no. how can I transfer the start time taken in preInvokeCallback method to the postInvokeCallback method?
    Thanks,
    Yoel

    You need to create a ResultSet Manager, just like you did with the Connection interface.
    Your problem here is the getConnection() method of the ResultSet interface returns an object that implements the original Connection interface, not one that applies to your purpose. Then, of course, you'll be able to use the original close() method.
    When you create the ResulSet manager, overwrite the close() pattern, according to your programming pattern.
    Cesar Villalta A.
    [email protected]

  • Implementing comboboxmodel interface

    If i was to implement this interface there is this method definition:
    public Object getSelectedItem() {
    How am i supposed to implement this method? How do i get the selected item.
    I dont want an alternative answer to this as it isnt a problem as such, im just curious as to how it is accomplished.
    Thanks
    Dave

    You need to create a ResultSet Manager, just like you did with the Connection interface.
    Your problem here is the getConnection() method of the ResultSet interface returns an object that implements the original Connection interface, not one that applies to your purpose. Then, of course, you'll be able to use the original close() method.
    When you create the ResulSet manager, overwrite the close() pattern, according to your programming pattern.
    Cesar Villalta A.
    [email protected]

  • Example class that implements Serializable interface

    Dear,
    I have a class myData that I want to implement Serializable interface. class myData has only two fields: Integer iData1, String sData2.
    Could anybody shown me how my myData class should be?
    Thanks a lot!

    Hey, if you have yet to obtain a remote reference from the app server ...then we are into pandora's box. I lost three whole heads of hair getting up on JBoss when I first started. You want to check out the JBoss forums on the JBoss website, and the enterprise javabeans forum here. Search some posts and read the free JBoss manual.
    Unfortunately, there isn't a 'here, do this' solution to getting connected with JBoss. There are quite a few gotcha's. There are descriptors, descriptor syntax ...and this changes between releases so there seems to be alot of people saying 'here, do this' ...but you try and it doesn't work (wrong release). Here are some descriptors that I threw up recently for someone ...a place to start.
    http://forum.java.sun.com/thread.jsp?forum=13&thread=414432
    This drove me nuts until it all worked right. I was stuck for three weeks at one point ...ready to give up, but then I got it. Perservere ...its a nice container for learning in (its free!).
    I will try and watch for you.
    Oh, and put something in your head ...at least then you will keep your hair !
    :)

  • How to implement XI interfaces in online and offline modes?

    Hi Everybody,
    Can you please tell me how to implement XI interfaces in online and offline modes?
    thanks a lot,
    Ramya Shenoy.

    Hi,
    Are you looking for Push and Pull mechanism of PI?
    When the adapters like SOAP, HTTP, IDOC, etc. send the data to PI , it is nothing but a push mechanism, and hence the communication is synchronous by default.
    But adapters like JDBC, File, etc. they fetch the data from Source Applications, so it is a kind of Pull mechanism for PI, and
    by default communication is asynchrnous.
    Pls elaborate exactly what are you looking for?
    Regards,
    Supriya.

  • Best way to implement connection pooling with tomcat4.0?

    Hi all!
    I need your help:
    What's the best way to implement connection pooling (Oracle Database) with tomcat 4.0?
    I only found ways to implement it in tomcat 4.1, not in 4.0....
    Thanks!
    Michael

    You can use a Datasource managed by tomcat. Earlier versions of tomcat used Exolab's Tyrex for the implementation of the Datasource API which uses connection pooling. Current version uses commons-dbcp and commons-pool (jakarta projects) I think.
    You've got to declare the Datasource in server.xml and then in web.xml of your web app.

  • How to find out in program which all classes have implemented an interface

    Hello,
    I have created an interface and few classes are implementing the interface.
    I want to know in a program which all class have implemented the interface.
    Is it possible to find it out and how?
    Regards,
    Bikash.

    Hi Bikash,
    Read the Database view VSEOIMPLEM with where condition REFCLSNAME = Interface Name and version = 1.
    This would give you all the classes which have implemented the interface and are active...
    If you want to look at the values that the field version can have then see Type Group SEOC ans search for version....
    Hope this help...
    Regards,
    Sitakant

  • How to get classes which implement the interface in program

    Hi,
    I created an interface and some classes are implementing it. I want to know in which classes the interface is implemented through program. I mean in which table the interface implemented details stores.
    please helps regarding this.
    Thanks,
    Regards,
    Priya

    Hi.,
    Read the  database view VSEOIMPLEM with where condition.,  REFCLSNAME =  <Interface Name> and Version = 1.
    This gives the class names which implement the interface.,
    hope this helps u.,
    Thanks & Regards,
    Kiran

  • Concrete classes implement abstract class and implements the interface

    I have one query..
    In java collection framework, concrete classes extend the abstract classes and implement the interface. What is the reason behind extending the class and implementing the interface when the abstract class actually claims to implement that interface?
    For example :
    Class Vector extends AbstractList and implements List ,....
    But the abstract class AbstractList implements List.. So the class Vector need not explicitly implement interface List.
    So, what is the reason behind this explicit definition...?
    If anybody knows please let me know..
    Thanx
    Rajendra.

    Why do you post this question again? You already asked this once in another thread and it has been extensively debated in that thread: http://forum.java.sun.com/thread.jsp?forum=31&thread=347682

  • Class constructor that implements an interface returns an  "interface", why

    Hi,
    I am studying some code that I need to understand well. This code works, I just don't understand the following:
    A class was defined extending an interface as so:
    public class GeometricShape implements Area {
    // constructor
    public GeometricShape() {
    System.out.println('bla);
    In another file, GeometricShape class was instantiated as follows:
    public class ExampleUse {
    Area g = new GeometricShape();
    My qustion is, why does the code above expects "new GeometricShape()" constructor to return an interface of type Area?
    Can someone explain?
    thanks

    Can someone explain?When a class implements an interface, or extends another class, or when a interface extends another interface, it means that anywhere an instance of the parent class or interface is expected, the child can be used.
    Wherever a Mammal is expected, you can provide a Dog or Cat or Whale or Human or NakedMoleRat. Each of those is a mammal.
    If you say "give me some food," and you don't specify anything else, the person you're talking to can hand you a hamburger or an apple or a bowl of rice. Any of those will meet the requirements you put forth.
    This is how the OO "is-a" relationship maps to Java.

  • Implementing SingleThradModel interface and synchronizing service

    Hi all,
    I came across the one question.
    What is difference between the implementing SingleThradModel interface and synchronizing service method in the Servlet?
    Which one is the better one? and why?
    It seems to be same for me... but still confused?
    Please explain me.
    Thanks,
    Rahul

    No one is better. Just write threadsafe code. E.g. do not declare instance variables which are to be used per request. Just keep in mind that only one instance of the Servlet will be created which lives as long as the webapplication runs and that it will be reused among all requests. Keep request scoped variables inside the method block and you're safe.

Maybe you are looking for