Struts 2.0 Hibernate 3.0 Integration Example

Struts 2.0 Hibernate 3.0 Integration Example

Previous Home Next

 

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;
	}

}

fetch.jsp

<%@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




Previous Home Next