文档章节

Action和JSP之间的通信

萧小蚁
 萧小蚁
发布于 2015/06/10 16:39
字数 597
阅读 21
收藏 0
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>Struts2 HelloWorld示例</title>
	
  </head>
  
  <body>
    <h3>Struts2 HelloWorld示例</h3>
    <hr>
    <form action="login3.action" method="post">
    	用户名:<input type="text" name="userName"><br>
    	密    码:<input type="password" name="password"><br>
    	<input type="submit" value="登录">&nbsp;&nbsp;
    	<input type="reset" value="重置">
    </form>
    
    <hr/>
   	<a href="stu!add.action">增加</a><br/>
   	<a href="stu!delete.action">删除</a><br/>
   	<a href="stu!update.action">修改</a><br/>
   	<a href="stu!find.action">查询</a><br/>
  </body>
</html>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
	"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
	"http://struts.apache.org/dtds/struts-2.3.dtd">

<!-- step3:struct2 的核心配置文件 -->
<!-- step4:添加项目所需的文件 -->
<struts>
	<!-- 请求消息的编码方式  默认的编码为UTF-8 -->
	<constant name="struts.i18n.encoding" value="UTF-8"></constant>
	<!-- 指定被struts2处理的请求后缀类型。多个用逗号隔开 -->
	<constant name="struts.action.extension" value="action,do,go,zhangsan,lisi"></constant>
    <!-- 默认值为false(生产环境下使用),开发阶段最好打开 -->
    <constant name="struts.configuration.xml.reload" value="true"></constant>
    <!-- 是否使用struts的开发模式。开发模式会有更多的调试信息。默认值为false(生产环境下使用),开发阶段最好打开 
     -->
    <constant name="struts.devMode" value="false"></constant>
    <!-- 启用Action的name是否支持斜线(/) -->
    <constant name="struts.enable.SlashesInActionNames" value="true"></constant>
   	<constant name="struts.enable.DynamicMethodInvocation" value="true"></constant>
   	
   	
    <package name="default" namespace="/" extends="struts-default">
    
    	<!-- Action 在Struts2中Action是用来处理请求业务的 -->
		<action name="login" class="derun.action.LoginAction">
			<result name="success">/success.jsp</result>
			<result name="fail">/fail.jsp</result>
		</action>
		
		<action name="login2" class="derun.action.LoginAction2">
			<result name="success">/success.jsp</result>
			<result name="error">/fail.jsp</result>
		</action>
		
		<action name="login3" class="derun.action.LoginAction3">
			<result name="success">/success.jsp</result>
			<result name="error">/fail.jsp</result>
		</action>
		
		<action name="stu" class="derun.action.StudentAction">
			<result name="add">/add.jsp</result>
			<result name="delete">/delete.jsp</result>
			<result name="update">/update.jsp</result>
			<result name="find">/find.jsp</result>
		</action>
    </package> 


</struts>
package derun.action;

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

import derun.model.Student;

public class StudentAction extends ActionSupport {

	private Student stu;
	public String add(){
		System.out.println("添加信息:"+stu.getStuName()+"--->年龄:"+stu.getAge());
		return "add";
	}
	public String delete(){
		System.out.println("删除信息");
		return "delete";
	}
	public String update(){
		System.out.println("更新信息");
		return "update";
	}
	public String find(){
		System.out.println("查找信息");
		//ActionContext
		ActionContext context=ActionContext.getContext();
		context.put("name", "zhangsan");//request.setAttribute(key,value);
		context.getSession().put("age", 20);//session.setAttribute();
		context.getApplication().put("address", "beijing");//ServletContext.setAttribute();
		
		return "find";
	}
	public void setStu(Student stu) {
		this.stu = stu;
	}
	
}
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>My JSP 'find.jsp' starting page</title>
    
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->

  </head>
  
  <body>
    <h3>查询页面</h3>
    <hr>
    ${name }
    ${age }
  </body>
</html>


© 著作权归作者所有

共有 人打赏支持
上一篇: Struts2__CRUD
下一篇: Struts2 Action(2)
萧小蚁

萧小蚁

粉丝 98
博文 279
码字总数 192339
作品 0
海淀
程序员
私信 提问
加载中

评论(1)

泥沙砖瓦浆木匠
泥沙砖瓦浆木匠
写的不错~
web服务器中的容器以及工作流程

杂谈:项目到现在,已经有几个Phase过去了,杂乱的js,jsp,杂乱的action,代码已经是面目全非,更别提什么高内聚,低耦合这一说了。现在的工作状态是,要不就是绞尽脑汁地改以前留下来的巨坑...

王大叔爱编程
2014/09/25
0
0
Tomcat如何与Servlet对象进行交互

Tomcat 是Web应用服务器,是一个Servlet/JSP容器. Tomcat作为Servlet容器,负责处理客户请求,把请求传送给Servlet,并将Servlet的响应传送回给客户.而Servlet是一种运行在支持Java语言的服务器上...

KeepMoving
2015/03/09
0
0
适合初学者的struts简单案例

前言:虽然现在ssh开发满天飞,但是对于初学者来说,未必是好事,从基础学起,一步一个脚印,也许对他们来说更好。 接下来的时间里,讲解一个struts的简单案例,从基础学起,有兴趣的朋友可以...

精华之王
2009/04/11
0
0
搭建JEESZ分布式架构--消息中间件简介

消息中间件在JEESZ分布式架构中的作用 1) 消息中间件在分布式系统中完成消息的发送和接收。 2) 消息中间件可利用高效可靠的消息传递机制进行平台无关的数据交流, 并基于数据通信来进行分布式...

明理萝
08/14
0
0
JSP include directive 和JSP include的区别

Difference between JSP include directive and JSP include action <%@ include file=”filename” %> is the JSP include directive. At JSP page translation time, the content of the ......

enosh
2015/04/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

存储过程知识点收集

记录下,以后要常用的问题 1、获取刚刚插入数据产生的ID SCOPE_IDENTITY 返回当前作用域的插入后产生的一条ID @@IDENTITY 返回当前表的最后一条ID

轻轻的往前走
16分钟前
0
0
elixir keyword和map的区别

┌──────────────┬────────────┬───────────────────────┐ │ Keyword List │ Map/Struct │ HashDict (deprec...

wmzsonic
18分钟前
0
0
解决bootstrap-table-fixed-columns.js显示列与隐藏列按钮切换表格不对齐

<table class="table-striped table-hasthead nowrap" id="tableTest1" data-search="true" data-show-columns="true" data-fixed-columns="true" data-fixed-number="3"></table> 含有dat......

tianyawhl
21分钟前
0
0
ES6 系列之 defineProperty 与 proxy

摘要: ## 前言 我们或多或少都听过“数据绑定”这个词,“数据绑定”的关键在于监听数据的变化,可是对于这样一个对象:`var obj = {value: 1}`,我们该怎么知道 obj 发生了改变呢? ## def...

阿里云官方博客
26分钟前
0
0
美团点评携手 PingCAP 开启新一代数据库深度实践之旅(9000 字长文 / 真实“踩坑”经历)

一、背景和现状 在美团,基于 MySQL 构建的传统关系型数据库服务已经难于支撑公司业务的爆发式增长,促使我们去探索更合理的数据存储方案和实践新的运维方式。随着近一两年来分布式数据库大放...

TiDB
26分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部