Hibernate CRUD

Hibernate CRUD example

hibernate.cfg.xml

  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">  
  3. <hibernate-configuration>  
  4.   <session-factory>  
  5.     <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>  
  6.     <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>  
  7.     <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/hibernatedemo</property>  
  8.     <property name="hibernate.connection.username">root</property>  
  9.     <property name="hibernate.connection.password">123</property>  
  10.     <mapping class="entity.Student" />  
  11.   </session-factory>  
  12. </hibernate-configuration>  

Student.java

  1. package entity;  
  2.   
  3. import java.io.Serializable;  
  4. import javax.persistence.*;  
  5.   
  6.   
  7. @Entity  
  8.   
  9. public class Student implements Serializable {  
  10.   
  11.     @Id  
  12.     @Column(name="id")  
  13.     private Integer id;  
  14.     @Column(name="name",length=100)  
  15.     private String username;  
  16.     @Column(name="email",length=100)  
  17.     private String email;  
  18.   
  19.     public String getEmail() {  
  20.         return email;  
  21.     }  
  22.   
  23.     public void setEmail(String email) {  
  24.         this.email = email;  
  25.     }  
  26.   
  27.     public Integer getId() {  
  28.         return id;  
  29.     }  
  30.   
  31.     public void setId(Integer id) {  
  32.         this.id = id;  
  33.     }  
  34.   
  35.     public String getUsername() {  
  36.         return username;  
  37.     }  
  38.   
  39.     public void setUsername(String username) {  
  40.         this.username = username;  
  41.     }  
  42.   
  43.   
  44. }  

HibernateUtil.java

  1. package util;  
  2.   
  3. import org.hibernate.SessionFactory;  
  4. import org.hibernate.cfg.AnnotationConfiguration;  
  5.   
  6.   
  7. public class HibernateUtil {  
  8.   
  9.     private static final SessionFactory sessionFactory;  
  10.   
  11.     static {  
  12.         try {  
  13.             sessionFactory = new AnnotationConfiguration().configure().buildSessionFactory();  
  14.         } catch (Exception ex) {  
  15.               
  16.             throw new ExceptionInInitializerError();  
  17.         }  
  18.     }  
  19.   
  20.     public static SessionFactory getSessionFactory() {  
  21.         return sessionFactory;  
  22.     }  
  23. }  

AddStudentServlet.java

  1. package servlet;  
  2.   
  3. import java.io.IOException;  
  4. import java.io.PrintWriter;  
  5. import javax.servlet.ServletException;  
  6. import javax.servlet.http.HttpServlet;  
  7. import javax.servlet.http.HttpServletRequest;  
  8. import javax.servlet.http.HttpServletResponse;  
  9. import org.hibernate.*;  
  10. import util.HibernateUtil;  
  11. import entity.*;  
  12.   
  13.   
  14. public class AddStudentServlet extends HttpServlet {  
  15.   
  16.     @Override  
  17.     protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {  
  18.   
  19.         Session session = HibernateUtil.getSessionFactory().openSession();  
  20.         Transaction transaction = session.beginTransaction();  
  21.   
  22.         Student student = new Student();  
  23.         student.setId(3);  
  24.         student.setUsername("sameera5");  
  25.         student.setEmail("jaya@yahoo.com5");  
  26.   
  27.         session.save(student);  
  28.         transaction.commit();  
  29.         session.close();  
  30.     }  
  31.   
  32.     @Override  
  33.     protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {  
  34.     }  
  35. }  

UpdateStudentServlet.java

  1. package servlet;  
  2.   
  3. import java.io.IOException;  
  4. import java.io.PrintWriter;  
  5. import javax.servlet.ServletException;  
  6. import javax.servlet.http.HttpServlet;  
  7. import javax.servlet.http.HttpServletRequest;  
  8. import javax.servlet.http.HttpServletResponse;  
  9. import org.hibernate.*;  
  10. import util.HibernateUtil;  
  11. import entity.Student;  
  12.   
  13.   
  14. public class UpdateStudentServlet extends HttpServlet {  
  15.   
  16.     @Override  
  17.     protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {  
  18.         Session session = HibernateUtil.getSessionFactory().openSession();  
  19.         Transaction transaction = session.beginTransaction();  
  20.   
  21.         Student s = (Student) session.get(Student.classnew Integer(1));  
  22.         System.out.println(s.getUsername());  
  23.         if (s != null) {  
  24.   
  25.             s.setEmail("sampatjhh");  
  26.             s.setUsername("sampath");  
  27.             session.update(s);  
  28.         }  
  29.   
  30.   
  31.         transaction.commit();  
  32.         session.close();  
  33.   
  34.   
  35.     }  
  36. }  

