bboss mvc控制器方法响应报文注解ResponseBody使用说明
@ResponseBody注解被应用于控制器方法的响应值上,可以为应用程序丰富便捷的功能,下面分别说明。
1.将字符串作为响应报文返回到客户端
可以在bboss-mvc.xml配置中全局指定响应String报文的字符编码:
<property class="org.frameworkset.http.converter.StringHttpMessageConverter" f:responseCharset="UTF-8"/>
2.将对象作为json报文响应报文返回到客户端
bboss mvc可以将各种对象转换为json格式报文返回给客户端
3.将对象作为jsonp报文响应报文返回到客户端
bboss mvc可以将各种对象转换为jsonp格式报文返回给客户端,jsonp报文与json报文类似,都是响应json格式的报文,区别就是jsonp报文方法可以接受跨站请求,而json报文方法不可以。
4.注解File对象提供文件下载功能
5.注解Resource类型提供资源下载功能
包括以下类型:
ClassPathResource -- 适用于应classpath下面的各种资源
ServletContextResource --适用于web应用根目录及子目录下的各种资源
FileSystemResource --适用于文件系统中各种文件资源
UrlResource --适用于url连接对应各种资源
ByteArrayResource--适用于二进制资源
例如:
6.注解FileBlob对象,实现文件、url资源的下载和浏览功能
下载:FileBlob对象主要是用来直接下载Blob对象和InputStream流对象,同时可以指定一个下载文件名,实例如下:
浏览:通过FileBlob对象实现资源的浏览功能,实现浏览功能非常简单,设置FileBlob的rendtype属性值为FileBlob.BROWSER即可,例如:
@ResponseBody注解主要就这么多功能了,以后有更好的特性再加上去。
@ResponseBody注解被应用于控制器方法的响应值上,可以为应用程序丰富便捷的功能,下面分别说明。
1.将字符串作为响应报文返回到客户端
public @ResponseBody String deleteRequester( String id)
可以在bboss-mvc.xml配置中全局指定响应String报文的字符编码:
<property class="org.frameworkset.http.converter.StringHttpMessageConverter" f:responseCharset="UTF-8"/>
2.将对象作为json报文响应报文返回到客户端
public @ResponseBody(datatype = "json") List<POBean> getRequesters( String condition)
bboss mvc可以将各种对象转换为json格式报文返回给客户端
3.将对象作为jsonp报文响应报文返回到客户端
public @ResponseBody(datatype = "jsonp") List<POBean> getRequesters( String condition)
bboss mvc可以将各种对象转换为jsonp格式报文返回给客户端,jsonp报文与json报文类似,都是响应json格式的报文,区别就是jsonp报文方法可以接受跨站请求,而json报文方法不可以。
4.注解File对象提供文件下载功能
public @ResponseBody File downFile( String fileid)
5.注解Resource类型提供资源下载功能
包括以下类型:
ClassPathResource -- 适用于应classpath下面的各种资源
ServletContextResource --适用于web应用根目录及子目录下的各种资源
FileSystemResource --适用于文件系统中各种文件资源
UrlResource --适用于url连接对应各种资源
ByteArrayResource--适用于二进制资源
例如:
public @ResponseBody Resource exportExeclTemplate() throws Exception { String fileName = "com/sany/mms/background/action/exceldata.xls"; ClassPathResource classpath = new ClassPathResource(fileName); return classpath; }
6.注解FileBlob对象,实现文件、url资源的下载和浏览功能
下载:FileBlob对象主要是用来直接下载Blob对象和InputStream流对象,同时可以指定一个下载文件名,实例如下:
public @ResponseBody FileBlob exportExeclTemplate() throws Exception { String fileName = "com/sany/mms/background/action/exceldata.xls"; FileBlob fb = new FileBlob ("exceldata.xls",new FileInputstream(new File(fileName)))//下载文件流 FileBlob fb = new FileBlob ("exceldata.xls",Blob对象) //实现对数据库blob对象的下载功能 FileBlob fb = new FileBlob ("test.xml",new URL("http://localhost:8080/bboss/test.xml"));//下载url地址对应的资源 return fb; }
浏览:通过FileBlob对象实现资源的浏览功能,实现浏览功能非常简单,设置FileBlob的rendtype属性值为FileBlob.BROWSER即可,例如:
public @ResponseBody FileBlob exportExeclTemplate() throws Exception { String fileName = "com/sany/mms/background/action/exceldata.xls"; FileBlob fb = new FileBlob ("exceldata.xls",new FileInputstream(new File(fileName)))//下载文件流 fb.setRendtype(FileBlob.BROWSER) return fb; }
@ResponseBody注解主要就这么多功能了,以后有更好的特性再加上去。