1. Eclipse工程图
2. 下载Struts2
地址:http://labs.xiaonei.com/apache-mirror/struts/binaries/struts-2.1.6-all.zip
解压后将struts-2.1.6\apps\struts2-blank-2.1.6\WEB-INF\lib目录下所有的jar加进工程的classpath
其实,根据官方文档,依赖的jar应该是
commons-fileupload, commons-io, commons-loggin, freemarker, ongl, struts2-core, xwork
3. Source
cn.edu.dlut.ssdut.pojo.User.java
package cn.edu.dlut.ssdut.pojo;
public class User {
private String id;
private String password;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
cn.edu.dlut.ssdut.action.LoginAction.java
package cn.edu.dlut.ssdut.action;
import com.opensymphony.xwork2.ActionSupport;
import cn.edu.dlut.ssdut.pojo.User;
public class LoginAction extends ActionSupport {
private User user;
public void setUser(User user) {
this.user = user;
}
public User getUser() {
return user;
}
@Override
public String execute() throws Exception {
if (!isValid(user.getId()) || !isValid(user.getPassword())) {
return INPUT;
}
return SUCCESS;
}
private boolean isValid(String str) {
if (str != null && !"".equals(str.trim())) {
return true;
}
return false;
}
}
index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<html>
<title>
Login Page
</title>
<head>
<title>Login Page</title>
</head>
<body>
<s:form action="hello/login" method="post">
<s:textfield name="user.id" label="UserId"/>
<s:password name="user.password" label="Password"/>
<s:submit value="Login"/>
</s:form>
</body>
</html>
home.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<html>
<head>
<title>Login Page</title>
</head>
<body>
Hello, <s:property value="user.id" />
</body>
</html>
以下是配置文件web.xml和struts.xml
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">
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.FilterDispatcher
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
struts.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="default" extends="struts-default" namespace="/hello">
<action name="login" class="cn.edu.dlut.ssdut.action.LoginAction">
<result name="success">/home.jsp</result>
<result name="input">/index.jsp</result>
</action>
<!-- Add your actions here -->
</package>
</struts>
4. 编译及运行
分享到:
相关推荐
在"struts2_demo"中,我们可以预期找到以下几个关键部分: 1. **配置文件**:主要包括struts.xml,这是Struts2的核心配置文件,定义了Action、结果类型和拦截器栈等。在这里,开发者会看到如何配置Action类、映射...
在Struts2 Login Demo中,可能会有一个名为`LoginAction`的类,它继承自Struts2的`ActionSupport`类。这个类会包含处理用户输入、验证用户名和密码的方法,如`execute()`方法。 2. **JSP页面**:登录界面通常由两个...
标题"Struts Spring Hibernate MyEclipse的Login Demo"指的是一个使用这四大技术实现的登录示例项目。这个项目可能包含了一个完整的登录功能,包括用户输入用户名和密码,验证身份,并根据结果重定向到不同的页面。 ...
3. **结果处理**:如果用户未登录,拦截器可以返回一个特定的结果,如`"login"`,这将导致Struts2跳转到相应的登录页面。 4. **链式调用**:拦截器是按照声明的顺序进行调用的,一旦一个拦截器完成任务,它会将控制...
Struts2Demo5是一个基于Apache Struts 2框架的示例项目,用于演示该框架的基本用法和功能。Struts2是Java企业级应用开发中广泛使用的MVC(Model-View-Controller)框架,它提供了丰富的特性来简化Web应用程序的构建...
在本示例中,"纯struts2开发带log4j的用户登录demo"是教你如何利用Struts2框架来实现一个简单的用户登录功能,并结合log4j进行日志记录。Log4j是一个广泛使用的日志记录工具,它提供了灵活的日志配置,有助于调试、...
在这个“struts2+spring+ibatis”的小demo中,我们将深入探讨这三个框架的核心功能以及它们如何协同工作。 **Struts2** 是一个强大的MVC(Model-View-Controller)框架,它提供了处理用户请求、控制应用程序流程的...
本文将通过一个简单的入门Demo来介绍如何配置和使用Struts2。首先,我们需要创建一个新的Web项目,命名为`struts2Demo`。在这个项目中,我们将实现一个登录功能。 在开始之前,需要确保你的开发环境支持Struts2。...
这个"struts2 demo"项目实例是学习和理解Struts2工作原理的一个绝佳资源。它包含了Struts2框架的基本配置文件和其他必要的组件,使我们能够深入探讨Struts2的核心概念。 首先,让我们了解Struts2框架的基础。Struts...
<action path="/login" name="LoginForm" type="com.yza.struts.action.LoginAction" scope="request" input="/index.jsp"> <forward name="success" path="/success.jsp"></forward> ...
这个"struts2登录,以及输入校验的demo"是一个基础的实例,它展示了如何在Struts2中实现用户登录功能,并进行输入验证,确保数据的正确性和安全性。 首先,我们来看Struts2的核心组成部分: 1. **Action类**:这是...
这个Demo可能还包括JSP(JavaServer Pages)页面,如login.jsp用于展示登录表单,success.jsp显示登录成功的信息,以及可能的error.jsp用于处理错误情况。JSP使用Struts标签库(如struts-bean、struts-html、struts-...
在"Struts2+Hibernate3+Oracle登录Demo"中,我们将探讨如何利用这些技术实现用户登录功能。 Struts2是基于MVC(Model-View-Controller)设计模式的开源Java Web框架,它的主要职责是处理用户的HTTP请求,并将控制...
本实例“纯Struts2登录实例Demo+”是一个基础的登录功能实现,帮助开发者了解如何在实际项目中运用Struts2来处理用户登录请求。 在Struts2中,核心组件包括Action、Result、Interceptor(拦截器)等。Action是业务...
3. **创建登录Action**:在Struts2中编写一个处理用户登录请求的Action,调用Shiro的Subject.login()方法进行登录操作。 4. **集成拦截器**:使用Struts2的拦截器机制,添加Shiro的`authc`拦截器,该拦截器会在每个...
在"struts2登录,以及输入校验的demo源码"中,你可以找到以下几个关键文件: - `struts.xml`:Struts 2的配置文件。 - `LoginAction.java`:实现登录功能的Action类。 - `LoginForm.java`:封装用户输入的表单类。 -...
struts2实现的学生信息管理系统 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" ...
五、实现Struts2简单Demo 1. 下载Struts2框架的jar包。 2. 创建Web工程,将相关jar包引入到项目中。 3. 修改`web.xml`,配置Struts2的核心Filter `FilterDispatcher`。 4. 创建`struts.xml`配置文件,定义Action及其...
本DEMO是基于Struts2实现的一个用户登录功能,主要展示了如何利用Struts2进行用户身份验证。下面将详细解释这个DEMO涉及的关键知识点。 1. **Struts2框架基础** - **Action类**:在Struts2中,Action类是业务逻辑...