Previous | Home | Next |
There is a code of Struts and hibernate connectivity ,Steps required are as follows: This example show how to create login form using struts and hibernate.
Creating
hibernate.cfg.xml file
<?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="Login.hbm.xml"/> </session-factory> </hibernate-configuration>
Login.hbm.xml file
<?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"> <!-- r4r.co.in. --> <hibernate-mapping> <class name="mypack.Login"> <id name="id"> <generator class="increment"/> </id> <property name="name"/> <property name="password"/> </class> </hibernate-mapping>
Login.java
package mypack; public class Login { int id; String name,password; public Login() { super(); } public Login(String name, String password) { super(); this.name = name; this.password = password; } 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 String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }
index.jsp
<%@taglib uri="/struts-tags" prefix="s"%> <s:form action="login"> <s:textfield name="name" label="Name"></s:textfield> <s:textfield name="password" label="Password"></s:textfield> <s:submit value="submit"></s:submit> </s:form>
a.jsp
successfully login
b.jsp
incorrect username or password
DAO class
package mypack; import java.util.Iterator; import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.cfg.Configuration; public class DAO { @SuppressWarnings("unchecked") public boolean find(String name,String password) { Configuration cfg=new Configuration().configure(); SessionFactory f=cfg.buildSessionFactory(); Session session=f.openSession(); //Scanner in=new Scanner(System.in); Query q=session.createQuery( "from Login e where e.name=? and e.password=?"); q.setParameter(0,name); q.setParameter(1,password); Iterator<Login> itr=q.iterate(); while(itr.hasNext()) { session.close(); return true; } session.close(); return false; } }
Struts.xml file
<?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="login" class="mypack.LoginAction"> <result name="success">/a.jsp</result> <result name="failure">/b.jsp</result> </action> </package> </struts>
LoginAction.java class
package mypack; public class LoginAction { Login l; String name; String password; public String execute() { DAO dao=new DAO(); if(dao.find(getName(), getPassword())) return "success"; else return "failure"; } public Login getL() { return l; } public void setL(Login l) { this.l = l; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }
Previous | Home | Next |