Admin.hbm.xml
Admin.java
login.jsp
<?
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" >
< hibernate-mapping >
< class name ="com.study.model.bean.Admin" table ="admin" >
< id name ="id" column ="id" >
< generator class ="native" />
</ id >
< property name ="name" column ="name" />
< property name ="password" column ="password" />
</ class >
</ hibernate-mapping >
<! DOCTYPE hibernate-mapping
PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd" >
< hibernate-mapping >
< class name ="com.study.model.bean.Admin" table ="admin" >
< id name ="id" column ="id" >
< generator class ="native" />
</ id >
< property name ="name" column ="name" />
< property name ="password" column ="password" />
</ class >
</ hibernate-mapping >
package
com.study.model.bean;
public class Admin ... {
private int id=0;
private String name="";
private String 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;
}
}
public class Admin ... {
private int id=0;
private String name="";
private String 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;
}
}
AdminDAO.java
package
com.study.dao;
import java.util.List;
import org.springframework.orm.hibernate3.HibernateTemplate;
import com.study.model.bean.Admin;
public class AdminDAO ... {
private HibernateTemplate hibernateTemplate;
public HibernateTemplate getHibernateTemplate() ...{
return hibernateTemplate;
}
public void setHibernateTemplate(HibernateTemplate hibernateTemplate) ...{
this.hibernateTemplate = hibernateTemplate;
}
public boolean login(Admin admin)
...{
List list=hibernateTemplate.find("from Admin admin where admin.name='"+admin.getName()+"' and admin.password=md5('"+admin.getPassword()+"')");
if(list!=null && list.size()==1)
return true;
else
return false;
}
}
import java.util.List;
import org.springframework.orm.hibernate3.HibernateTemplate;
import com.study.model.bean.Admin;
public class AdminDAO ... {
private HibernateTemplate hibernateTemplate;
public HibernateTemplate getHibernateTemplate() ...{
return hibernateTemplate;
}
public void setHibernateTemplate(HibernateTemplate hibernateTemplate) ...{
this.hibernateTemplate = hibernateTemplate;
}
public boolean login(Admin admin)
...{
List list=hibernateTemplate.find("from Admin admin where admin.name='"+admin.getName()+"' and admin.password=md5('"+admin.getPassword()+"')");
if(list!=null && list.size()==1)
return true;
else
return false;
}
}
LogicDAO.java
package
com.study.dao;
public class LogicDAO ... {
private AdminDAO adminDAO;
public AdminDAO getAdminDAO() ...{
return adminDAO;
}
public void setAdminDAO(AdminDAO adminDAO) ...{
this.adminDAO = adminDAO;
}
}
public class LogicDAO ... {
private AdminDAO adminDAO;
public AdminDAO getAdminDAO() ...{
return adminDAO;
}
public void setAdminDAO(AdminDAO adminDAO) ...{
this.adminDAO = adminDAO;
}
}
applicationContext.xml
<?
xml version="1.0" encoding="UTF-8"
?>
<! DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans-2.0.dtd" >
< beans >
< bean id ="dataSource"
class ="org.springframework.jdbc.datasource.DriverManagerDataSource" >
< property name ="driverClassName" >
< value > com.mysql.jdbc.Driver </ value >
</ property >
< property name ="url" >
< value > jdbc:mysql://localhost:3306/study?autoReconnect=true & useUnicode=true & characterEncoding=gbk </ value >
</ property >
< property name ="username" >
< value > root </ value >
</ property >
< property name ="password" >
< value > 123456 </ value >
</ property >
</ bean >
< bean id ="sessionFactory"
class ="org.springframework.orm.hibernate3.LocalSessionFactoryBean"
destroy-method ="close" >
< property name ="dataSource" >
< ref bean ="dataSource" />
</ property >
< property name ="mappingResources" >
< list >
< value > com/study/model/bean/Admin.hbm.xml </ value >
</ list >
</ property >
< property name ="hibernateProperties" >
< props >
< prop key ="hibernate.dialect" >
org.hibernate.dialect.MySQLDialect
</ prop >
< prop key ="hibernate.show_sql" >
false
</ prop >
</ props >
</ property >
</ bean >
< bean id ="hibernateTemplate"
class ="org.springframework.orm.hibernate3.HibernateTemplate" >
< property name ="sessionFactory" >
< ref bean ="sessionFactory" />
</ property >
</ bean >
< bean id ="logicDAO" class ="com.study.dao.LogicDAO" >
< property name ="adminDAO" >< ref bean ="adminDAO" /></ property >
</ bean >
< bean id ="adminDAO"
class ="com.javalover.dao.AdminDAO" >
< property name ="hibernateTemplate" >
< ref bean ="hibernateTemplate" />
</ property >
</ bean >
</ beans >
<! DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans-2.0.dtd" >
< beans >
< bean id ="dataSource"
class ="org.springframework.jdbc.datasource.DriverManagerDataSource" >
< property name ="driverClassName" >
< value > com.mysql.jdbc.Driver </ value >
</ property >
< property name ="url" >
< value > jdbc:mysql://localhost:3306/study?autoReconnect=true & useUnicode=true & characterEncoding=gbk </ value >
</ property >
< property name ="username" >
< value > root </ value >
</ property >
< property name ="password" >
< value > 123456 </ value >
</ property >
</ bean >
< bean id ="sessionFactory"
class ="org.springframework.orm.hibernate3.LocalSessionFactoryBean"
destroy-method ="close" >
< property name ="dataSource" >
< ref bean ="dataSource" />
</ property >
< property name ="mappingResources" >
< list >
< value > com/study/model/bean/Admin.hbm.xml </ value >
</ list >
</ property >
< property name ="hibernateProperties" >
< props >
< prop key ="hibernate.dialect" >
org.hibernate.dialect.MySQLDialect
</ prop >
< prop key ="hibernate.show_sql" >
false
</ prop >
</ props >
</ property >
</ bean >
< bean id ="hibernateTemplate"
class ="org.springframework.orm.hibernate3.HibernateTemplate" >
< property name ="sessionFactory" >
< ref bean ="sessionFactory" />
</ property >
</ bean >
< bean id ="logicDAO" class ="com.study.dao.LogicDAO" >
< property name ="adminDAO" >< ref bean ="adminDAO" /></ property >
</ bean >
< bean id ="adminDAO"
class ="com.javalover.dao.AdminDAO" >
< property name ="hibernateTemplate" >
< ref bean ="hibernateTemplate" />
</ property >
</ bean >
</ beans >
BaseBean.java
package
com.study.view.bean;
import javax.faces.context.FacesContext;
import com.study.dao.LogicDAO;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;;
public class BaseBean ... {
private LogicDAO logicDAO;
public LogicDAO getLogicDAO() ...{
return logicDAO;
}
public void setLogicDAO(LogicDAO logicDAO) ...{
this.logicDAO = logicDAO;
}
public HttpSession getSession()
...{
return (HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(true);
}
public HttpServletRequest getRequest()
...{
return (HttpServletRequest)FacesContext.getCurrentInstance().getExternalContext().getRequest();
}
public HttpServletResponse getResponse()
...{
return (HttpServletResponse)FacesContext.getCurrentInstance().getExternalContext().getResponse();
}
}
import javax.faces.context.FacesContext;
import com.study.dao.LogicDAO;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;;
public class BaseBean ... {
private LogicDAO logicDAO;
public LogicDAO getLogicDAO() ...{
return logicDAO;
}
public void setLogicDAO(LogicDAO logicDAO) ...{
this.logicDAO = logicDAO;
}
public HttpSession getSession()
...{
return (HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(true);
}
public HttpServletRequest getRequest()
...{
return (HttpServletRequest)FacesContext.getCurrentInstance().getExternalContext().getRequest();
}
public HttpServletResponse getResponse()
...{
return (HttpServletResponse)FacesContext.getCurrentInstance().getExternalContext().getResponse();
}
}
AdminBean.java
package
com.study.view.bean;
import com.study.model.bean.Admin;
public class AdminBean extends BaseBean ... {
private Admin admin=new Admin();
private String validateCode="";
private String loginMessage="";
public String verify() ...{
if(admin.getName().trim().equals(""))
...{
loginMessage="请输入用户名称!";
return "failure";
}
if(validateCode.trim().equals(""))
...{
loginMessage="请输入验证码!";
return "failure";
}
if(getSession().getAttribute("code")!=null)
...{
String vCode=getSession().getAttribute("code").toString();
if(!validateCode.trim().equals(vCode))
...{
loginMessage="请输入正确验证码!";
return "failure";
}
}
boolean flag=getLogicDAO().getAdminDAO().login(admin);
if(flag)
return "success";
else
...{
loginMessage="请输入正确的用户名称或密码!";
return "failure";
}
}
public String getLoginMessage() ...{
return loginMessage;
}
public void setLoginMessage(String loginMessage) ...{
this.loginMessage = loginMessage;
}
public Admin getAdmin() ...{
return admin;
}
public void setAdmin(Admin admin) ...{
this.admin = admin;
}
public String getValidateCode() ...{
return validateCode;
}
public void setValidateCode(String validateCode) ...{
this.validateCode = validateCode;
}
}
import com.study.model.bean.Admin;
public class AdminBean extends BaseBean ... {
private Admin admin=new Admin();
private String validateCode="";
private String loginMessage="";
public String verify() ...{
if(admin.getName().trim().equals(""))
...{
loginMessage="请输入用户名称!";
return "failure";
}
if(validateCode.trim().equals(""))
...{
loginMessage="请输入验证码!";
return "failure";
}
if(getSession().getAttribute("code")!=null)
...{
String vCode=getSession().getAttribute("code").toString();
if(!validateCode.trim().equals(vCode))
...{
loginMessage="请输入正确验证码!";
return "failure";
}
}
boolean flag=getLogicDAO().getAdminDAO().login(admin);
if(flag)
return "success";
else
...{
loginMessage="请输入正确的用户名称或密码!";
return "failure";
}
}
public String getLoginMessage() ...{
return loginMessage;
}
public void setLoginMessage(String loginMessage) ...{
this.loginMessage = loginMessage;
}
public Admin getAdmin() ...{
return admin;
}
public void setAdmin(Admin admin) ...{
this.admin = admin;
}
public String getValidateCode() ...{
return validateCode;
}
public void setValidateCode(String validateCode) ...{
this.validateCode = validateCode;
}
}
faces-config.xml
<?
xml version='1.0' encoding='UTF-8'
?>
<! DOCTYPE faces-config PUBLIC
"-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
"http://java.sun.com/dtd/web-facesconfig_1_1.dtd" >
< faces-config >
< application >
< variable-resolver > org.springframework.web.jsf.DelegatingVariableResolver </ variable-resolver >
</ application >
< navigation-rule >
< from-view-id > /admin/login.jsp </ from-view-id >
< navigation-case >
< from-outcome > success </ from-outcome >
< to-view-id > /admin/admin.jsp </ to-view-id >
</ navigation-case >
< navigation-case >
< from-outcome > failure </ from-outcome >
< to-view-id > /admin/login.jsp </ to-view-id >
</ navigation-case >
</ navigation-rule >
< managed-bean >
< managed-bean-name > adminBean </ managed-bean-name >
< managed-bean-class > com.javalover.view.bean.AdminBean </ managed-bean-class >
< managed-bean-scope > session </ managed-bean-scope >
< managed-property >
< property-name > logicDAO </ property-name >
< value > #{logicDAO} </ value >
</ managed-property >
</ managed-bean >
</ faces-config >
<! DOCTYPE faces-config PUBLIC
"-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
"http://java.sun.com/dtd/web-facesconfig_1_1.dtd" >
< faces-config >
< application >
< variable-resolver > org.springframework.web.jsf.DelegatingVariableResolver </ variable-resolver >
</ application >
< navigation-rule >
< from-view-id > /admin/login.jsp </ from-view-id >
< navigation-case >
< from-outcome > success </ from-outcome >
< to-view-id > /admin/admin.jsp </ to-view-id >
</ navigation-case >
< navigation-case >
< from-outcome > failure </ from-outcome >
< to-view-id > /admin/login.jsp </ to-view-id >
</ navigation-case >
</ navigation-rule >
< managed-bean >
< managed-bean-name > adminBean </ managed-bean-name >
< managed-bean-class > com.javalover.view.bean.AdminBean </ managed-bean-class >
< managed-bean-scope > session </ managed-bean-scope >
< managed-property >
< property-name > logicDAO </ property-name >
< value > #{logicDAO} </ value >
</ managed-property >
</ managed-bean >
</ faces-config >
web.xml
<?
xml version="1.0" encoding="UTF-8"
?>
< web-app version ="2.4"
xmlns ="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation ="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" >
< servlet >
< servlet-name > Faces Servlet </ servlet-name >
< servlet-class > javax.faces.webapp.FacesServlet </ servlet-class >
< load-on-startup > 1 </ load-on-startup >
</ servlet >
< servlet-mapping >
< servlet-name > Faces Servlet </ servlet-name >
< url-pattern > *.jsf </ url-pattern >
</ servlet-mapping >
< listener >
< listener-class > org.springframework.web.context.ContextLoaderListener </ listener-class >
</ listener >
</ web-app >
< web-app version ="2.4"
xmlns ="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation ="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" >
< servlet >
< servlet-name > Faces Servlet </ servlet-name >
< servlet-class > javax.faces.webapp.FacesServlet </ servlet-class >
< load-on-startup > 1 </ load-on-startup >
</ servlet >
< servlet-mapping >
< servlet-name > Faces Servlet </ servlet-name >
< url-pattern > *.jsf </ url-pattern >
</ servlet-mapping >
< listener >
< listener-class > org.springframework.web.context.ContextLoaderListener </ listener-class >
</ listener >
</ web-app >
<%
...
@ page language="java"
%>
<% ... @taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<% ... @taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<% ... @page contentType="text/html;charset=gbk" %>
<! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" >
< html >
< head >
< title > 管理登陆 </ title >
< meta http-equiv ="pragma" content ="no-cache" >
< meta http-equiv ="cache-control" content ="no-cache" >
< meta http-equiv ="expires" content ="0" >
< meta http-equiv ="keywords" content ="keyword1,keyword2,keyword3" >
< meta http-equiv ="description" content ="This is my page" >
< link rel ="stylesheet" type ="text/css" href ="../css/admin.css" >
</ head >
< body >
< f:view >
< h:form >
< br />< br />< br />< br />< br />< br />
< table width ="220px" align ="center" border ="1" bordercolor ="#000000" >
< caption > 管理登陆 </ caption >
< tr bordercolor ="#FFFFFF" >
< td colspan ="2" >< div align ="center" style ="color:red" >< h:outputText value ="#{adminBean.loginMessage}" /></ div ></ td >
</ tr >
< tr bordercolor ="#FFFFFF" >
< td width ="30%" >< div align ="right" > 名 称: </ div ></ td >
< td width ="70%" >< h:inputText value ="#{adminBean.admin.name}" /></ td >
</ tr >
< tr bordercolor ="#FFFFFF" >
< td >< div align ="right" > 密 码: </ div ></ td >
< td >< h:inputSecret value ="#{adminBean.admin.password}" /></ td >
</ tr >
< tr bordercolor ="#FFFFFF" >
< td >< div align ="right" > 验证码: </ div ></ td >
< td >< h:inputText value ="#{adminBean.validateCode}" style ="width:70px;" />< img src ="../util/img.jsp" /></ td >
</ tr >
< tr bordercolor ="#FFFFFF" >
< td colspan ="2" >< div align ="center" >< h:commandButton value ="登陆" action ="#{adminBean.verify}" /></ div ></ td >
</ tr >
</ table >
</ h:form >
</ f:view >
</ body >
</ html >
<% ... @taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<% ... @taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<% ... @page contentType="text/html;charset=gbk" %>
<! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" >
< html >
< head >
< title > 管理登陆 </ title >
< meta http-equiv ="pragma" content ="no-cache" >
< meta http-equiv ="cache-control" content ="no-cache" >
< meta http-equiv ="expires" content ="0" >
< meta http-equiv ="keywords" content ="keyword1,keyword2,keyword3" >
< meta http-equiv ="description" content ="This is my page" >
< link rel ="stylesheet" type ="text/css" href ="../css/admin.css" >
</ head >
< body >
< f:view >
< h:form >
< br />< br />< br />< br />< br />< br />
< table width ="220px" align ="center" border ="1" bordercolor ="#000000" >
< caption > 管理登陆 </ caption >
< tr bordercolor ="#FFFFFF" >
< td colspan ="2" >< div align ="center" style ="color:red" >< h:outputText value ="#{adminBean.loginMessage}" /></ div ></ td >
</ tr >
< tr bordercolor ="#FFFFFF" >
< td width ="30%" >< div align ="right" > 名 称: </ div ></ td >
< td width ="70%" >< h:inputText value ="#{adminBean.admin.name}" /></ td >
</ tr >
< tr bordercolor ="#FFFFFF" >
< td >< div align ="right" > 密 码: </ div ></ td >
< td >< h:inputSecret value ="#{adminBean.admin.password}" /></ td >
</ tr >
< tr bordercolor ="#FFFFFF" >
< td >< div align ="right" > 验证码: </ div ></ td >
< td >< h:inputText value ="#{adminBean.validateCode}" style ="width:70px;" />< img src ="../util/img.jsp" /></ td >
</ tr >
< tr bordercolor ="#FFFFFF" >
< td colspan ="2" >< div align ="center" >< h:commandButton value ="登陆" action ="#{adminBean.verify}" /></ div ></ td >
</ tr >
</ table >
</ h:form >
</ f:view >
</ body >
</ html >