Spring Json View项目为Spring MVC扩展了Ajax功能
1.将spring-json.jar和sojo.jar文件放入类路径;
2.为spring mvc 配置支持Ajax的视图解析器:
<!-- View Resolver -->
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass">
<value>org.springframework.web.servlet.view.JstlView</value>
</property>
<property name="prefix">
<value>/WEB-INF/jsp/</value>
</property>
<property name="suffix">
<value>.jsp</value>
</property>
</bean>
<bean name="xmlViewResolver" class="org.springframework.web.servlet.view.XmlViewResolver" >
<property name="order" value="1"/>
</bean>
为什么是两个?一个给jsp用,另一个给需要将返回的model转换成Json字符串的Ajax视图用.
3.像为jsp编写控制器那样,该怎么写还怎么写:
public class SimpleJsonGetController implements Controller {
private ProfileService profileService;
public void setProfileService(ProfileService profileService) {
this.profileService = profileService;
}
@Override
public ModelAndView handleRequest(HttpServletRequest arg0,
HttpServletResponse arg1) throws Exception {
String roleId=(arg0.getParameter("roleId")!= null)?arg0.getParameter("roleId"):"1";
List select2=profileService.getRemainedTopicsByRole(Integer.parseInt(roleId));
List select3=profileService.getTopicsByRole(Integer.parseInt(roleId));
HashMap map=new HashMap();
map.put("select2", select2);
map.put("select3", select3);
//map->json的转换是自动的
return new ModelAndView("hello",map);
}
4.jsp 文件中引用的js文件如下:
$(document).ready(function(){
//jQuery test
$("a").click(function(event){
alert("as you can see, the link no longer took you to jquery.com");
event.preventDefault();
});
//button test
$('#getName').click(function(){
$.getJSON('hello.htm', function(data) {
$('#username').html( data.username );
$('#selectfrom').empty();
var users = data.users;
$.each(users,function(index,value){
$("#selectfrom")[0].options.add(new Option(value.username,value.userId,false,false));
});
});
});
$('#select1').change(function() {
var rid=$('#select1').val();
$.getJSON('hello.htm?roleId='+rid, function(data) {
$('#select2').empty();
$('#select3').empty();
var select2 = data.select2;
var select3 = data.select3;
$.each(select2,function(index,value){
$("#select2")[0].options.add(new Option(value.topicName,value.topicId,false,false));
});
$.each(select3,function(index,value){
$("#select3")[0].options.add(new Option(value.topicName,value.topicId,false,false));
});
});
});
//button click event
$('#authorize').click(function(){
$.post("profile.htm", $("#form1").serialize());
alert("OK");
});
});
Js程序调用hello.htm返回结果如下(控制器所返回的Json格式的模型map):
{"username":"张三","users":[{"username":"root","password":"spk321","userId":"43","roleId":"33"},{"username":"Spongebob","password":"hmbb123","userId":"44","roleId":"33"}]}
分享到:
相关推荐
Spring MVC与Ajax结合使用,可以实现更高效、更流畅的用户界面。例如,当用户在前端进行某些操作,如提交表单,我们可以使用Ajax发送POST请求到Spring MVC的Controller,Controller处理业务逻辑后,将结果以JSON或...
将Spring MVC与Ajax结合使用,可以实现页面的异步更新,提升用户体验,同时保持服务器负载均衡。 首先,我们需要理解Spring MVC的基本工作流程。当用户发起请求时,Spring MVC的DispatcherServlet会拦截这个请求,...
Spring MVC与Ajax的结合则提高了用户体验。Ajax(Asynchronous JavaScript and XML)允许前端页面在不刷新整个页面的情况下与服务器进行异步通信。在Spring MVC中,可以通过配置Ajax处理器或使用jQuery等库来实现...
**Spring3 MVC与Ajax结合使用JSON** 在现代Web开发中,Spring框架的MVC模块与Ajax和JSON的集成是创建动态、响应式用户界面的关键技术。这个"Spring3 MVC Ajax with JSON"项目提供了一个Eclipse工程,包含了实现这一...
总结来说,本文详细介绍了Spring MVC与Ajax技术结合使用来实现文件导入导出功能的过程,重点强调了在前后端交互过程中对于文件类型校验、上传方式选择以及安全性考虑的重要性,并且对相关代码段进行了分析和讲解。...
在Spring MVC框架中,Ajax(Asynchronous JavaScript and XML)是一种常用的技术,用于在不刷新整个页面的情况下与服务器进行异步通信。本章将探讨如何在Spring MVC中集成和使用Ajax,以及涉及的上传和下载功能,...
**Spring MVC + Ajax 用户登录增删改查功能详解** 在Web开发中,Spring MVC和Ajax是两种非常重要的技术。Spring MVC作为Spring框架的一部分,提供了一种模型-视图-控制器的架构模式,使得开发者能够更好地组织和...
本示例探讨的是如何利用Spring MVC后端框架与前端的Ajax技术来实现高效的文件上传,相较于传统的表单提交方式,这种方法具有无刷新、用户体验更佳的优势。以下是关于这个主题的详细讲解。 首先,我们需要理解Spring...
在IT行业中,Spring MVC和Ajax是两种非常关键的技术,它们在构建现代Web应用程序时发挥着重要作用。本示例将深入探讨如何将这两种技术结合起来实现异步数据交互。 首先,Spring MVC是Spring框架的一个模块,主要...
十五、Spring MVC处理ajax请求:讲解了如何在Spring MVC中处理异步JavaScript和XML(AJAX)请求,包括配置和控制器中的代码实现。 十六、Spring MVC关于写几个配置文件的说明:介绍了在Spring MVC项目中需要配置...
在本示例中,“mvc-ajax.rar_spring mvc”是一个包含使用Ajax技术与Spring MVC集成实现账号添加功能的项目。让我们深入探讨这个主题。 首先,Spring MVC是Spring框架的一个组件,专门用于处理Web应用程序的请求和...
【标题】"maven与spring MVC"涉及到的是Java Web开发中的两个关键组件——Maven和Spring MVC,它们在构建和管理复杂项目时起着至关重要的作用。Maven是一个项目管理和综合工具,它通过提供一个标准化的构建过程和...
### Spring MVC 与 AJAX/JSON #### 使用 JSON 和 AJAX 在 Spring MVC 中,可以轻松地与 AJAX 结合,实现异步数据交换。对于 JSON 数据的处理,Spring 提供了内置的支持。 - **使用 `@RequestBody` 和 `@...
十五、spring mvc 处理ajax请求 十六、spring mvc 关于写几个配置文件的说明 十七、spring mvc 如何取得Spring管理的bean 十八、spring mvc 多视图控制器 十九、 <mvc:annotation-driven /> 到底做了什么工作 二十、...
二、Spring MVC与AJAX的结合 AJAX(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下更新部分网页的技术。Spring MVC通过使用DispatcherServlet和HandlerMapping,可以处理异步的AJAX请求。...
十五、spring mvc 处理ajax请求 十六、spring mvc 关于写几个配置文件的说明 十七、spring mvc 如何取得Spring管理的bean 十八、spring mvc 多视图控制器 十九、 <mvc:annotation-driven /> 到底做了什么工作
通过Ajax,jQuery可以与后台Spring MVC控制器进行无刷新的数据交互,提升用户体验。 **Twitter Bootstrap 的引入** Twitter Bootstrap 是一个流行的前端开发框架,提供了响应式布局、预定义的CSS样式、JavaScript...
**Spring3 MVC与Ajax整合详解** 在Web应用开发中,Spring3 MVC框架和Ajax技术的结合使用能够极大地提升用户体验,实现页面的无刷新更新。本文将深入探讨如何在Spring3 MVC项目中集成Ajax,以便更好地理解这两者的...