sprigboot   recontroller 是responsebody与controller结合 这样 就使每个方法默认返回json…
使用 @ControllerAdvice & ResponseBodyAdvice 拦截Controller方法默认返回参数,统一处理返回值/响应体 1.Controller代码 以下是Controller查询方法源码: /** * controller * * @author yclimb * @date 2018/6/29. */ @RestController @RequestMapping("/manage/user") public class TestControl…
@ResponseBody 在返回的数据不是html标签的页面,而是其他某种格式的数据时(如json.xml等)使用: 不在springMvc中配置json的处理的话,我们通常会在Controller层中获取到数据之后进行类型转化,将数据转成json字符串,比如调用fastjson进行转化,如下 @RequestMapping("/getCategoryTree") @ResponseBody public String getmCategoryTree() { String data…
近期由于项目的改动变更,在使用springmvc和springboot测试的时候发现一个有趣的现象 1.springmvc的controller使用@ResponseBody返回的仅仅是json格式的字符串,如果要在页面使用json对象还需要通过转换才能得到json对象,这样才能使用相关的属性或者做遍历 1 @RequestMapping("statisticsByYear.do") 2 @ResponseBody 3 public String statisticsYear(Stri…
1. 1. 处理静态资源2. controller如何接受请求得参数3. 如何把controller得数据保存到view.4. 在controller如何完成重定向到指定路径5. controller返回json数据. 2.处理静态资源 什么才是静态资源: [css, js,image,html] 解决办法: 在springmvc配置文件中加入两个配置. <!--放行静态资源--> <tx:default-servlet-handler/> <tx:annotation-dr…
一.SpringMVC使用@ResponseBody时返回json的日期格式 前提了解: @ResponseBody 返回json字符串的核心类是org.springframework.http.converter.json.MappingJacksonHttpMessageConverter,它使用了Jackson 这个开源的第三方类库.主要是以下两个jar包:jackson-core-asl-1.6.4.jar:jackson-mapper-asl-1.6.4.jar. 出现问题: 使用@R…
方法的返回值1.ModelAndView这个就不多说,这是最基础的,前面定义一个ModelAndView,中途使用addObject方法添加属性,再返回.视图解析器会自动扫描到的.2.String这个就有三种情况了:<1>return普通的string这个string的表示逻辑视图名,真正跳转的视图名=前缀+逻辑视图名+后缀返回值为string也可以实现类似于ModelAndView的效果,如何进行给视图值呢?我们可以给方法加一个Model的参数,然后调用model的addAttribute方…
在使用spring-mvc的mvc的时候既享受它带来的便捷,又头痛它的一些问题,比如经典的中文乱码问题.现在是用json作为客户端和服务端 的数据交换格式貌似很流行,但是在springmvc中有时候会因为我们的各种疏忽从而造成页面ajax请求到的相应数据,如果带有中文常常是以 “????”显示,让人很恼火.在网上搜索后有很多解决的方案,方案都说中文乱码问题牵扯到springmvc的 StringHttpMessageConverter类,给出的答案都是自己去写个类继承它,然后用一堆眼花缭乱的配置…
一.SpringMVC使用@ResponseBody时返回json的日期格式 前提了解: @ResponseBody 返回json字符串的核心类是org.springframework.http.converter.json.MappingJacksonHttpMessageConverter,它使用了Jackson 这个开源的第三方类库.主要是以下两个jar包:jackson-core-asl-1.6.4.jar:jackson-mapper-asl-1.6.4.jar. 出现问题: 使用@R…
刚到一家公司,做原始的工作---接口,程序就我一人,没环境,没架构,更没旧项目可以利用,一切从0开始,经理以为我是老鸟,来就布置任务,要一周拿出结果.其实有现成架构的话写个接口还不是分分钟钟的事,关键是什么都没有.闲话少说,Dao,service都有了,也能拿到数据,Controller也欧了,页面直接访问也能拿到数据.问题出来了,直接返回json的话总报错,提示406. 疯狂百度,分析了一下,原来是不支持数据转换惹的祸.大致解决过程这样的:​ ​第一步,引入包:大致是jackson-annot…
SpringMVC的@ResponseBody,返回json,如果有中文显示乱码的解决办法. 在SpringMVC的配置文件中 <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"> </bean> 查看了AnnotationMethodHandlerAdapter的源码,发现其默认编码为构造参数有StringHttpMessageC…
Controller methods and views 控制器方法与视图 2017-3-7 9 分钟阅读时长 作者 By Rick Anderson We have a good start to the movie app, but the presentation is not ideal. 我们在movie 应用上已经有了一个好的开始,但是表现层不是很理想. We don't want to see the time (12:00:00 AM in the image below) an…
解决方法一:@RequestMapping(value="/getphone",produces = "text/plain;charset=utf-8") /**输入手机号码后判断手机号是否存在*/ @RequestMapping(value="/getphone",produces = "text/plain;charset=utf-8") @ResponseBody public String getphone(Stri…
添加jackson依赖 添加@ResponseBody 测试:  注意,如果输入中文,出现乱码现象,则需要@RequestMapping(value="/appinterface", produces = "text/json;charset=UTF-8") 原理: 当一个处理请求的方法标记为@ResponseBody时,就说明该方法需要输出其他视图(json.xml),SpringMVC通过已定义的转化器做转化输出,默认输出json. 其实是注解驱动帮我们做了这件…
spring版本:4.2.5.RELEASE 查看“org.springframework.http.converter.StringHttpMessageConverter”源码,中有一段说明: By ;&#;&#;}), and writes with a {@code Content-Type} of {@code text/plain}. This can be overridden by setting the {@link #setSupportedMediaTypes sup…
一般service方法是有事务的,把所有操作封装在一个service方法中是比较安全的. 如果在controller中调用多个service方法,只有查询的情况下是可以这样的.…
这确实是个蛋疼的问题,Spring中解析字符串的转换器默认编码居然是ISO-8859-1 既然找到问题了,那就必须想办法改过来,不同版本的Spring好像方法还不一样,网上不少说的都是Spring3.*的,现在Spring4早都出来了 更改方式可以参考 http://stackoverflow.com/questions/3616359/who-sets-response-content-type-in-spring-mvc-responsebody http://www.cnblogs.com…
@ResponseBody 返回json字符串的核心类是org.springframework.http.converter.json.MappingJacksonHttpMessageConverter,它使用了Jackson 这个开源的第三方类库.主要是以下两个jar包:jackson-core-asl-1.6.4.jar:jackson-mapper-asl-1.6.4.jar. @ResponseBody 返回json字符串的核心类是org.springframework.http.co…
使用SpringMvc框架,在访问ControllerA的时候,将A里面的参数传递到ControllerB中.适用于同一框架下两个不同Controller或者由rpc(dubbo)连接的两个工程里的Controller.我总结了两个方法: 将ControllerA的数据传到一个jsp的容器中保存,在由jsp将数据提交到ControllerB中获取. ControllerA代码: @RequestMapping("/ControllerA") public String A(Model…
之前写过一篇记录文章,写的是将一个比较复杂的数据结构在前台组合起来后传递到后台. 当时并不太了解@RequestBody,也并没有使用js提供的JSON.stringify()方法 所有都是自己写的,比如js将json转为字符串的方法,后台接收json转成实体的方法. 最近接触到了@RequestBody,于是想将之前的代码改写一下. 首先@RequestBody需要接的参数是一个string化的json,这里直接使用JSON.stringify(json)这个方法来转化 其次@RequestB…
在mvc的项目中,我们前台做一些操作时,后台要返回一些结果给前台,这个时候我们就需要有一个状态来标识到底是什么类型的错误, 例如: 执行删除的时候,如果操作成功(1行受影响),我们需要返回状态为1并输出返回 “ 删除成功 ” 等提示语 执行删除的时候,如果没有做任何操作(0行受影响),我们需要返回状态为2并输出返回 “ 删除失败  ”等提示语 执行删除的时候,如果直接抛异常,我们需要返回状态为3并输出返回 “ 执行sql异常  ”等提示语 代码如下: [HttpPost] public Acti…
有时候我们发现接收的是中文,返回却是个?.这确实是个蛋疼的问题,Spring中解析字符串的转换器默认编码居然是ISO-8859-1 /** * Implementation of {@link HttpMessageConverter} that can read and write strings. * * <p>By default, this converter supports all media types ({@code */*}), * and writes with a {@c…
从服务器获取所需数据(JSON格式) 观前提示:本系列文章有关服务器以及后端程序这些概念,我写的全是自己的理解,并不一定正确,希望不要误人子弟.欢迎各位大佬来评论区提出问题或者是指出错误,分享宝贵经验.先谢谢了( ̄▽ ̄)"! 虽然说可以利用session会话来进行传值,但是使用json字符串这么一种通用的数据格式或许更方便一点,具体做法也不困难,分步骤来看看吧! 服务器端: 首先在pom.xml里添加如下依赖: <!--阿里FastJson--> <dependency>…
MVC中通常分区域编程,互不干扰,如果需要设置某个区域下面的某个控制器下面的某个方法为默认启动页的话,直接修改项目的路由如下: public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.MapRoute( name: "Default", url: "{controller}/{ac…
json格式:{"totle":22,"rows":"sss"} map格式:{totle=22, rows=sss} 一.springMVC4的配置: 1.需要的jar包: 2.springMVC.xml <bean id="messageAdapter" class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandler…
先说最简单的,适合简单数据 一.使用controller as <body ng-controller="ParentCtrl as parent"> <input ng-model="parent.name" /> {{parent.name}} <div ng-controller="ChildCtrl as child"> <input ng-model="child.name"…
如果在前端的页面中使用了 Ueditor 编辑器,那么在提交表单数据时,将不会执行 期望的 Controller 中的 Action ,造成这样的原因是: 在 MVC 4 的框架中,当前端页面需要提交表单到 Controller 的 Action 中时, MVC 4 的框架出于安全机制的考虑,会对表单进行危险字符串验证过滤,因为 Ueditor 会产生一些额外的 html 标签和 js, 这样一来,自然就不会进入 Controller 的 Action 中了,在用 FireFox 浏览器时进行发…
参考:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/examining-the-details-and-delete-methods 我们再来看看自动生成的Details 和Delete methods. MoviesController中的Details方法: public ActionResult Details(int? id) { if (id == null) { return new H…
本打算今天早点下班,结果下午测试调试程序发现一个问题纠结到晚上才解决,现在写一篇博客来总结下. 是这样的,本人在Spring mvc控制层用到了@ResponseBody标注,以便返回的数据为json格式的数据,到前端JS中用. 问题来了,当我用火狐调试发现请求总是报:406 Not Acceptable,message:description The resource identified by this request is only capable of generating respon…
ι 版权声明:本文为博主原创文章,未经博主允许不得转载. 原因: Spring中解析字符串的转换器默认编码格式是ISO-8859-1 public class StringHttpMessageConverter extends AbstractHttpMessageConverter<String> { public static final Charset DEFAULT_CHARSET = Charset.forName("ISO-8859-1"); - 2种解决方案…