`
临听岗岗
  • 浏览: 9731 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

spring3.1 mvc 对ajax的支持

 
阅读更多

 最近学习了一下spring mvc,其简单的配置和对ajax的支持让笔者真是眼前一亮,

在这里记录下来方便以后查询

 

首先定义UserController类,相当于struts里德action类

package com.alfa.action;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;


import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import com.alfa.model.Mail;
import com.alfa.model.User;
import com.alfa.service.FrontDesk;

@Controller
public class UserController {
	
	@Autowired
	private FrontDesk frontDesk;

	@RequestMapping("/user/addTest")
	public @ResponseBody User addTest(){
		System.out.println("xxx");
		User user = new User();
		user.setId(1);
		user.setUsername("xxx");
		return user;
	}
	
	@RequestMapping("/user/addTest1")
	@ResponseBody
	public String addTest1(){
		System.out.println("xxx");
		User user = new User();
		user.setId(1);
		user.setUsername("xxx");
		return "yyy";
	}
	
	@RequestMapping("/user/addTest2")
	@ResponseBody
	public List<User> addTest2(){
		System.out.println("xxx2");
		List<User> users = new ArrayList<>();
		User user = null;
		for (int i = 0; i < 5; i++) {
			user = new User();
			user.setId(i);
			user.setUsername("xxx"+i);
			users.add(user);
			
		}
		return users;
	}
	
	@RequestMapping("/user/addTest3")
	@ResponseBody
	public Map<String, Object> addTest3(){
		System.out.println("xxx");
		Map<String, Object> map = new HashMap<>();
		map.put("str", "xxx");
		map.put("csg", "xxx");
		return map;
	}
	
	@RequestMapping("/user/addTest4")
	@ResponseBody
	public boolean addTest4(User user){
		System.out.println(user.getId());
		System.out.println(user.getUsername());
		return true;
	}
			
}

 

 

在src目录下创建一个spring-servlet.xml文件,也可以从下载的spring文档里copy,类似于struts.xml

 

 

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xmlns:p="http://www.springframework.org/schema/p"
     xmlns:context="http://www.springframework.org/schema/context"
     xmlns:mvc="http://www.springframework.org/schema/mvc" 
     xsi:schemaLocation="http://www.springframework.org/schema/beans
     http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
		http://www.springframework.org/schema/context
		http://www.springframework.org/schema/context/spring-context-3.0.xsd
		http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd"

		>
<!-- 自动扫描action包里的带有@Contaoller注解的类-->

   <context:component-scan base-package="com.alfa.action"></context:component-scan>
   <mvc:annotation-driven/>
   <!-- 启动Spring MVC的注解功能,完成请求和注解POJO的映射请求映射-->
   <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" />
	 
	
    <bean id="viewResolver"
		class="org.springframework.web.servlet.view.UrlBasedViewResolver">
		<property name="viewClass"
			value="org.springframework.web.servlet.view.JstlView" />
		
	</bean>

</beans>


 

 

接下来就是web.xml

 <servlet>
   <servlet-name>dispatcherServlet</servlet-name>
   <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
   <init-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:spring-servlet.xml</param-value>
   </init-param>
   <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
   <servlet-name>dispatcherServlet</servlet-name>
   <url-pattern>*.html</url-pattern>
  </servlet-mapping>
  

 

核心的就是这些配置,页面上的触发

javascript 代码

$.ajax({
    		   type:'POST',
			   url: '${ctx}/user/addTest.html',
			   dataType : 'json',  
			   success: function(data){
			     alert("Data Saved: "+data.username);
			   },
			   error:function(data){
				   alert("error1");
			   }
			}); 

 

 

分享到:
评论

相关推荐

    spring3.1MVC+mybatis3.1框架集成及事务,分页使用

    在本文中,我们将深入探讨如何将Spring MVC 3.1与MyBatis 3.1框架集成,并讨论其中涉及的关键技术,如事务管理、分页和JSON数据交换。此外,我们还将简要提及开发环境中使用的工具,如Eclipse 4.3、Maven 3.0.5和...

    spring3.1+hibernate4.0+struts2.3

    Struts 2.3则提供了更好的异常处理机制,增强了国际化支持,并且对AJAX和RESTful服务有较好的支持。 描述中提到的"hibernate4.0+spring3.1+struts2.3所需jar我整理好,只需使用即可",意味着已经有人预先完成了这三...

    JSF1.2+JPA2.0+Spring3.1整合开发

    Spring 3.1引入了对Java EE 6的支持,以及对Groovy和SpEL(Spring Expression Language)的增强。 **整合JSF 1.2、JPA 2.0与Spring 3.1** 整合这三个技术的关键在于它们之间的协调工作。首先,Spring作为整个应用的...

    struts2.2.3-hibernate3.3.1-spring3.1.zip jar 包

    Spring3.1 引入了新的特性,比如Groovy配置支持、@Scheduled定时任务注解、以及对JavaConfig的增强,使得无XML配置成为可能。`spring-framework-3.1.0.M1 jar 包.zip`包含了Spring框架的相关库文件,方便开发者在...

    Struts2.2.3 Spring3.1 ibatis2.0 jar包

    Spring3.1版本引入了更多改进,如更强大的数据访问支持、增强的JSR-330注解支持和对Groovy的支持,使得代码更加简洁和模块化。Spring还包含了Spring MVC,一个与Struts2类似的MVC框架,可以与Struts2进行集成。 ...

    Wicket6.0_Spring3.1_Hibernate4.1_JPA全注解实例

    标题 "Wicket6.0_Spring3.1_Hibernate4.1_JPA全注解实例" 描述了一个基于Java技术栈的Web应用开发项目,它整合了四个关键的技术:Wicket 6.0、Spring 3.1、Hibernate 4.1以及JPA。这个项目采用了全注解的方式,使得...

    wicket6.0 + hibernate4.1 + spring3.1 基于J2EE的实例程序

    《基于J2EE的Wicket6.0+Hibernate4.1+Spring3.1实例程序详解》 在当今的Web开发领域,Java EE(J2EE)框架的使用广泛而深入,尤其在企业级应用中占据重要地位。本文将详细探讨一个基于J2EE的实例程序,它整合了...

    Struts2_EasyUI_Spring3.1整合

    Struts2、EasyUI 和 Spring 3.1 是三个在Java Web开发中广泛使用的框架,它们各自在不同的层面上提供功能支持。Struts2 是一个强大的MVC(Model-View-Controller)框架,用于构建可维护性和扩展性高的Web应用程序。...

    DWR3.0_Spring3.1_Hibernate4.1_JPA全注解实例

    《DWR3.0_Spring3.1_Hibernate4.1_JPA全注解实例》是一个集成技术的实践教程,涵盖了Direct Web Remoting (DWR) 3.0、Spring框架3.1、Hibernate持久化框架4.1以及Java Persistence API (JPA)的全注解使用方法。...

    spring3.1+struts2.3+hibernate4.1小例子(有jar)

    标题中的"spring3.1+struts2.3+hibernate4.1小例子"指的是一款基于Java的Web应用程序开发示例,它整合了三个流行的技术框架:Spring 3.1、Struts 2.3和Hibernate 4.1。这个小例子可能是一个学习资源或模板,用于教授...

    wicket6.0 + hibernate4.1 + spring3.1 基于JPA的实例程序。

    这是一个基于Java技术栈的Web应用程序实例,主要使用了Wicket 6.0、Hibernate 4.1和Spring 3.1框架,并结合JPA(Java Persistence API)进行数据持久化操作。下面将详细阐述这些技术和它们在项目中的作用。 1. ...

    Struts2+Spring3.1+MyBatis3.06+EasyUI整合

    **Spring3.1** 是一个全面的Java企业级应用开发框架,支持依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)。Spring的IoC容器管理着应用程序的组件,使得代码更加松耦合。...

    最新SSH开发的全部JAR集合_Struts2.3.4.1+Hibernate4.1.7+Spring3.1.20_SSH

    Spring3.1.20版本在当时的Spring框架中是一个成熟的版本,它增强了对JSR-330标准的支持,改进了数据源配置,以及对AspectJ的集成。Spring的这些特性使得开发者能够编写松耦合、可测试的代码,降低了应用的复杂性。 ...

    SSH框架中SpringMVC

    Spring MVC 集成了 JSR 303 规范,允许对模型数据进行校验,提供了注解式的验证方式,提高了代码的可读性和可维护性。 以上就是关于 Spring 3.1 MVC 的核心概念和特性介绍,这些内容涵盖了从请求处理流程到各种高级...

    Pro Spring MVC With Web Flow

    Spring MVC and Spring Web Flow have been upgraded in the new Spring Framework 3.1 and are engineered with important considerations for design patterns and expert object-oriented programming techniques...

    Spring MVC实现个人网盘

    - **易于测试**:Spring MVC 提供了强大的支持,使得编写单元测试变得非常简单。 - **高度可扩展性**:提供了丰富的接口和默认实现,开发者可以根据需求定制特定的功能。 - **简洁的使用体验**:Spring MVC 内部虽然...

    Spring3.1.1+struts2.3.4+hibernate4.1 jar包

    Struts2.3.4版本增强了Action类的灵活性,支持更多种结果类型,提供了更丰富的拦截器库,以及对JSON和AJAX的支持,使得前端交互更加顺畅。 **Hibernate框架** 是Java社区中最流行的ORM解决方案之一,它允许开发者用...

    spring-framework-3.1.0.CI-1162.zip

    9. **Ajax 支持**:利用 jQuery 或者其他 JavaScript 库,Spring MVC 可以很容易地实现异步请求,提高用户体验。 10. **MVC 插件**:Spring MVC 还支持多种插件,如 Tiles、SiteMesh 等,用于页面布局和装饰。 在...

    dwr2.0整合Struts1.3+hibernate3.1+spring2.5的项目

    Spring 2.5版本加强了对JSR-303(Bean Validation)和AspectJ的支持,使得代码更加模块化,降低了耦合度。 **整合过程** 1. **Spring与Hibernate整合**:Spring可以通过其Hibernate Template或JdbcTemplate来管理...

    集成hibernate3.6.8+spring3.0.6+struts2.2.3.1实例

    Spring 3.0.6版本引入了更多模块,如Spring MVC、Spring Security和Spring Data,增强了对RESTful服务的支持,并优化了与第三方库的集成,如Hibernate。在本实例中,Spring将作为服务层和数据访问层的协调者,负责...

Global site tag (gtag.js) - Google Analytics