Tabel: login
columns { loginid INT primarykey AUTO INCREMENT,user_id varchar,password carchar }
Table: registration
columns {idreg INT primarykey AUTO INCREMENT,name varchar,loginid INT reference login table loginid,phone varchar,email varchar}
HibernateUtil.java
package myartgallery;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;
@SuppressWarnings("deprecation")
public class HibernateUtil {
private static final SessionFactory sessionFactory = buildSessionFactory();
private static SessionFactory buildSessionFactory() {
try {
// Create the SessionFactory from hibernate.cfg.xml
return new AnnotationConfiguration().configure()
.buildSessionFactory();
} catch (Throwable ex) {
System.err.println("Initial SessionFactory creation failed." + ex);
throw new ExceptionInInitializerError(ex);
}
}
public static SessionFactory getSessionFactory() {
return sessionFactory;
}
}
---------------------------------------------------------------------------------------------------
Login.java
package myartgallery;
import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Table;
import javax.persistence.Id;
@SuppressWarnings("serial")
@Entity
@Table(name = "login")
public class Login implements Serializable {
@Id
@GeneratedValue
@Column(name="loginid")
private long loginid;
@Column(name = "user_id")
private String user_id;
@Column(name = "password")
private String password;
/**
* @return the loginid
*/
public long getLoginid() {
return loginid;
}
/**
* @param loginid the loginid to set
*/
public void setLoginid(long loginid) {
this.loginid = loginid;
}
public String getUser_id() {
return user_id;
}
public void setUser_id(String user_id) {
this.user_id = user_id;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public Login(){}
public Login(String user_id,String password)
{
this.user_id=user_id;
this.password=password;
}
}
columns { loginid INT primarykey AUTO INCREMENT,user_id varchar,password carchar }
Table: registration
columns {idreg INT primarykey AUTO INCREMENT,name varchar,loginid INT reference login table loginid,phone varchar,email varchar}
HibernateUtil.java
package myartgallery;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;
@SuppressWarnings("deprecation")
public class HibernateUtil {
private static final SessionFactory sessionFactory = buildSessionFactory();
private static SessionFactory buildSessionFactory() {
try {
// Create the SessionFactory from hibernate.cfg.xml
return new AnnotationConfiguration().configure()
.buildSessionFactory();
} catch (Throwable ex) {
System.err.println("Initial SessionFactory creation failed." + ex);
throw new ExceptionInInitializerError(ex);
}
}
public static SessionFactory getSessionFactory() {
return sessionFactory;
}
}
---------------------------------------------------------------------------------------------------
Login.java
package myartgallery;
import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Table;
import javax.persistence.Id;
@SuppressWarnings("serial")
@Entity
@Table(name = "login")
public class Login implements Serializable {
@Id
@GeneratedValue
@Column(name="loginid")
private long loginid;
@Column(name = "user_id")
private String user_id;
@Column(name = "password")
private String password;
/**
* @return the loginid
*/
public long getLoginid() {
return loginid;
}
/**
* @param loginid the loginid to set
*/
public void setLoginid(long loginid) {
this.loginid = loginid;
}
public String getUser_id() {
return user_id;
}
public void setUser_id(String user_id) {
this.user_id = user_id;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public Login(){}
public Login(String user_id,String password)
{
this.user_id=user_id;
this.password=password;
}
}
----------------------------------------------------------------------------------------------------------
LoginAction.java
package myartgallery;
import java.util.List;
import com.opensymphony.xwork2.ActionSupport;
@SuppressWarnings("serial")
public class LoginAction extends ActionSupport {
private List<Login> loginList;
private String sid;
private String spwd;
public List<Login> getLoginList() {
return loginList;
}
public void setLoginList(List<Login> loginList) {
this.loginList = loginList;
}
public String getSid() {
return sid;
}
public void setSid(String sid) {
this.sid = sid;
}
public String getSpwd() {
return spwd;
}
public void setSpwd(String spwd) {
this.spwd = spwd;
}
public String execute() {
return SUCCESS;
}
public String login() {
LoginManager loginManager = new LoginManager();
try {
loginList = loginManager.list(sid, spwd);
System.out.println("execute called");
System.out.println(loginList);
for (Login login : loginList) {
if((login.getPassword()).equals(spwd) && (login.getUser_id().equals(sid)));
return "success";
}
} catch (Exception e) {
System.out.println(e.getMessage());
return "error";
}
return "error";
}
}
---------------------------------------------------------------------------------------------------------
LoginManager.java
package myartgallery;
import java.util.List;
import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
public class LoginManager extends HibernateUtil{
@SuppressWarnings("unchecked")
public List<Login> list(String sid,String spwd) {
Session session = HibernateUtil.getSessionFactory().getCurrentSession();
session.beginTransaction();
List<Login> contacts = null;
try {
String hql = "FROM Login R WHERE R.user_id = :sid AND R.password = :spwd";
Query query = session.createQuery(hql);
query.setParameter("sid",sid);
query.setParameter("spwd",spwd);
contacts = query.list();
/*contacts = (List<Emp>)session.createQuery("from Emp e where e.id=:searchid").setParameter("searchid",searchid).list();*/
session.getTransaction().commit();
return contacts;
}
catch (HibernateException e) {
e.printStackTrace();
session.getTransaction().rollback();
}
session.getTransaction().commit();
return contacts;
}
}
-----------------------------------------------------------------------------------------------------
Registration.java
package myartgallery;
import java.io.Serializable;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.JoinColumn;
import javax.persistence.OneToOne;
import javax.persistence.Table;
import javax.persistence.Id;
@SuppressWarnings("serial")
@Entity
@Table(name="Registration")
public class Registration implements Serializable{
@Id
@GeneratedValue
@Column(name="idreg")
private long idreg;
@Column(name="name")
private String name;
@Column(name="phone")
private String phone;
@Column(name="email")
private String email;
@OneToOne(cascade=CascadeType.ALL)
@JoinColumn(name="loginid")
private Login login;
public long getIdreg() {
return idreg;
}
public void setIdreg(long idreg) {
this.idreg = idreg;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public Login getLogin() {
return login;
}
public void setLogin(Login login) {
this.login = login;
}
public Registration(){}
public Registration(String name, String password, String email,String phone, Login login)
{
this.name=name;
this.email=email;
this.phone=phone;
this.login=login;
}
}
-----------------------------------------------------------------------------------------------------------
RegistrationAction.java
package myartgallery;
import com.opensymphony.xwork2.ActionSupport;
public class RegistrationAction extends ActionSupport {
/**
*
*/
private static final long serialVersionUID = -4968983731735129524L;
/**
*
*/
private RegManager regManager;
private Registration reg;
private Login log;
public Login getLog() {
return log;
}
public void setLog(Login log) {
this.log = log;
}
public RegManager getRegManager() {
return regManager;
}
public void setRegManager(RegManager regManager) {
this.regManager = regManager;
}
public Registration getReg() {
return reg;
}
public void setReg(Registration reg) {
this.reg = reg;
}
public RegistrationAction()
{
regManager = new RegManager();
}
public String execute() {
try {
System.out.println(getReg());
regManager.updateReg(getReg());
System.out.println("SUCCESS");
} catch (Exception e) {
System.out.println("Exception occured. "+e.getMessage());
e.printStackTrace();
}
return SUCCESS;
}
}
-----------------------------------------------------------------------------------------------------------------
RegManager.java
package myartgallery;
import org.hibernate.Session;
public class RegManager extends HibernateUtil {
public Registration updateReg(Registration reg) {
Session session = HibernateUtil.getSessionFactory().getCurrentSession();
session.beginTransaction();
session.save(reg);
session.getTransaction().commit();
return reg;
}
}
----------------------------------------------------------------------------------------------------------------------
welcome.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!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=ISO-8859-1">
<title>Registration</title>
</head>
<body>
<h2>Registration</h2>
<s:form action="form1" method="post">
<s:textfield name="reg.name" label="User Name"></s:textfield>
<s:textfield name="reg.login.user_id" label="user id"></s:textfield>
<s:textfield name="reg.login.password" label="Password"></s:textfield>
<s:textfield name="reg.phone" label="Phone"></s:textfield>
<s:textfield name="reg.email" label="Email"></s:textfield>
<s:submit value="Register" align="center" />
</s:form>
</body>
</html>
------------------------------------------------------------------------------------------------------------------------
LoginPage.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!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=ISO-8859-1">
<title>HIBERNATE example</title>
</head>
<body>
<s:form action="form2" method="post">
<s:textfield name="sid" label="User Name"></s:textfield>
<s:textfield name="spwd" label="Password"></s:textfield>
<s:submit value="login" align="center" />
</s:form>
</body>
</html>
------------------------------------------------------------------------------------------------------------------
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="connection.driver_class">
com.mysql.jdbc.Driver
</property>
<property name="connection.url">
jdbc:mysql://localhost:3306/myartgallery
</property>
<property name="connection.username">root</property>
<property name="connection.password">root</property>
<property name="connection.pool_size">10</property>
<property name="dialect">
org.hibernate.dialect.MySQLDialect
</property>
<property name="current_session_context_class">thread</property>
<property name="cache.provider_class">
org.hibernate.cache.NoCacheProvider
</property>
<property name="show_sql">true</property>
<property name="hbm2ddl.auto">update</property>
<mapping class="myartgallery.Registration" />
<mapping class="myartgallery.Login" />
</session-factory>
</hibernate-configuration>
--------------------------------------------------------------------------------------------------------------
struts.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="myartgallery" extends="struts-default" >
<action name="form1"
class="myartgallery.RegistrationAction" method="execute">
<result name="success">first.jsp</result>
</action>
<action name="form2"
class="myartgallery.LoginAction" method="login">
<result name="success">success.jsp</result>
</action>
</package>
</struts>
-----------------------------------------------------------------------------------------------------------------
No comments:
Post a Comment