Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
99 views

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
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
99 views

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
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
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