日期:2014-05-16 浏览次数:20549 次
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core">
<h:head>
<title>Login Face</title>
<script src="js/login.js" type="text/javascript"></script>
</h:head>
<h:body>
<h:form id="loginForm" onsubmit="return checkForm()">
<h:outputScript library="javax.faces" name="jsf.js" target="head"/>
<h:outputLabel value="welcom to Login our site" ></h:outputLabel>
<br/><h:outputLabel value="#{user.message}"></h:outputLabel>
<br/><h:outputLabel value="userName:"></h:outputLabel>
<h:inputText id="userName" value="#{user.userName}" ></h:inputText>
<br/><h:outputLabel value="password:" ></h:outputLabel>
<h:inputSecret id="password" value="#{user.password}"></h:inputSecret>
<br/><h:commandButton value="submit" action="#{manager.login}" />
<a href="register.jsf">register</a>
<a href="forget.jsf">forget</a>
</h:form>
</h:body>
</html>
public String login(){
String result = null;
DBibatis db = new DBIbatisImpl();//这是一个数据库操作的接口
ExternalContext context = FacesContext.getCurrentInstance().getExternalContext();
//获得的是request里的数据
UserBean loginUser =(UserBean)context.getRequestMap().get("user");
//从数据库中获得这个用户名的结果
UserBean dbUser = db.queryByName(loginUser.getUserName());
if(dbUser == null){
//没有这个用户名就在request中增加message的内容
loginUser.setMessage("no this userName here!");
result = "login.jsf";//规定导航的jsf
}else {
if(dbUser.getPassword().equals(loginUser.getPassword())){
result = "successfully.jsf";//显示的是成功之后的页面
this.userName = loginUser.getUserName();//在这个sessionScope的manager 我设置了一个用户名的标识userName
}else{
//这个原理和第一个是相同的 所以说不再讲解了
loginUser.setMessage("the password is wrong!");
result = "login.jsf";
}
}
return result;//返回这个导航的结果
}
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html">
<h:head>
<title>Facelet Title</title>
</h:head>
<h:body>
<h:outputLabel value="Welcome you ! "></h:outputLabel>
<h:outputText value="#{manager.userName}"></h:outputText>
</h:body>
</html>
我认为有的是直接result 可以将后缀名去掉 我觉得这样是不是让代码变得没有层次感所以这就是我的写的风格 个人喜好 不说也罢