| Previous | Home | Next |
Step 1. First of all we need to create a web application for this we go in the file menu wizard -> click on the new Project -> click on java web and then java web application -> put the name on the required field -> select the server which we want to use here to build the project -> first select to hibernate and then select to struts framework. (if we do not add the struts framework then we can use this by the adding jar file directly) -> now click on finish.
hibernate.cfg.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/hibernate_pro</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">root</property>
</session-factory>
</hibernate-configuration>
Step 2. Now we create a table on the given database which we select on the configuration file.
create table AddStruts ( id int not null auto_increment primary key, fname varchar(50), lname varchar(50), mob varchar(50), address varchar(50), state varchar(50), city varchar(50), pin int(6) )
Step 3. Now we need to create a jsp page click on file menu wizard -> new file -> web and jsp -> put the name on the required field -> click on finish.
<%@taglib uri="/struts-tags" prefix="s" %>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title><s:text name="Welcome Page"/></title>
</head>
<body>
<s:form action="insert" method="post">
<s:textfield label="First Name" name="fname"/>
<s:textfield label="Last Name" name="lname"/>
<s:textfield label="Address" name="address"/>
<s:textfield label="State" name="state"/>
<s:textfield label="City" name="city"/>
<s:textfield label="Pin Code" name="pin"/>
<s:submit value="Submit"/>
</s:form>
</body>
</html>
Step 4. Now we need to create a package to store the action and pojo class. for this we need to go in the file menu wizard and -> click on new file -> search java and the opposite side click on package -> type the name of the package which we want -> click on finish.
Step 5. Now we need to create reverse eng file . Go in the file menu wizard -> new file click on -> hibernate and reverse eng file -> select table which we created in the database -> click on finsih.
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-reverse-engineering PUBLIC "-//Hibernate/Hibernate Reverse Engineering DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-reverse-engineering-3.0.dtd"> <hibernate-reverse-engineering> <schema-selection match-catalog="hibernate_pro"/> <table-filter match-name="AddStruts"/> </hibernate-reverse-engineering>
Step 5. Now create a pojo class on the created package. click on file menu wizard -> new file -> hibernate -> hibernate pojo class -> select package -> click on finish.
AddStrust.hbm.xml
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<!-- Generated 26 Dec, 2014 11:55:13 PM by Hibernate Tools 4.3.1 -->
<hibernate-mapping>
<class name="r4r.AddStruts" table="AddStruts" catalog="hibernate_pro" optimistic-lock="version">
<id name="id" type="java.lang.Integer">
<column name="id" />
<generator class="identity" />
</id>
<property name="fname" type="string">
<column name="fname" length="50" />
</property>
<property name="lname" type="string">
<column name="lname" length="50" />
</property>
<property name="mob" type="string">
<column name="mob" length="50" />
</property>
<property name="address" type="string">
<column name="address" length="50" />
</property>
<property name="state" type="string">
<column name="state" length="50" />
</property>
<property name="city" type="string">
<column name="city" length="50" />
</property>
<property name="pin" type="java.lang.Integer">
<column name="pin" />
</property>
</class>
</hibernate-mapping>
AddStrust.java
package r4r;
public class AddStruts implements java.io.Serializable {
private Integer id;
private String fname;
private String lname;
private String mob;
private String address;
private String state;
private String city;
private Integer pin;
public AddStruts() {
}
public AddStruts(String fname, String lname, String mob, String address, String state, String city, Integer pin) {
this.fname = fname;
this.lname = lname;
this.mob = mob;
this.address = address;
this.state = state;
this.city = city;
this.pin = pin;
}
public Integer getId() {
return this.id;
}
public void setId(Integer id) {
this.id = id;
}
public String getFname() {
return this.fname;
}
public void setFname(String fname) {
this.fname = fname;
}
public String getLname() {
return this.lname;
}
public void setLname(String lname) {
this.lname = lname;
}
public String getMob() {
return this.mob;
}
public void setMob(String mob) {
this.mob = mob;
}
public String getAddress() {
return this.address;
}
public void setAddress(String address) {
this.address = address;
}
public String getState() {
return this.state;
}
public void setState(String state) {
this.state = state;
}
public String getCity() {
return this.city;
}
public void setCity(String city) {
this.city = city;
}
public Integer getPin() {
return this.pin;
}
public void setPin(Integer pin) {
this.pin = pin;
}
}
Step 6. Now we need to create a java class for the creating the session with the hibernate. go in file menu wizard -> click on new file -> java -> java class -> put the name on the required field -> select to package -> finish.
HibernatePlug.java
package r4r;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
public class HibernatePlug
{
private static SessionFactory factory = getSessionFactory();
public static synchronized SessionFactory getSessionFactory()
{
try {
Configuration cfg = new Configuration();
cfg.configure("hibernate.cfg.xml");
SessionFactory sessionFactory = cfg.buildSessionFactory();
System.out.println(" ---------- Factory Object Created ------------");
return sessionFactory;
} catch (Throwable ex) {
System.err.println("Initial SessionFactory creation failed." + ex);
throw new ExceptionInInitializerError(ex);
}
}
public static SessionFactory getFactory() {
return factory;
}
}
Step 6. Now we need to create a action class. go in file menu wizard -> click on new file -> java -> java class -> put the name on the required field -> select to package -> finish.
AddData.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package R4R_Dao;
/**
*
* @author sarvesh
*/
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;
import com.opensymphony.xwork2.Preparable;
import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import R4R.AddStruts;
public class AddData extends ActionSupport implements ModelDriven, Preparable {
AddStruts employee;
SessionFactory sessionFactory = null;
Session session = null;
@Override
public String execute() {
try {
sessionFactory = new Configuration().configure().buildSessionFactory();
session = sessionFactory.openSession();
Transaction transaction = session.beginTransaction();
session.saveOrUpdate(employee);
transaction .commit();
System.out.println("Record Inserted Successfully");
} catch (HibernateException hibernateException) {
System.out.println(hibernateException.getMessage());
session.close();
return "ERROR";
}
return "SUCCESS";
}
@Override
public AddStruts getModel() {
return employee;
}
@Override
public void prepare() throws Exception {
employee = new AddStruts();
}
}
Step 7. Now we need to modified to the struts.xml file for making the action.
struts.xml
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<!-- Configuration for the default package. -->
<package name="default" extends="struts-default">
<action name="insert" class="R4R_Dao.AddData">
<result name="SUCCESS">/Success.jsp</result>
<result name="ERROR">/Error.jsp</result>
</action>
</package>
</struts>
Step 8. Now we need some another jsp file for performing the action so we need to create as we already to create a jsp page so follow that step.
index.jsp
<%@page contentType="text/html" pageEncoding="UTF-8" import="R4R_Dao.AddData"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<%@taglib prefix="s" uri="/struts-tags"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body><center>
<br> <br> <br> <br>
<h1 style="color:chocolate"> <s:property value="name"/> registered successfully !!</h1>
</center>
</body>
</html>
Step 9. Now we will run the project. so right click on the project node -> click on clean and build -> then run
Step 10. Now check to the database table.
| Previous | Home | Next |