`

struts2学习day01之以对象的形式封装数据

 
阅读更多

1.在web.xml中

 <filter>
  	<filter-name>struts2</filter-name>
       <filter-class> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
  	</filter-class>
  </filter>
  <filter-mapping>
  	<filter-name>struts2</filter-name>
  	<url-pattern>/*</url-pattern>
  </filter-mapping>

 2.在loginUser.jsp页面

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
	<head>
	</head>
	<body>
		<center>
			<form action="loginUser.action" method="get">
				userName
				<input name="user.username" type="text" />
				<br>
				passWord
				<input name="user.pwd" type="password" />
				<br>
				<input type="submit" value="Submit" />
			</form>
		</center>
	</body>
</html>

 3.在zx.struts2.day1.entity包中写User.java实体类

package zx.struts2.day1.entity;

public class User {
	private String username;
	private String pwd;

	public String getUsername() {
		return username;
	}

	public void setUsername(String username) {
		this.username = username;
	}

	public String getPwd() {
		return pwd;
	}

	public void setPwd(String pwd) {
		this.pwd = pwd;
	}

}

 4.在zx.struts2.day1.dao包中写UserDao接口定义方法

package zx.struts2.day1.dao;

import java.util.List;

import zx.struts2.day1.entity.User;

public interface UserDao {
  public List<User> findAll();
}

 5.在zx.struts2.day1.dao.impl包中写UserDao的实现类UserDaoImpl

package zx.struts2.day1.dao;

import java.util.ArrayList;
import java.util.List;

import zx.struts2.day1.entity.User;

public class UserDaoImpl implements UserDao {

	@Override
	public List<User> findAll() {
		List<User> lists = new ArrayList<User>();
		User u1 = new User();
		u1.setUsername("haoren");
		u1.setPwd("123");
		User u2 = new User();
		u2.setUsername("calm");
		u2.setPwd("123");
		User u3 = new User();
		u3.setUsername("jerry");
		u3.setPwd("123");
		lists.add(u1);
		lists.add(u2);
		lists.add(u3);
		return lists;
	}

}

 6.在LoginUserAction中extends ActionSupport

package zx.struts2.day1.action;

import javax.servlet.http.HttpServletRequest;

import org.apache.struts2.interceptor.ServletRequestAware;

import zx.struts2.day1.entity.User;

import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;

public class LoginUserAction extends ActionSupport implements ServletRequestAware {
	private User user;// User对象

	public String execute() {
		
		ActionContext ctx=ActionContext.getContext();
		//向request对象中添加数据
		ctx.put("name", "requestScope");
		ctx.put("uname", user.getUsername());
		//向Session对象中添加数据
		ctx.getSession().put("name", "sessionScope");
		//向ServletContext对象(application)中添加数据
		ctx.getApplication().put("name","applicationScope");
	
		System.out.println("name=="+user.getUsername()+" :  "+"pwd==="+user.getPwd());
		if ("haoren".equals(user.getUsername()) && "250".equals(user.getPwd())) {
			return SUCCESS;
		} else {
			return "error";
		}

	}

	public User getUser() {
		return user;
	}

	public void setUser(User user) {
		this.user = user;
	}

	@Override
	public void setServletRequest(HttpServletRequest arg0) {
		// TODO Auto-generated method stub
		
	}

}

7.在struts.xml文件中

<struts>
        <package name="day1Demo" namespace="/" extends="struts-default">
         <action name="loginUser"
			class="zx.struts2.day1.action.LoginUserAction">
			<result name="success">/ok.jsp</result>
			<result name="error">/err.jsp</result>
         </action>
       </package>
</struts>
 
分享到:
评论

相关推荐

    struts2学习 源码

    在"day06"这个文件夹中,很可能包含了第六天学习的Struts2相关源代码和示例。这些示例可能涵盖了Action的创建、配置文件的编写、拦截器的使用、结果类型的配置以及OGNL表达式的实践等。通过这些代码,初学者可以逐步...

    struts2day02

    本篇将深入探讨Struts2的基础开发知识,以帮助你更好地理解和应用这个强大的框架。 一、Struts2框架基础 1. **MVC模式**:MVC模式是软件工程中的一种设计模式,将业务逻辑(Model)、用户界面(View)和控制逻辑...

    Struts2项目案例

    在这个"Struts2项目案例"中,我们可以通过学习和实践来深入理解Struts2框架如何与数据库进行交互。 首先,让我们详细了解Struts2的核心概念: 1. **Action类**:在Struts2中,Action类是业务逻辑处理的主要载体。...

    达内培训机密资料_struts2_day03(2)

    根据给定的文件信息,我们可以总结出以下关于Struts2框架的重要知识点: ...通过以上知识点的学习和实践,可以更好地理解和掌握Struts2框架的核心概念和技术细节,从而在实际项目开发中更加高效地使用该框架。

    达内培训机密资料_struts2_day05(1)

    - 最终,视图层会显示给用户,此时可以通过Struts2提供的Taglib(标签库)来访问ValueStack中的数据。 ### Struts2拦截器 **知识点概述:** 拦截器(Interceptor)是Struts2框架中的一个重要组成部分,用于增强...

    黑马程序员struts2框架2016版资料

    Struts2框架是Java Web开发中的一个重要组成...每个`dayX.zip`文件可能对应课程的第X天内容,逐步深入地学习和实践Struts2的各个知识点。通过这些资料,开发者可以系统地学习并掌握Struts2框架,提升Java Web开发技能。

    Struts选择题(含答案).doc

    综上所述,Struts2是一个强大的MVC框架,通过配置文件控制应用的流程,使用Servlet作为前端控制器,Action类处理业务逻辑,模型类封装数据。理解并熟练掌握Struts2的配置、控制器和数据模型对于开发Java Web应用至关...

    Struts 2 + Spring 2 + JPA + AJAX 示例

    1. **整合 Struts 2 和 Spring 2**:配置 Struts 2 的 Action 类以利用 Spring 的依赖注入,实现控制器层的解耦。通过 Spring 的 ContextLoaderListener 初始化 Spring 容器,并将 Struts 2 的 Action 实例交由 ...

    struts日历

    Struts 是一个经典的Java Web开发框架,由Apache软件基金会维护,它主要负责处理HTTP请求,实现MVC(Model-View...通过这个实例,开发者可以深入理解Struts的工作流程,同时也能学习到如何将后端数据有效地呈现给用户。

    java\CoreJava笔记\CoreJAVA_day01

    - 面向对象编程(Object-Oriented Programming, OOP):Java是一种纯面向对象的语言,一切皆为对象,理解类、对象、封装、继承、多态等概念至关重要。 - 逻辑思维与面向对象思想:在编写代码时,需具备良好的逻辑...

    struts-apistruts-apistruts-api

    3. **ActionForm**:ActionForm类用于封装用户在表单中提交的数据,它对应于模型层中的数据实体。开发者可以根据需要创建ActionForm子类,并定义相应的属性和getter/setter方法。 4. **ActionForward**:Action...

    hibernate学习资料

    其中,Hibernate作为数据持久化工具,以其强大的对象关系映射(ORM)能力,极大地简化了数据库操作。今天,我们将聚焦于Hibernate的学习,通过一系列的学习资料,包括“day01”、“day02”、“day03”和“day04”,...

    传智168期JavaEE hibernate 姜涛 day34~day35

    Hibernate是一个开源的对象关系映射(ORM)框架,其基本概念是将Java对象映射到数据库表中,实现...同时,Hibernate以其轻量级的特点、高性能的映射能力和灵活的配置方式,成为了Java EE开发中常用的持久层框架之一。

    day12_javaweb_javascript_day12-xml_energy7fo_

    【标题】"day12_javaweb_javascript_day12-xml_energy7fo_" 提供的资源包主要涵盖了JavaWeb开发中的JavaScript和XML技术,是作者个人学习过程中的一个阶段性的总结,虽然标注为“day2”,但可以推测整个系列应该包含...

    可用_删减day17casee添加可以使用了,页面分页显示出错.rar

    3. 分页模型设计:在Java中,我们可以创建一个Page对象,包含当前页数、每页大小、总页数和数据列表等属性,用于封装分页信息。在处理分页逻辑时,这个对象可以方便地在前后端之间传递。 4. JSP或HTML渲染:前端...

    spring-day01

    Spring框架是一款开源的Java平台应用框架,以其轻量级的特点被广泛应用于企业级应用开发中。Spring的核心特性包括依赖注入(Dependency Injection, DI)和面向切面编程(Aspect-Oriented Programming, AOP)。它通过...

    超值个人java学习笔记

    多态则是指同一种行为在不同对象上有不同的表现形式,增强了程序的灵活性。 【Se上&Se下】 这部分内容可能指的是Java标准版(Java SE)的上半部分和下半部分。Java SE包括了Java的基础库,如集合框架、IO流、多线程...

    Java基础资料

    在这个章节,Day01可能会介绍OOP的基本概念,如封装、继承和多态。Day02可能进一步讲解类和对象的创建,包括构造方法和成员变量。Day03会涉及访问修饰符(public, private, protected, default)以及方法的定义。Day...

Global site tag (gtag.js) - Google Analytics