ViewStudentServlet.java

  1. package servlet;  
  2.   
  3. import java.io.IOException;  
  4. import java.io.PrintWriter;  
  5. import javax.servlet.ServletException;  
  6. import javax.servlet.http.HttpServlet;  
  7. import javax.servlet.http.HttpServletRequest;  
  8. import javax.servlet.http.HttpServletResponse;  
  9. import org.hibernate.*;  
  10. import util.HibernateUtil;  
  11. import entity.Student;  
  12. import java.util.List;  
  13.   
  14.   
  15. public class ViewStudentServlet extends HttpServlet {  
  16.   
  17.     
  18.     protected void processRequest(HttpServletRequest request, HttpServletResponse response)  
  19.             throws ServletException, IOException {  
  20.         PrintWriter out = response.getWriter();  
  21.   
  22.         Session session = HibernateUtil.getSessionFactory().openSession();  
  23.         Transaction transaction = session.beginTransaction();  
  24.   
  25.         Query query = session.createQuery("FROM Student");  
  26.   
  27.         List<Student> students = query.list();  
  28.   
  29.         for (Student student : students) {  
  30.   
  31.             out.print(student.getUsername());  
  32.   
  33.         }  
  34.   
  35.   
  36.         transaction.commit();  
  37.         session.close();  
  38.     }  
  39.   
  40.     // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">  
  41.     /**  
  42.      * Handles the HTTP <code>GET</code> method. 
  43.      * @param request servlet request 
  44.      * @param response servlet response 
  45.      * @throws ServletException if a servlet-specific error occurs 
  46.      * @throws IOException if an I/O error occurs 
  47.      */  
  48.     @Override  
  49.     protected void doGet(HttpServletRequest request, HttpServletResponse response)  
  50.             throws ServletException, IOException {  
  51.         processRequest(request, response);  
  52.     }  
  53.   
  54.     /**  
  55.      * Handles the HTTP <code>POST</code> method. 
  56.      * @param request servlet request 
  57.      * @param response servlet response 
  58.      * @throws ServletException if a servlet-specific error occurs 
  59.      * @throws IOException if an I/O error occurs 
  60.      */  
  61.     @Override  
  62.     protected void doPost(HttpServletRequest request, HttpServletResponse response)  
  63.             throws ServletException, IOException {  
  64.         processRequest(request, response);  
  65.     }  
  66.   
  67.     /**  
  68.      * Returns a short description of the servlet. 
  69.      * @return a String containing servlet description 
  70.      */  
  71.     @Override  
  72.     public String getServletInfo() {  
  73.         return "Short description";  
  74.     }// </editor-fold>  
  75. }  

DeleteServlet.java

  1. package servlet;  
  2.   
  3. import java.io.IOException;  
  4. import java.io.PrintWriter;  
  5. import javax.servlet.ServletException;  
  6. import javax.servlet.http.HttpServlet;  
  7. import javax.servlet.http.HttpServletRequest;  
  8. import javax.servlet.http.HttpServletResponse;  
  9. import org.hibernate.*;  
  10. import util.HibernateUtil;  
  11. import entity.Student;  
  12.   
  13.   
  14. public class DeleteServlet extends HttpServlet {  
  15.      
  16.   
  17.     @Override  
  18.     protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {  
  19.   
  20.         Session session = HibernateUtil.getSessionFactory().openSession();  
  21.         Transaction transaction = session.beginTransaction();  
  22.   
  23.         Student s=(Student) session.get(Student.classnew Integer(1));  
  24.         System.out.println(s.getUsername());  
  25.         session.delete(s);  
  26.         transaction.commit();  
  27.         session.close();  
  28.     }  
  29.   
  30.     @Override  
  31.     protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {  
  32.     }  
  33.   
  34. }  

1 comment:

  1. Hello Sameera,
    I have getting one problem in retrieving the data from database.
    In my database one column is att_date of Date type and I want to retrive the date beetween from_date to to_date.What hibernate query I used to retrive the date within the range.

    ReplyDelete