Back

Explore Courses Blog Tutorials Interview Questions
0 votes
2 views
in Java by (7k points)

I am designing a Java swing application. I want to experiment and use an MVC type of architecture whereby my UI is separated from the actual logic to access data and connect to a database. I have decided that I need to create a custom class that contains all the logic to connect to the database and then simply call methods from this class in my action event for any particular form and button. This way I can switch databases and all I need to do is change the JDBC connection string to connect oracle instead of MySQL. So far I have the code to connect to a database but I am trying to figure out how can I make this a class.

try

     {

         Class.forName("com.mysql.jdbc.Driver");

         Connection con=(Connection)DriverManager.getConnection("jdbc:mysql://localhost:3306/prototypeeop","root","triala");

         Statement stmt=con.createStatement();

         ResultSet rs=stmt.executeQuery(sql);

It will then return the result set from a member function of my connection class to process and display on the screen.

1 Answer

0 votes
by (7k points)

Just create a separate class and delegate to him a getting of connection to database:

public class ConnectionManager {

    private static String url = "jdbc:mysql://localhost:3306/prototypeeop";    

    private static String driverName = "com.mysql.jdbc.Driver";   

    private static String username = "root";   

    private static String password = "triala";

    private static Connection con;

    private static String urlstring;

    public static Connection getConnection() {

        try {

            Class.forName(driverName);

            try {

                con = DriverManager.getConnection(urlstring, username, password);

            } catch (SQLException ex) {

                // log an exception. fro example:

                System.out.println("Failed to create the database connection."); 

            }

        } catch (ClassNotFoundException ex) {

            // log an exception. for example:

            System.out.println("Driver not found."); 

        }

        return con;

    }

}

Then get the connection in a code as follows:
 

private Connection con = null;

private Statement stmt = null;

private ResultSet rs = null;

con = ConnectionManager.getConnection();

stmt = con.createStatement();

rs = stmt.executeQuery(sql);

Related questions

0 votes
1 answer
asked Apr 6, 2021 in Java by dante07 (13.1k points)
0 votes
1 answer
asked Aug 20, 2019 in Java by Krishna (2.6k points)
0 votes
0 answers
asked Feb 17, 2021 in Java by Harsh (1.5k points)

Browse Categories

...