Servlet/JSP JDBC Example


For non-maven Project

In this example, we use maven-based project; in case you are not familiar with it; you can download the following jar files and add to WEB-INF\lib or {tomcat home directory}\lib folder :

Step 1 Create Database

In this example, I just use the default test database. Now we need to create user table:

Step 2 Create New Maven-based Dynamic Web Project

Step 2.1 Create New Project

Go to File->New->Others… Select Dynamic Web Project under Web category then click Next. Type ServletJDBC or whatever name you want in the Project name field.

Step 2.2 Configure Target Runtime

  • Click New Runtime… button under Target Runtime.
  • Select Apache Tomcat v7.0. Click Next.
  • Click Browse button to specify Tomcat Server installation directory. The select the folder then click Ok.
  • Click Installed JREs… button to add/remove or edit JRE definition. Remove existing one; then click Add button to configure new one. Select Standard VM; then click Next. Click Directory button to select the root folder of JDK installation. Select the folder then click Ok. Click Finish.
  • Check the JDK then click Ok.
  • Change JRE to the JDK then click Finish.
  • Click Finish the finish the project creation.

Step 2.3 Convert The Project To Maven Project

Right click to the project; select Configure->Convert to Maven Project. Eclipse will generate Project Object Model (pom.xml) file. Open the file by Eclipse text editor then paste the content below.

Note: you can create normal java project and add jar files to your project build path. But it’s easier & faster using maven as maven is integrated with Eclipse IDE; so you don’t need to manually install it. 

Step 3 Create Web Deployment Descriptor (web.xml)

You can create web.xml when creating project or do it later. Right click to the project; select Java EE Tools -> Generate Deployment Descriptor Stub to generate web.xml. Copy & paste the content below.

Step 4 Create Java Bean Class

Copy the below code; select your src folder in your project  and press CTRL + V to paste the code. Eclipse IDE will automatically create new class & package.

Step 5 Create DAO Classes

Create package name Under the package, create DAO interface & its implementation.

Step 5.1 Create UserDao Interface

Step 5.2 Create DAO Class

Step 5.3 Create DAO Factory Class

Step 6 Create Service Class

Create package name Under the package, create UserManagerService class.

Step 7 Create Servlet Controller Class

Copy the code below; Select src folder; press CTRL + V.

Step 8 Create JSP Pages

Right click to the project or WebContent folder; select new JSP file.

Step 8.1 listUsers.jsp

Step 8.2 editUser.jsp

Step 8.3 errors.jsp

Step 9 Clean & Build

Clean & build the project to download & add maven dependencies to the Project Build Path; also clean old classes file (if any) & force the IDE to recompile java code.

  • Go to Project on menu bar; select Clean…
  • Select Clean all projects (default)
  • Click Ok to proceed clean & build.

Step 10 Configure Tomcat

Select Servers window; in case it’s not there, go to Windows -> Show View-> Others… Select Server -> Servers; then click Ok.

If this is the first time you are creating a server, in the Servers area you will see a link as No servers are available click this link to create a new server. Click the link.

Define a New Server window will be opened, In Select the server type. Select Apache -> Tomcat v7.0 Server. Then click Finish.

Step 11 Deploy The Application

  • Right click to the Tomcat Server select Add and Remove.
  • Move the application (ServletJDBC) from Available column to Configured. Then click on Finish to deploy it to tomcat server.

Step 12 Start Tomcat Server

Right click on the tomcat server and choose Start or simply click on the green start icon to start the server.

Step 13 Run The Servlet

We assume that you install tomcat on default port (8080) and project name is ServletJDBC. Open web browser and type:



Click the link in Id columns to view detail & update (with underscore).


Change name to Mike T then click submit button.