`

绑定pojo对象及ServletAPI相关

 
阅读更多

绑定pojo对象及ServletAPI相关

 

package com.hous.springmvc.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

import java.io.IOException;
import java.io.Writer;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.hous.springmvc.pojo.User;

@Controller
public class PojoController {

	/**
	 * Spring MVC会按照请求参数名和POJO属性名进行匹配,
	 * 自动为该对象填充属性值,支持级联属性,如dept.deptId
	 */
	@RequestMapping("/testPojo")
	private String testPojo(User user) {
		System.out.println("testPojo=>" + user);
		return "success";
	}
	
	/**
	 * 可以使用Servlet原生API作为目标方法的参数,具体支持以下类型
	 * 
	 * HttpServletRequest
	 * HttpServletResponse
	 * HttpSession
	 * java.security.Principal
	 * Locale 
	 * InputStream
	 * OutputStream
	 * Reader
	 * Writer
	 * @throws IOException 
	 */
	@RequestMapping("/testServletAPI")
	private String testServletAPI(HttpServletRequest request,  
			HttpServletResponse response) {
		System.out.println("testServletAPI=>" + request +"^_^" + response);
		return "success";
	}
	
	@RequestMapping("/testWriterAPI")
	private void testWriterAPI(Writer out) throws IOException {
		System.out.println("testWriterAPI");
		out.write("Hello Shanshanbox.com");
	}
	
}

 

分享到:
评论

相关推荐

    Struts2和Struts1的一些区别

    - **与Servlet API的交互**:Struts1的Action对象直接依赖于Servlet API,这意味着开发者在编写Action时需要直接操作`HttpServletRequest`和`HttpServletResponse`对象。而在Struts2中,Action对象并不直接与这些...

    Struts1和Struts2的区别和对比

    页面绑定方面,Struts1依赖JSP标准机制,而Struts2采用ValueStack技术,允许taglib直接访问值栈中的对象,无需在视图和对象之间建立直接绑定,提高了重用性。 在类型转换上,Struts1的ActionForm属性通常是String...

    struts2面试题1.pdf

    Action 接口不是必须的,任何有 execute 标识的 POJO 对象都可以用作 Struts2 的 Action 对象。 线程模式 Struts1 Action 是单例模式,并且必须是线程安全的,因为仅有 Action 的一个实例来处理所有的请求。单例...

    struts2新特性预览

    Struts1使用JSP标准机制绑定对象到视图,而Struts2通过ValueStack技术,允许标签库访问数据,无需将视图直接绑定到特定对象,提高了代码复用。 8. **类型转换**: Struts1的ActionForm属性通常是String类型,依赖...

    struts1和struts2的区别

    更重要的是,Struts2允许任何带有execute方法的普通Java对象(POJO)作为Action,提供了更大的灵活性。 线程模型是另一个关键区别。Struts1的Action类是单例模式的,这意味着所有请求都会共享同一个Action实例,这...

    strut2权威指南

    在视图与值的绑定上,Struts1采用标准JSP机制,而Struts2利用ValueStack技术,允许标签库无需直接绑定视图到对象类型,增强了视图的复用性。 类型转换方面,Struts1的ActionForm属性通常为String类型,依赖于...

    struts1和struts2的对比

    - Struts1的Action直接与Servlet API交互,即Action方法会直接接收HttpServletRequest和HttpServletResponse参数。 - 这种方式使得Action类与Web容器紧密耦合,降低了可移植性和可测试性。 - **Struts2与Servlet ...

    Structs1.x与Structs2.0的区别

    Action接口不是必须的,任何有execute标识的POJO对象都可以用作Structs2.0的Action对象。 线程模式 Structs1.x的Action是单例模式,并且必须是线程安全的,因为仅有Action的一个实例来处理所有的请求。单例策略...

    struct 2 教材电子班的

    Action对象无需继承特定基类,任何包含`execute`方法的Plain Old Java Object(POJO)都可以作为Struts2的Action。 2. **线程模型** - **Struts1.x**:Action类是单例模式,所有请求共享一个实例,需要确保线程...

    Struts2与struts1不同

    尽管Struts2仍能访问请求和响应对象,但它通过其他设计降低了对Servlet API的直接依赖。 在测试方面,Struts1的Action由于直接暴露了Servlet API,测试需要依赖容器,通常需要使用Struts TestCase这样的第三方工具...

    struts2开发指南

    - Struts2则允许Action类实现Action接口,甚至可以不直接实现,只要包含一个`execute`方法的普通Java对象(POJO)就能作为Action使用。此外,`ActionSupport`基类提供了默认的实现,方便开发者快速开始。 2. **...

    struts2开发文档

    - **Action实现**:Struts1要求Action类继承自特定基类,而Struts2的Action可以是任何POJO对象,无需特定的继承关系。 - **线程模型**:Struts1的Action是单例模式,处理所有请求,可能导致线程安全问题;而Struts...

    struts1.x和struts2.x区别

    而在Struts2.x中,Action不需要直接处理这些Servlet API的对象,取而代之的是通过拦截器间接地与请求和响应交互,这使得代码更加清晰和易于维护。 #### 测试支持 Struts1.x的测试通常依赖于对Servlet API的模拟,...

    SpringMVC 学习总结

    2. POJO 参数:请求参数名与 POJO 类属性名匹配时,会自动将参数值注入到 POJO 对象中。 3. @RequestParam 注解:通过在方法参数前添加 @RequestParam,可以指定参数名,即使与方法参数名不同。 4. @PathVariable:...

    struts1&struts2

    - Struts1使用JSP标准机制将对象绑定到视图,而Struts2引入了“ValueStack”技术,标签库可以直接访问值,无需显式绑定对象与视图。 8. **类型转换**: - Struts1的ActionForm属性通常是String类型,依赖于...

    struts1与struct2的不同

    - **Struts1**:Action直接依赖于Servlet API,`HttpServletRequest`和`HttpServletResponse`作为参数传递给`execute`方法,测试时需要依赖容器。 - **Struts2**:Action不依赖于容器,允许独立测试。虽然仍可以...

Global site tag (gtag.js) - Google Analytics