JSF最简单的例子(2)

作者在 2008-03-14 16:33:12 发布以下内容

下面是登陆主页面的代码,可以看到是把用户的信息存入到了user这个javabean中,页这个用户信息的javabean直接用注入的方式就可以在DAO层得到了(不像网上的一些例子是直接把DAO的作用也写在了Javabean中,网上一把的这样的做法。),这样注入可以把user的信息传到你想到的各个层。同理login.loginAction把登陆的动作也脱离出来了,不必非要写在JavaBean中。

<%@ 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=utf-8"%>
<html>
<head>
<title>JSF</title>
</head>
<body>
<f:view>
 <h:form>
  <h3>用户登陆</h3>
  用户名: <h:inputText value="#{user.userName}"></h:inputText><br>
  密码: <h:inputSecret value="#{user.userPwd}"></h:inputSecret><br>
  <h:commandButton action="#{login.loginAction}" value="登陆"></h:commandButton>
 </h:form>
</f:view>
</body>
</html>

UserJava的代码:

package com.jsf.bean;

import java.io.Serializable;

/**
 * UserBean
 *
 * @author Shuai.yang
 * @date 2007-9-7
 * @version 1.0
 */
public class UserBean implements Serializable{
 /**
  *
  */
 private static final long serialVersionUID = -502898601597384551L;

 private String userName;

 private String userPwd;

 /**
  * @return Returns the userPwd.
  */
 public String getUserPwd() {
  return userPwd;
 }

 /**
  * @param userPwd
  *            The userPwd to set.
  */
 public void setUserPwd(String userPwd) {
  this.userPwd = userPwd;
 }

 /**
  * @return Returns the userName.
  */
 public String getUserName() {
  return userName;
 }

 /**
  * @param userName
  *            The userName to set.
  */
 public void setUserName(String userName) {
  this.userName = userName;
 }

}

但是网上大部份的做法是把下面这段代码给加到这个普通的JavaBean中了:

 public String loginAction() {
  if (userName.equals("a") && userPwd.equals("a")) {
   return "welcome";
  }
  return "false";
 }

这样做层次很差的。

 

J2ee | 阅读 2044 次
文章评论,共0条
游客请输入验证码
文章归档