SOLVED Project Three: Two-Tier Client-Server Application Development With MySQL and JDBC

Опубликовано: 17 Февраль 2026
на канале: Nexovolution
290
2

SOLVED CNT 4714 – Project Two – Fall 2023
Whatsapp +923054957063 for Solution


Title: “Project Three: Two-Tier Client-Server Application Development With MySQL and JDBC”
Points: 100 points
Due Date: Sunday October 29, 2023 by 11:59 pm (WebCourses Time)
Objectives: To develop a two-tier Java based client-server application interacting with a MySQL
database utilizing JDBC for the connectivity. This project is designed to give you some experience
using the various features of JDBC and its interaction with a MySQL DB Server environment.
Description: In this assignment you will develop a Java-based GUI front-end (client-side)
application that will connect to your MySQL server via JDBC.
You are to develop a Java application that will allow clients (the end-user) to execute commands
against a remote database. You will create a Java GUI-based application front-end that will accept
any MySQL DDL or DML command, pass this through a JDBC connection to the MySQL database
server, execute the statement and return the results to the client. Note that while technically your
application must be able to handle any DDL or DML command, we won’t actually use all of the
commands available in these sublanguages. For one thing, it would be quite rare to allow a client to
create a database or a table within a database. Note too, that the only DML command that uses the
executeQuery() method of JDBC is the Select command, all other DML and DDL commands
utilize executeUpdate(). Some screen shots of what your Java GUI front-end should look like
are shown below. Basically, this GUI is an extension of the GUI that was developed in the lecture
notes and is available on WebCourses as DisplayQueryResults.java. Your Java application must give
the user the ability to execute any SQL DDL or DML command for which the user has the correct
permissions. User information for connections will be maintained in properties files, but each user
must supply their username and password (for their MySQL server account) via the GUI for
verification purposes (more later). You will be able to start multiple instances of your Java application
and allow different clients to connect simultaneously to the MySQL DB sever, since the default
number of connections is set at 151 (See your Workbench options file under the networking tab). In
addition to the client interactions with your application, a background (business logic) transaction
logging operation will occur which keeps a running total of the number of queries and the number of
updates that have occurred via each user application (aggregate over all separate connections per
user). This is a separate database (i.e., a completely different database than any to which a client user
can connect), to which the application will connect, using special application-levels privileges in a
separate properties file. This separate properties file is not accessible by any end user. Each user
operation will cause the application to make this connection and update the operational logging
database table. More details on this aspect of the application are shown below and will be covered in
the Q&A sessions.
Once you’ve created your application, you will execute a sequence of DML and DDL commands and
illustrate the output from each in your GUI for three different users. For this project you will create,
in addition to the root user, two client users with limited permissions on the databases (see below).
The root user is assumed to have all permissions on the databases, any command they issue will be
executed. The client users will be far more restricted.
Page 1
Restrictions:

Your source files should begin with comments containing the following information:
/*
*/
Name: your name goes here
Course: CNT 4714 Fall 2023
Assignment title: Project 3 – A Two-tier Client-Server Application
Date: October 29, 2023
Class: name of class goes here
Your application must provide a user interface, similar to the one shown below, that will allow
any user the ability to connect to any database via properties files. Your application must
verify that the user credentials (username and password) entered via the interface match with
the user credentials found in the properties file that was selected via the interface. If the
credentials do no match, then no connection is established.