0% found this document useful (0 votes)
93 views9 pages

DataBase - Source Code

The document describes how to add a new product to a database using Hibernate. It includes the EProduct entity class with fields for id, name, and price. It also includes servlets for adding and listing products, a Hibernate utility class to build the session factory, and HTML pages for the add product form and homepage.

Uploaded by

sagar salanke
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
Download as pdf or txt
0% found this document useful (0 votes)
93 views9 pages

DataBase - Source Code

The document describes how to add a new product to a database using Hibernate. It includes the EProduct entity class with fields for id, name, and price. It also includes servlets for adding and listing products, a Hibernate utility class to build the session factory, and HTML pages for the add product form and homepage.

Uploaded by

sagar salanke
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 9

Adding a New Product in the Database

EProduct.Java
package com.simplilearn.entity;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;

@Entity
@Table(name="eproduct_10032022")
public class EProduct {

@Id
@GeneratedValue
@Column(name="employee_id")
private int id;

@Column(name="eproduct_name")
private String name;

@Column(name="eproduct_price")
private Double price;

// ALT +S+R
public int getId() {
return id;
}

public void setId(int id) {


this.id = id;
}

public String getName() {


return name;
}

public void setName(String name) {


this.name = name;
}
public Double getPrice() {
return price;
}

public void setPrice(Double price) {


this.price = price;
}

Servlet: AddProductServlet
package com.simplilearn.servlet;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;

import com.simplilearn.entity.EProduct;
import com.simplilearn.util.HibernateUtil;

/**
* Servlet implementation class AddProductServlet
*/
@WebServlet("/add-product")
public class AddProductServlet extends HttpServlet {
private static final long serialVersionUID = 1L;

/**
* @see HttpServlet#HttpServlet()
*/
public AddProductServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

request.getRequestDispatcher("add-product.html").include(request, response);
}

/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

PrintWriter pw = response.getWriter();

pw.println("<html><body>");

String name = request.getParameter("name");


String price = request.getParameter("price");

// STEP 1: Gets SessionFactory Object


SessionFactory sf = HibernateUtil.buildSessionFactory();

// STEP 2: Open Sesson


Session session = sf.openSession();

Transaction tx = session.beginTransaction();
EProduct ep = new EProduct();
ep.setName(name);
ep.setPrice(Double.valueOf(price));

session.save(ep);

tx.commit();

pw.println("<h3 style=color:green'> Product is created successfully ! </h3>");

session.close();

}
}

Servlet: ListProductServlet
package com.simplilearn.servlet;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.hibernate.Session;
import org.hibernate.SessionFactory;

import com.simplilearn.entity.EProduct;
import com.simplilearn.util.HibernateUtil;

/**
* Servlet implementation class ListProductServlet
*/
@WebServlet("/read-product")
public class ListProductServlet extends HttpServlet {
private static final long serialVersionUID = 1L;

/**
* @see HttpServlet#HttpServlet()
*/
public ListProductServlet() {
super();
// TODO Auto-generated constructor stub
}

/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

PrintWriter out = response.getWriter();


out.println("<html><body>");
SessionFactory sf = HibernateUtil.buildSessionFactory();
Session session = sf.openSession();

/*
* HQL - Hibernate Query Language. This is very similar to SQL language, only
* difference is Instead of Table name you need to refer EntityName
*
*/
List<EProduct> products = session.createQuery(" from EProduct").list();
out.println("<h1> Product List :- </h1>");
out.println("<style> table,td,th {border:1px solid green;
padding:10px;}</style>");
out.println("<table>");

out.println("<tr>");
out.print("<th> Product ID </th>");
out.print("<th> Product Name </th>");
out.print("<th> Product Price </th>");
out.print("</tr>");

for (EProduct p : products) {


out.print("<tr>");
out.print("<td>" + p.getId() + "</td>");
out.print("<td>" + p.getName() + "</td>");
out.print("<td>" + p.getPrice() + "</td>");
out.print("</tr>");
}
out.print("</table>");
out.println("</body></html>");
session.close();
}

/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}

}
Hibernate.java
package com.simplilearn.util;

import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;

import com.simplilearn.entity.EProduct;

public class HibernateUtil {

static SessionFactory sessionFactory;

public static SessionFactory buildSessionFactory() {

if (sessionFactory == null) {
Configuration cfg = new Configuration();
cfg.configure("hibernate.cfg.xml");
cfg.addAnnotatedClass(EProduct.class);

sessionFactory = cfg.buildSessionFactory();
}
return sessionFactory;
}
}

Hibernate.cfg.xml
<?xml version = "1.0" encoding = "utf-8"?>
<!DOCTYPE hibernate-configuration SYSTEM
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">

<hibernate-configuration>

<session-factory>

<property
name="hibernate.connection.driver_class">com.mysql.cj.jdbc.Driver</property>
<property
name="hibernate.connection.url">jdbc:mysql://localhost:3306/ecommerce</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">Pooja@1998</property>

<property name="hibernate.show_sql">true</property>
<property name="hibernate.format_sql">true</property>
<property name="hbm2ddl.auto">update</property>

</session-factory>
</hibernate-configuration>

add-product.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Add Product</title>
</head>
<body>

<h1>Add Product</h1>

<form action="add-product" method="post">


<fieldset>
<legend>Add Product Form</legend>

Product Name: <input type="text" name="name" id="name" /> <br>


<br> Product Price: <input type="text" name="price" id="price" /><br>
<br> <input type="submit" value="Add Product">
</fieldset>
</form>

</body>
</html>

index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>

<h1>Welcome to hibernate CRUD application</h1>


<nav>
<a href="add-product">Add Product</a>||
<a href="read-product"> Read Product</a>
</nav>

</body>
</html>

Pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>MPhasis_Feb_Hibernate</groupId>
<artifactId>MPhasis_Feb_Hibernate</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>

<dependencies>
<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
<scope>provided</scope>
</dependency>

<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->


<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.28</version>
</dependency>

<!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-core -->


<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>5.6.5.Final</version>
</dependency>

</dependencies>

<build>
<sourceDirectory>src</sourceDirectory>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>3.2.1</version>
<configuration>
<warSourceDirectory>WebContent</warSourceDirectory>
</configuration>
</plugin>
</plugins>
</build>
</project>

You might also like