`

WebWork2.2.4模拟webwork+hibernate的模板例子

阅读更多
包结构:
com.huanglq.action    --------LoginAction.java 
com.huanglq.dao          --------LoginDao..java,LoginDaoImpl.java
com.huanglq.vo            --------User.java
----------------------------------------------------
vo:(model)
User.java
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;
	}

}

-----------------
dao:(数据库访问层)
UserDao.java
package com.huanglq.dao;

import com.huanglq.vo.User;

public interface UserDao {

	public User login(String username, String password);
}
-----------------
UserDaoImpl.java
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;
	}

}
--------------------
action(逻辑判断)
LoginAction.java
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";
		}
	}

}
------------------------------
xwork.xml内容:
<!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>
------------------------
web.xml:
<?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>

-----------------------------------
index.jsp:(login.jsp和index.jsp差不多一样)
<%@ 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>

-------------------------------------------

success.jsp:
<%@ taglib prefix="ww" uri="/webwork"%>
<html>
<head>
<title>SUCCESS</title>
</head>
<body>
Welcome to WebWork <ww:property value="user.username"/>
</body>
</html>

分享到:
评论

相关推荐

    webwork2.2.4+spring+hibernate做的一个登入程序

    最近在做个项目,用的是webwork+spring+hibernate,在网上看了不少webwork+spring的配制方式,大多都是老的配制方式,比如2.1.7的,webwork2.2.4新加了很多功能,和spring的配制也简单了很多,我做了一个简单的登录...

    webwork2.24+spring2.0+hibernate3.1(3)

    webwork2.24+spring2.0+hibernate3.1三框架整合使用

    webwork2.24+spring2.0+hibernate3.1(2)

    webwork2.24+spring2.0+hibernate3.1三框架整合使用

    webwork2.24+spring2.0+hibernate3.1(4)

    webwork2.24+spring2.0+hibernate3.1三框架整合使用

    webwork2.24+spring2.0+hibernate3.1

    webwork2.24+spring2.0+hibernate3.1三框架的整合的资料没有一份完整的,自己整了一份,供大家参考

    webwork2.2.4架包

    webwork2.2.4架包帮助学习

    webwork+spring+hibernate+freemarker (A)demo_project

    本源码实例只供学习。。 请一并下载webwork+spring+hibernate+freemarker (A)demo_lib 配合才能使用(此为项目的lib包。。) 请打开mark.txt参考操作

    Webwork+spring+hibernate集成实例

    在Webwork+Spring+Hibernate集成中,Spring通常作为整体架构的胶水,负责各组件的连接和协调。它可以管理Webwork的Action,通过依赖注入提供所需的Service和DAO。同时,Spring可以配置Hibernate SessionFactory,...

    webwork+spring+hibernate 开发资料

    在提供的文档“webwork+spring+hibernate架构.doc”中,可能详细阐述了这三者如何协同工作,包括配置文件设置、依赖注入的使用、事务管理策略以及具体实例的开发步骤。而“webwork.doc”则可能专门介绍了WebWork框架...

    struts2+hibernate+freemarker项目实例

    在学习和使用这个项目实例时,你需要理解每个框架的核心概念和工作原理,如Struts2的动作(Action)和结果(Result),Hibernate的实体(Entity)、会话(Session)和查询,以及FreeMarker的模板语法。此外,还需要...

    webwork+spring+hibernate+freemarker (A)demo_lib

    综上所述,"webwork+spring+hibernate+freemarker"的组合提供了一个强大的Java Web开发环境,能够方便地处理业务逻辑、数据库交互和视图展示。对于学习或实践Java Web开发的人员来说,理解和掌握这四个框架的协同...

    WebWork+Spring.+Hibernate整合开发网络书城代码

    【WebWork+Spring+Hibernate整合开发】是一种常见的Java Web应用程序架构模式,用于构建高效、可扩展的业务系统。WebWork是Action-based MVC框架,Spring是一个全面的企业级应用框架,而Hibernate则是流行的对象关系...

    webwork2.2.7+spring+hibernate+oracle整合

    ### WebWork 2.2.7 + Spring + Hibernate + Oracle 整合知识点解析 #### 一、项目背景与概述 本项目的重点在于实现WebWork框架(版本2.2.7)、Spring框架、Hibernate持久层框架以及Oracle数据库之间的整合。通过...

    webwork 2.2.4开发指南

    WebWork 2.2.4 是一款基于Java的开源MVC(Model-View-Controller)框架,用于构建企业级Web应用程序。它提供了丰富的特性和工具,帮助开发者更高效地进行Web应用开发。在这个"WebWork 2.2.4开发指南"中,我们将深入...

    webwork2.2.7+spring+hibernate用到的包lib

    在IT行业中,Web开发是一个关键领域,而Webwork2.2.7、Spring和Hibernate是三个非常重要的开源框架,它们通常被联合使用以构建高效、可维护的企业级应用。这个压缩包“webwork2.2.7+spring+hibernate用到的包lib”...

    webwork2.1.7+spring+hibernate+oracle整合

    在IT领域,特别是Java企业级应用开发中,整合WebWork、Spring、Hibernate与Oracle数据库是一项常见且关键的技术栈组合。这种组合充分利用了每个框架或技术的优势,为构建高性能、高可维护性的应用提供了坚实的基础。...

    webwork+spring+hibernate入门实例

    《webwork+spring+hibernate入门实例》 在当今的Web开发领域,Spring、Hibernate和WebWork(现称为Struts 2)是三个极为重要的框架。本实例将引导初学者深入理解这三大框架的集成与应用,以及如何与MySQL数据库进行...

    webwork+spring+hibernate网络购物系统

    【标题】:“WebWork+Spring+Hibernate网络购物系统”是一个基于特定技术栈的电商项目实现。这个系统利用了WebWork、Spring和Hibernate这三个关键的技术框架,构建了一个完整的、功能丰富的在线购物平台。WebWork...

    webwork2.2.7+spring+hibernate分页查询

    ### WebWork 2.2.7 + Spring + Hibernate 分页查询技术详解 #### 一、项目背景及架构 本项目采用WebWork 2.2.7框架结合Spring和Hibernate技术实现了一个基本的用户数据分页查询功能。主要目标是根据用户输入的...

    webwork+spring+hibernate整合开发网络书城 第5讲

    webwork+spring+hibernate整合开发网络书城 第5讲

Global site tag (gtag.js) - Google Analytics