`

使用域模型接收参数并封装

阅读更多

JSP请求代码,传了参数
<%@ 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 'index.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>
	使用Domain Model接收参数<a href="user/User_add?user.name=a&user.age=8">添加用户</a>
  </body>
</html>
 参看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>
<constant name="struts.ognl.allowStaticMethodAccess" value="true"></constant>
    <package name="user" namespace="/user" extends="struts-default">
        
        <action name="*_*" class="com.lbx.action.{1}Action" method="{2}">
            <result>/{1}_{2}_success.jsp</result>
            <!-- {0}_success.jsp -->
        </action>
    </package>
    
</struts>
 找到相应的Action
package com.lbx.action;

import com.lbx.model.User;
import com.opensymphony.xwork2.ActionSupport;

public class UserAction extends ActionSupport{
	
	private User user;
	
	public String add() {
		System.out.println("name=" + user.getName());
		System.out.println("age=" + user.getAge());
		return SUCCESS;
	}

	public User getUser() {
		return user;
	}

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

 UserAction中封装了一个User类
package com.lbx.model;

public class User {
	private String name;
	private int age;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	
}
 

分享到:
评论

相关推荐

    先进封装技术整理.pdf

    封装设计和建模已经在电子系统开发中得到长期的使用,包括用于预测基本性能的电学和热学模型。借助热机械建模,可以验证是否满足制造可行性和可靠性的要求。分析的目标是获得第一次试制时就达到预期性能的设计。 3....

    Struts2 的接受参数的几种方式

    ### Struts2 接受参数的几种方式 #### 第一种方式:直接在 ...使用域模型可以更好地封装业务逻辑;而模型驱动则提供了一种更高效、面向对象的方式来处理复杂数据结构。开发者可以根据项目的具体需求选择最合适的方案。

    Laravel5.1 框架模型查询作用域定义与用法实例分析

    查询作用域(Query Scopes)是Laravel提供的一种功能,允许开发者定义并复用复杂的查询逻辑,将其封装为独立的方法。这样做有助于保持代码的整洁和可维护性。以下是对Laravel5.1框架模型查询作用域定义与用法的详细...

    mqTest mq发送和接收文件

    3. **域模型**:这里提到的域模型可能指的是点对点(Point-to-Point,P2P)和发布/订阅(Publish/Subscribe,Pub/Sub)两种模式。在点对点模型中,消息被一个消费者接收并删除,确保每个消息只被处理一次。而在发布/...

    基于SIMULINK的F-14俯仰轴仿真程序代码MATLAB

    - **动态模型子系统**:封装了飞机的运动模型,可能包括空气动力学模型、惯性效应等。 - **控制与反馈子系统**:实现控制逻辑,包括控制器设计和反馈机制。 在进行仿真时,SIMULINK会根据模型的配置运行时间步进,...

    AngularJS中一般函数参数传递用法分析

    本文将对AngularJS中的函数参数传递用法进行详细分析,并结合具体的示例来说明模型参数和普通参数的具体功能及使用技巧。 首先,AngularJS中的函数参数传递主要分为模型参数和普通参数两种。模型参数的传递方式非常...

    SimuLink仿真卫星姿态控制.pdf

    SimuLink是MATLAB中用于多域仿真和模型设计的一个图形化编程环境。它允许工程师和科研人员对动态系统进行仿真,这些系统可能包括连续、离散时间或混合信号。SimuLink提供了交互式的图形化用户界面和一组库,这些库中...

    servlet 实现分页

    6. **处理结果**:在Servlet中,获取查询结果集后,将其转换为Java对象,然后放入请求作用域或会话作用域,以便在JSP页面中使用。 7. **JSP页面展示**:在JSP页面中,遍历存储在请求或会话中的数据,展示分页内容。...

    Simulink建模与仿真

    Simulink的使用基础包括对模型构建块的认识和操作,如信号源、接收器、数学运算块、逻辑运算块等。此外,还需要熟悉Simulink界面布局、模型的构建、参数设置以及模型调试等方面。Simulink模型创建后,可以通过其仿真...

    Python全套课程笔记-chap4-函数

    - 在参数前添加 `**`,表示该参数可以接收多个关键字参数,这些参数将被封装成字典。 ##### 4.2 逆向参数收集 - **列表/元组的解包**: - 在列表或元组前加上 `*`,将其元素分别传给函数的参数。 - **字典的解包**...

    MVC三层架构-Jsp+Servlet+Javabean

    2. **编写Servlet**:接着,创建一个Servlet,它接收HTTP请求,解析请求参数,调用JavaBean的方法进行业务处理,然后将处理结果保存到请求作用域或会话作用域。 3. **设计JSP**:创建JSP页面,通过EL(Expression ...

    Struts2 入门资料

    - **域模型**:Struts2支持将Action的成员变量映射为域模型对象,通过这种方式,可以更好地进行数据封装和验证。 10. **Action的参数传递**: 除了通过成员属性接收参数,还可以使用`params`拦截器接收请求参数,...

    Struts2 开发笔记

    2. 域模型(Domain Model):域模型对象是用于封装业务数据的实体类,可以被Action引用,Struts2支持将整个对象作为参数传递,方便进行表单回填和持久化操作。 以上是Struts2开发的基础内容,实际开发中还会涉及更多...

    matlab 程序 mdl格式

    每个模块都接收输入信号,处理它们,并产生输出信号。 5. **多域仿真**:Simulink能够处理多物理域问题,如机械、电气、热力等,使得跨学科的系统集成成为可能。 6. **嵌入式系统设计**:通过Real-Time Workshop,...

    Struts2 学习笔记.doc

    2. 域模型(Domain Model):Struts2支持使用域模型对象来封装请求参数,Action类可以持有这些对象的引用,实现模型和视图数据的共享。 以上是Struts2学习笔记的主要内容,涵盖了Struts2的基本架构、核心概念以及常用...

    开发者突击demo(JSP+JavaBean+Servlet)

    JavaBean可以在JSP中通过JSP动作标签(如)实例化并使用,也可以在Servlet中作为域对象进行操作。JavaBean提高了代码的复用性和可维护性。 Servlet是Java平台上的标准API,用于扩展Web服务器的功能。它们接收并响应...

    Agilent的ADS软件快速入门教程(十分全面,共包含3个文件)

    它允许用户使用S-参数模型、晶体管模型和自定义模型进行电路设计和优化。 2. **系统级设计**:ADS的系统级设计工具允许工程师在频域和时域下进行系统级仿真,考虑不同组件之间的相互作用。它可以处理射频链路,包括...

    java命名规范 开发规范

    1. 模块命名、数据库表命名、域模型命名、各分层的类/方法命名、页面的命名; 模块命名: a. 包命名:com.project_name.module_name.action/service/dao/ws; service的实现都置于...

    华为 NE05E, NE08E V300R005C10SPC100 特性描述 - PPP

    3. **LCP协商**:通过LCP,PPP可以协商各种链路层参数,如最大接收单元MRU,确保双方配置一致。 4. **低开销和速度**:PPP没有内置的重传机制,因此网络开销小,数据传输速度快。 **PPP原理** **基本概念** PPP...

    mvc图书商城

    - 控制器将模型返回的数据封装成模型视图对象(如ModelAndView)或直接放入request域。 - 控制器决定要显示哪个视图,然后将数据传给视图。 - 视图解析模型数据,生成对应的HTML响应,并返回给客户端显示。 **5. ...

Global site tag (gtag.js) - Google Analytics