Struts 2.0 Hibernate 3.0 Integration Example
Struts 2.0 Hibernate 3.0 Integration Example
Hibernate 3.0 Integration Example using Struts 2.0 the following tool are required for run this example
- JDK 1.5
- MyEclipse IDE
- Server Tomcat 6.0
- Struts 2.0 jar file
- Ojdbc14.jar
- Oracle 10G
- Hibernate 3.0 jar file
Directory Structure of Fetch Data in Struts 2.0 and Hibernate3.0 Using MyEclipse IDE
index.jsp
<a href="fetch">UserList Data Fetch</a>
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping></web-app>
struts.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
<package name="demo" extends="struts-default">
<action name="fetch" class="org.r4r.UserListAction">
<result name="success">/fetch.jsp</result>
</action>
</package>
</struts>
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">
<!-- Generated by MyEclipse Hibernate Tools.-->
<hibernate-configuration>
<session-factory>
<property name="dialect">org.hibernate.dialect.Oracle9Dialect</property>
<property name="connection.url">jdbc:oracle:thin:@localhost:1521:xe</property>
<property name="connection.username">system</property>
<property name="connection.password">system</property>
<property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<mapping resource="fetch.hbm.xml"/>
</session-factory>
</hibernate-configuration>
fetch.hbm.xml
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- Generated by MyEclipse Hibernate Tools. -->
<hibernate-mapping>
<class name="org.r4r.UserList" table="userlist1">
<id name="id" type="int">
<generator class="increment"/>
</id>
<property name="name"/>
<property name="address"/>
<property name="city"/>
<property name="state"/>
</class>
</hibernate-mapping>
UserListAction.java
package org.r4r;
import java.util.List;
public class UserListAction{
private static final long serialVersionUID = 1L;
private UserList userlist;
private List<UserList> userlistlist;
DAO dao=new DAO();
public String execute(){
userlistlist=dao.list();
return "success";
}
public UserList getUserlist() {
return userlist;
}
public void setUserlist(UserList userlist) {
this.userlist = userlist;
}
public List<UserList> getUserlistlist() {
return userlistlist;
}
public void setUserlistlist(List<UserList> userlistlist) {
this.userlistlist = userlistlist;
}
}
UserList.java
package org.r4r;
public class UserList {
String name;
String address;
String city;
String state;
public UserList() {
super();
// TODO Auto-generated constructor stub
}
public UserList(String name, String address, String city, String state) {
super();
this.name = name;
this.address = address;
this.city = city;
this.state = state;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
public String getState() {
return state;
}
public void setState(String state) {
this.state = state;
}
}
DAO.java
package org.r4r;
import java.util.List;
import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
public class DAO {
@SuppressWarnings("unchecked")
public List<UserList> list(){
Configuration cfg=new Configuration().configure();
SessionFactory f=cfg.buildSessionFactory();
Session session=f.openSession();
Transaction t=session.beginTransaction();
List<UserList> userlistlist=null;
try{
Query q=session.createQuery("from UserList");
userlistlist=q.list();
}catch(HibernateException e){
System.out.println(e);
}
t.commit();
session.close();
return userlistlist;
}
}
<%@taglib uri="/struts-tags" prefix="s"%>
<table cellpadding="0" cellspacing="0" border="2" width="250">
<tr><td width="50">Name</td><td width="50">Address</td><td width="50">City</td><td width="50">State</td></tr>
<s:iterator value="userlistlist" var="userlist">
<tr>
<td width="50"><s:property value="name"/></td>
<td width="50"><s:property value="address"/></td>
<td width="50"><s:property value="city"/></td>
<td width="50"><s:property value="state"/></td>
</tr></s:iterator>
</table>
Output
