求助,spring mvc 拦截器如何获取 controller 返回的json结果

求助,spring mvc 拦截器如何获取 controller 返回的json结果,第1张

也许可以这样,你需要返回一个json,这个json由一个对象呗@ResponseBody自动序列生成,然后,你试着将这个对象保存进model里面,mvsetObject("xx",xx);然后在拦截器中拦截未返回的的那个方法中model里面的对象做处理,对象是引用,这里改了,如果@ResponseBody的返回处理还为发生,即可改变返回数据,至于取得,也可以将对象手动序列(找个api就行)!

int r=0;

SystemDataObjectsObjectParameter result = new SystemDataObjectsObjectParameter("Result",SystemDataDbTypeInt32);

moviesMovies_Create(Title, ConvertToDateTime("ReleaseDate"), Genres_List, Price, Rating, result);

r=(int)resultValue;//r就是你所需要的返回值

一般返回一个model这样

@model MvcMusicStoreModelsAlbum

方法:

public ActionResult Details(int id)

{ var album = storeDBAlbumsFind(id);

return View(album);

}

这个页面不止一个model,还有其他的,那么

Details/id,仅仅返回这一个return View(album); 我想返回其他model,在这个url里面和方法怎么写

Details/id?type=4,我想再返回类型的model

@model MvcMusicStoreModelsAlbum

@model2 MvcMusicStoreModelsAlbumType

如上,控制器里面返回2个model,按照我的理解应该这样

public ActionResult Details(int id,int type)

{ var album = storeDBAlbumsFind(id);

var albumtype=storeDBAlbumstypeFind(type);

第一种方法:使用ViewModel概念,即建立一个新的class,将所有model都做为它的属性出现,这里你直接返回这个ViewModel即可,如:

public class UserViewModel{

public User_Info User_Info{get;set;}

public User_Extension User_Extension{get;set;}

}

第二种方法:使用ViewData或者MVC3里的ViewBag都可以

超过一个集合数据,不建议用return返回,你完全放在ViewData中:ActionResult index()

{

DataTable dt1 = 数据库查询到的集合;

DataTable dt2 =数据库查询到的集合; ViewData["dt1"] = dt1;ViewData["dt2"] = dt2;

//return 还是返回某一个页面;

}在接受页面上,使用<%ViewData["dt1"] as DataTable%>的方式使用foreach或者for遍历即可。

以上就是关于求助,spring mvc 拦截器如何获取 controller 返回的json结果全部的内容,包括:求助,spring mvc 拦截器如何获取 controller 返回的json结果、MVC中通过.edmx调用存储过程处理返回值、mvc3,view页面要返回多个不同的model,从控制器里面怎么写等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9721673.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存