包结构:
com.huanglq.action --------LoginAction.java
com.huanglq.dao --------LoginDao..java,LoginDaoImpl.java
com.huanglq.vo --------User.java
----------------------------------------------------
vo:(model)
User.java
[code]package com.huanglq.vo;
public class User {
private String username;
private String password;
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
}[/code]
-----------------
dao:(数据库访问层)
UserDao.java
[code]
package com.huanglq.dao;
import com.huanglq.vo.User;
public interface UserDao {
public User login(String username, String password);
}
[/code]-----------------
UserDaoImpl.java
[code]
package com.huanglq.dao;
import com.huanglq.vo.User;
public class UserDaoImpl implements UserDao {
// 判断用户是否存在,不存在则为null
// 这里可以集成Hibernate来实现,当然也可以用上Spring
public User login(String username, String password) {
User user = null;
// 如果是Hibernate的话,这里的操作就是找User是否存在
// 这里只是个模板
if ("kyo".equalsIgnoreCase(username)&& "123".equalsIgnoreCase(password)) {
user = new User();
user.setUsername(username);
user.setPassword(password);
}
return user;
}
}
[/code]--------------------
action(逻辑判断)
LoginAction.java
[code]package com.huanglq.action;
import com.huanglq.dao.UserDao;
import com.huanglq.dao.UserDaoImpl;
import com.huanglq.vo.User;
import com.opensymphony.xwork.Action;
import com.opensymphony.xwork.ModelDriven;
public class LoginAction implements Action, ModelDriven {
private User user = new User();
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
// 这里是实现Action中的方法,当然页可以空实现,在form中 *.action (*是action名)
public String execute() throws Exception {
UserDao userDao = new UserDaoImpl();
try {
user = userDao.login(user.getUsername(), user.getPassword());
} catch (Exception e) {
user = null;
}
if (user != null) {
return "success";
} else {
return "error";
}
}
public Object getModel() {
// 这里要返回一个model对象
return user;
}
// 自己的方法,在form中 *!login.action (*是action名)
public String login() {
UserDao userDao = new UserDaoImpl();
try {
user = userDao.login(user.getUsername(), user.getPassword());
} catch (Exception e) {
user = null;
}
if (user != null) {
return "success";
} else {
return "error";
}
}
}
[/code]------------------------------
xwork.xml内容:
[code]
<!DOCTYPE xwork PUBLIC "-//OpenSymphony Group//XWork 1.0//EN" "http://www.opensymphony.com/xwork/xwork-1.0.dtd">
<xwork>
<include file="webwork-default.xml" />
<package name="default" extends="webwork-default">
<action name="login" class="com.huanglq.action.LoginAction">
<result name="success" type="dispatcher">
/login/success.jsp
</result>
<result name="error" type="dispatcher">
/login/login.jsp
</result>
<interceptor-ref name="params" />
<interceptor-ref name="model-driven" />
</action>
</package>
</xwork>
[/code]------------------------
web.xml:
[code]<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<display-name>webwork-simple-hello</display-name>
<filter>
<filter-name>webwork</filter-name>
<filter-class>com.opensymphony.webwork.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>webwork</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.jsp</welcome-file>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
</web-app>[/code]
-----------------------------------
index.jsp:(login.jsp和index.jsp差不多一样)
[code]<%@ page pageEncoding="gb2312" contentType="text/html;charset=gb2312"%>
<html>
<body>
<!-- 这里是用action中的login方法来提交 -->
<form action="login!login.action">
<p align="center">
登录<br>
</p>
用户名:
<input type="text" name="user.username" />
<br>
密码
<input type="password" name="user.password"/>
<br>
<input type="submit" value="提交"/>
<input type="reset" value="重置"/>
</form>
</body>
</html>[/code]
-------------------------------------------
success.jsp:
[code]<%@ taglib prefix="ww" uri="/webwork"%>
<html>
<head>
<title>SUCCESS</title>
</head>
<body>
Welcome to WebWork <ww:property value="user.username"/>
</body>
</html>[/code]
com.huanglq.action --------LoginAction.java
com.huanglq.dao --------LoginDao..java,LoginDaoImpl.java
com.huanglq.vo --------User.java
----------------------------------------------------
vo:(model)
User.java
[code]package com.huanglq.vo;
public class User {
private String username;
private String password;
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
}[/code]
-----------------
dao:(数据库访问层)
UserDao.java
[code]
package com.huanglq.dao;
import com.huanglq.vo.User;
public interface UserDao {
public User login(String username, String password);
}
[/code]-----------------
UserDaoImpl.java
[code]
package com.huanglq.dao;
import com.huanglq.vo.User;
public class UserDaoImpl implements UserDao {
// 判断用户是否存在,不存在则为null
// 这里可以集成Hibernate来实现,当然也可以用上Spring
public User login(String username, String password) {
User user = null;
// 如果是Hibernate的话,这里的操作就是找User是否存在
// 这里只是个模板
if ("kyo".equalsIgnoreCase(username)&& "123".equalsIgnoreCase(password)) {
user = new User();
user.setUsername(username);
user.setPassword(password);
}
return user;
}
}
[/code]--------------------
action(逻辑判断)
LoginAction.java
[code]package com.huanglq.action;
import com.huanglq.dao.UserDao;
import com.huanglq.dao.UserDaoImpl;
import com.huanglq.vo.User;
import com.opensymphony.xwork.Action;
import com.opensymphony.xwork.ModelDriven;
public class LoginAction implements Action, ModelDriven {
private User user = new User();
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
// 这里是实现Action中的方法,当然页可以空实现,在form中 *.action (*是action名)
public String execute() throws Exception {
UserDao userDao = new UserDaoImpl();
try {
user = userDao.login(user.getUsername(), user.getPassword());
} catch (Exception e) {
user = null;
}
if (user != null) {
return "success";
} else {
return "error";
}
}
public Object getModel() {
// 这里要返回一个model对象
return user;
}
// 自己的方法,在form中 *!login.action (*是action名)
public String login() {
UserDao userDao = new UserDaoImpl();
try {
user = userDao.login(user.getUsername(), user.getPassword());
} catch (Exception e) {
user = null;
}
if (user != null) {
return "success";
} else {
return "error";
}
}
}
[/code]------------------------------
xwork.xml内容:
[code]
<!DOCTYPE xwork PUBLIC "-//OpenSymphony Group//XWork 1.0//EN" "http://www.opensymphony.com/xwork/xwork-1.0.dtd">
<xwork>
<include file="webwork-default.xml" />
<package name="default" extends="webwork-default">
<action name="login" class="com.huanglq.action.LoginAction">
<result name="success" type="dispatcher">
/login/success.jsp
</result>
<result name="error" type="dispatcher">
/login/login.jsp
</result>
<interceptor-ref name="params" />
<interceptor-ref name="model-driven" />
</action>
</package>
</xwork>
[/code]------------------------
web.xml:
[code]<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<display-name>webwork-simple-hello</display-name>
<filter>
<filter-name>webwork</filter-name>
<filter-class>com.opensymphony.webwork.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>webwork</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.jsp</welcome-file>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
</web-app>[/code]
-----------------------------------
index.jsp:(login.jsp和index.jsp差不多一样)
[code]<%@ page pageEncoding="gb2312" contentType="text/html;charset=gb2312"%>
<html>
<body>
<!-- 这里是用action中的login方法来提交 -->
<form action="login!login.action">
<p align="center">
登录<br>
</p>
用户名:
<input type="text" name="user.username" />
<br>
密码
<input type="password" name="user.password"/>
<br>
<input type="submit" value="提交"/>
<input type="reset" value="重置"/>
</form>
</body>
</html>[/code]
-------------------------------------------
success.jsp:
[code]<%@ taglib prefix="ww" uri="/webwork"%>
<html>
<head>
<title>SUCCESS</title>
</head>
<body>
Welcome to WebWork <ww:property value="user.username"/>
</body>
</html>[/code]