首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

一个SpringMVC接口返回JSON又能返回XML? 安排!

我们有一个接口服务为下游的系统提供数据服务,本来好好的大家都愉快地传递JSON,非常和谐。可最近有个新需求去对接一个很老的系统,这倒是不算啥,可这个老系统数据不是以JSON传递的而是以XML传递的。...同事小王想了个馊主意,把原来的接口原版拷贝一遍统一把返回类型改成XML不就行了?嗯,接口路径需要占用一套,权限配置多了一套,还要额外维护一套代码,这主意太馊了。...原理 在HTTP协议里,当客户端发起一个HTTP请求时,可以携带一个请求头Accept来告诉服务端,客户端可以接受哪些响应类型(MIME),可以是一个也可以是多个。...Spring MVC提供了一种被称作内容协商的机制,客户端在请求时声明需要的MIME类型,服务端只需要配置一些策略就是实现一个接口返回不同MIME类型的数据格式,想要JSON返回JSON,想要XML返回...MediaType.APPLICATION_XML) .mediaType("json", MediaType.APPLICATION_JSON); } } 这样声明以后客户端请求接口中要携带一个

68330

一个SpringMVC接口返回JSON又能返回XML? 安排!

我们有一个接口服务为下游的系统提供数据服务,本来好好的大家都愉快地传递JSON,非常和谐。可最近有个新需求去对接一个很老的系统,这倒是不算啥,可这个老系统数据不是以JSON传递的而是以XML传递的。...同事小王想了个馊主意,把原来的接口原版拷贝一遍统一把返回类型改成XML不就行了?嗯,接口路径需要占用一套,权限配置多了一套,还要额外维护一套代码,这主意太馊了。...原理 在HTTP协议里,当客户端发起一个HTTP请求时,可以携带一个请求头Accept来告诉服务端,客户端可以接受哪些响应类型(MIME),可以是一个也可以是多个。...Spring MVC提供了一种被称作内容协商的机制,客户端在请求时声明需要的MIME类型,服务端只需要配置一些策略就是实现一个接口返回不同MIME类型的数据格式,想要JSON返回JSON,想要XML返回...MediaType.APPLICATION_XML)                 .mediaType("json", MediaType.APPLICATION_JSON);     } } 这样声明以后客户端请求接口中要携带一个

51030
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Java接口①)

    接口接口是一种引用数据类型; 接口的格式: public interface 接口名称{ //接口内容 } 即:将class改成关键字interface,它编译生成的字节码文件依然是.java...-->.class; 如果java7,接口中可以包含的内容有: 1、常量 2、抽象方法 如果java8,还可以包含的内容有: 3、默认方法 4、静态方法 如果java9,还可以额外包含内容:...5、私有方法 注意:类是可以new的,接口是不可以new的; 接口的使用步骤: 1、接口不能直接使用,必须有一个"实现类"来"实现"该接口; 格式: public class 实现类名称 implements...接口名称{ } 2、接口中的实现类必须覆盖重写(实现)接口中所有的抽象方法; 实现:去掉abstract关键字,加上方法体 public 返回值类型 方法名(参数列表){ 方法体; } 3、在main...接口中的抽象方法: 在任何的java版本中,接口都能定义抽象方法; 定义方法: //接口中的抽象方法定义方式; public abstract void abs1(); 注意事项: 1、接口中的抽象方法

    1.1K10

    Java接口

    Java接口概念Java编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。...Java接口主要有以下特点1、接口中的所有方法都是抽象的,不能有具体实现。2、接口定义的常量默认是 public static final 的。...3、一个类可以实现多个接口,实现接口使用 implements 关键字。4、接口不能被实例化。5、接口可以继承另外一个接口,使用 extends 关键字。...6、接口与抽象类有些相似,但也有很大区别,比如接口不能包含构造器、变量和实例方法等。Java接口的具体作用1、接口定义了一个规范,类实现这个规范即可满足某些特定的需求。...在Java中,使用 implements 关键字来实现接口

    18321

    Java接口

    接口 概念 接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。...类名 implements 接口名 { } 特点 1、接口中的成员变量只能是静态常量,定义时必须初始化。...默认修饰符:public static final 2、接口中没有构造方法,因为接口不能实例化对象 3、接口中的成员方法只能是抽象方法,没有方法体。...默认修饰符:public abstract 4、接口的实现类必须重写接口中方法,或者是一个抽象类(可以重写也可以不重写接口中的方法) 接口的声明和实现 interface play{ // 常量...1、接口是对类的扩展,通过接口可以让类拥有更多更强的功能 2、接口中只有全局常量和抽象方法,所以不能实例化 3、接口的实现类必须重写所有方法,或者是个抽象类 4、接口可以多实现 5、接口可以单继承,也可以多继承

    1.1K30

    java接口调用——webservice就是一个RPC而已

    很多新手一听到接口就蒙逼,不知道接口是什么!其实接口就是RPC,通过远程访问别的程序提供的方法,然后获得该方法执行的接口,而不需要在本地执行该方法。...在JDK1.6以后JAX-WS规范定义了如何发布一个webService服务。   JAX-WS是指Java Api for XML – WebService.   ...主要类有:   @WebService - 它是一个注解,将 Java 类标记为实现 Web Service,或者将 Java 接口标记为定义 Web Service 接口。   ...Endpoint – 此类为端点服务类,它的方法publish用于将一个已经添加了@WebService注解对象绑定到一个地址的端口上,接收两个参数,一个是本地的服务地址,二是提供服务的类。   ...,而是通过解析wsdl生成对应java文件(就是一个本地IO)。

    2.1K20

    java接口

    接口中常量的修饰关键字:public,static,final(常量) 函数的修饰关键字:public,abstract 如果没有写全,系统在编译时会自动加上 接口中的所有成员都是public 接口中的方法...,都是抽象方法, * 接口是不可以创建对象,因为有抽象方法; 子类如果只实现部分接口的抽象方法,则子类是抽象类,依然不可以创建对象, 子类只有将接口中的抽象方法全部实现,才可以创建对象 注:实现接口的方法...,必须是public修饰的,因为抽象类中的成员(常量和方法)都是public修饰的 * 一个类只能继承一个父类,可以实现多个接口 * 实现接口和继承类的选用方法:继承表示,子类是父类的一部分,比如说人和学生的关系...; 实现接口表示,接口是类的一部分功能的实现,例如人和开车的关系,接口一般都是实现类的扩展功能 * 1 //定义student接口 2 interface student{ 3 public..."); 11 } 12 } 13 //将接口中的所有方法都实现了,可以创建对象 14 class badStudent implements student{ 15 public void

    1.2K20

    Java 接口

    Java 接口(重要) 基本定义: 如果一个类中只有抽象方法和全局常量所组成;在这类情况下不会将其定义为抽象类,而只会将其定义为“接口”;严格来讲:接口就属于一个特殊的类,而且这个类里面只有抽象方法和全局常量...public但为了防止访问权限的报错和混淆,不建议省去** 一个抽象类只可以继承一个抽象类,但是反之:一个接口却可以使用extends关键字同时继承多个接口接口不可以继承抽象类) interface...; 一个抽象类只能够继承也给抽象的父类,而接口没有这个限制 一个子类只能够继承一个抽象类,却可以实现继承多个接口Java接口主要功能就是解决了继承的单继承局限问题】 虽然接口的定义是只包含定义抽象方法和全局常量...) 在Java中,也存在程序标准,而标准就是由接口定义的;通俗的理解为:接口类即是一个标准,子类则依靠接口类而产出的依赖(接口) //标准可以连接不同层的操作类 interface USB...过程中,最需要关心的就是如何取得一个Fruit接口对象,而不是关心对象是被谁实例化的。

    1.4K10

    Java接口

    专栏介绍 【Java】 目前主要更新Java,一起学习一起进步。 本期介绍 本期主要介绍接口 文章目录 1. 概述 2. 定义格式 3. 基本的实现 4. 接口的多实现 5. ...概述 接口,是 Java 语言中一种引用类型,是方法的集合,如果说类的内部封装了成员变量、构造方法和 成员方法,那么 接口的内部主要就是 封装了方法 ,包含抽象方法( JDK 7 及以前...定义接口: 4. 接口的多实现 之前学过,在继承体系中,一个类只能继承一个父类。而对于接口而言,一个类是可以实现多个接 口的,这叫做接 口的 多实现 。...并且,一个继承一个父类,同时实现多个接口。 实现格式: [ ]: 表示可选操作。 抽象方法 接口中,有多个抽象方法时,实现类必须重写所有抽象方法 。...代码如下: 定义接口: 定义父类: 定义子类: 定义测试类: 5. 接口的多继承【了解】 一个接口继承另一个或者多个接口,这和类之间的继承比较相似。

    1.1K20

    Java接口②)

    java8开始,接口中允许定义默认方法; 格式: public default 返回值类型 方法名称(参数列表){ 方法体; } 注意: 1、接口的默认方法,可以通过接口的实现类对象,直接调用...接口中的静态方法: 从java8开始,接口中允许定义静态方法; 格式: public static 返回值类型 方法名称(参数列表){ 方法体; } 调用:直接用接口类 .方法名(不能用实现类对象来进行调用...Java9开始,接口中允许定义私有方法; 格式: private void med(){ } 1、静态私有方法,解决静态方法之间重复代码问题; private static 返回值类型 方法名...方法体; } 使用接口时候,需要注意: 1、接口中是没有静态代码块或者是构造方法; 2、一个类的直接父类是唯一的,但是一个类可以同时实现多个接口(子类无法识别重写哪个方法) public...class Im implements iner,iner2{ //当一个实现类要实现多个接口时,接口用逗号隔开 }

    83210

    Java接口是什么意思_JAVA接口

    供应商;供应国;供应者,供给者;补充者 看语义,可以看到,这个接口一个提供者的意思,只有一个get的抽象类,没有默认的方法以及静态的方法,传入一个泛型T的,get方法,返回一个泛型T 下面,我们用一个小案例...,只是为我们提供了一个创建好的对象,这也符号接口的语义的定义,提供者,提供一个对象, 直接理解成一个创建对象的工厂,就可以了; Emp对象定义如下 public static class Emp {...Lambda表达式简介》 《java8 lambda表达式,方法的引用以及构造器的引用》 2.函数式接口java8 函数式接口简介》 《JAVA8 Function接口以及同类型的特化的接口》 《...JAVA8 Consumer接口》 《JAVA8 Supplier接口》 《JAVA8 UnaryOperator接口》 《JAVA8 BiConsumer 接口》 3.stream接口操作 《java8...Stream接口简介》 《 java8 Stream-创建流的几种方式》 《JAVA8 stream接口 中间操作和终端操作》 《JAVA8 Stream接口,map操作,filter操作,flatMap

    1.2K10

    Java Serializable:明明就一个空的接口

    再来看看序列化 Serializbale 接口的定义: public interface Serializable { } 明明就一个空的接口嘛,竟然能够保证实现了它的“类的对象”被序列化和反序列化?...Serializable 接口之所以定义为空,是因为它只起到了一个标识的作用,告诉程序实现了它的对象是可以被序列化的,但真正序列化和反序列化的操作并不需要它来完成。...04、再来点干货 除了 Serializable 之外,Java 还提供了一个序列化接口 Externalizable(念起来有点拗口)。 两个接口有什么不一样的吗?试一试就知道了。...Wanger 类和实现 Serializable 接口的 Wanger 类有一些不同: 1)新增了一个无参的构造方法。...当一个类实现了 Serializable 接口后,IDE 就会提醒该类最好产生一个序列化 ID,就像下面这样: ?

    73120

    Java

    不到一年时间,几件事情让我的想法来了一个180度的大转弯: 在一家公司里,我写了一个模拟器,这样就可以让我的 Java 服务独立运行而无需一个全功能的网站。...一天之中多花多少分钟,2天呢?...还是使用 Java 吧。如果你觉得在 shell 上运行命令显得很愚蠢,编写一个工具函数就可以解决这个问题。 我已经编写了一个 Java 启动器脚本,这样我就可以将其写在 Java 程序的头部: #!...和你在 Java 和 Python 中找到的任何类库相比,这个类库不仅速度快而且质量更高。...我现在可以充满自信地把对 Java 的投资作为我未来职业和个人技术的一个重要组成部分。 最后还有一个在众多编译型静态类型语言中,我为什么特别选择 Java 的问题。

    92030

    java的serializable接口_javacloneable接口

    Java一个类要实现clone功能 必须实现 Cloneable接口,否则在调用 clone() 时会报 CloneNotSupportedException 异常。...Java中所有类都默认继承java.lang.Object类,在java.lang.Object类中有一个方法clone(),这个方法将返回Object对象的一个拷贝。...,这个接口属于java.lang 包,java.lang包已经被缺省的导入类中,所以不需要写成java.lang.Cloneable; 二是重载了clone()方 法; 三是在clone()方法中调用了...还有一点要考虑的是为了让其它类调用这个clone 类的clone()方法,重载之后要把clone()方法的属性设置为public。...Java提供了一种保存对象状态的机制,那就是序列化。 Java 序列化技术可以将一个对象的状态写入一个Byte 流里(序列化),并且可以从其它地方把该Byte 流里的数据读出来(反序列化)。

    94130

    java接口

    Java接口(Interface)是Java编程语言中的一种特殊类型,它提供了一种定义类行为的方式,可以用于描述一个类具有哪些方法,但不提供具体的实现。...一、概述 接口(Interface)是Java语言中一种规范,它规定了一个类需要实现哪些方法,并不提供具体的实现。与类不同的是,接口不能被实例化,它只能被实现(implement)。...Java接口的主要作用是实现多态性。多态性是指一个对象可以被看作是不同类型的实例。通过实现接口一个类可以被看作是多个不同类型的实例。...例如,一个类实现了Comparable接口,就可以被看作是一组可比较的对象,这样就可以进行排序等操作。 二、语法 Java接口的语法与类相似,但使用关键字“interface”代替“class”。...以下是一个简单的Java接口的定义: public interface MyInterface { public void myMethod(); } 在上面的代码中,我们定义了一个名为“MyInterface

    62630

    java 接口介绍

    概念 usb插槽就是现实中的一个接口 你可以把u盘都插在usb插槽上,而不用担心买来的u盘插不进插槽中不管是插电脑,还是插相机,还是插收音机原因是做usb的厂家和做各种设备的厂家都遵守了统一的规定包括尺寸...不管你怎么设计都必须有鞋带,鞋底,和布料,把这个整体可以看作一个接口,里面的鞋带,鞋底就是方法,三个设计师都必须在继承的时候实现。...接口的作用,给你制定规范,你必须去实现,必须按照给你的规范做 继承的注意事项 我的理解就是,接口就是为java单继承缺陷设计出的一个解决方法 一个类可以实现多个接口。...接口不能继承其他类,但是可以继承多个接口 接口不能被实例化 接口方法只能用public方法,接口中的抽象方法,可以不用abstract 一个普通类实现接口,就必须将该接口的所有方法都是实现 抽象类实现接口...int a = 1; 一个类实现了改接口,那么改接口的引用,就可以指向实现了改接口的类 接口和继承解决的问题不同 继承的价值主要在于:解决代码的复用性和可维护性 接口的价值主要在于:设计,设计好各种规范

    42200

    Java--接口

    前言 理解好了抽象的概念,进一步学习接口接口的设计弥补了Java不能多继承的缺陷。 关于接口 可以将接口理解为:多个类的公共规范。 接口是一种引用数据类型,最重要的内容就是其中的抽象方法。...接口的定义格式: public interface 接口名称 { // 接口内容 } 在Java7中,接口可以包含: 常量(定义后不可更改) 抽象方法(abstract) 在Java8中,又可以定义...如此一来升级维护成本太大,所以在Java8之后,允许接口定义默认方法,免去接口实现类重写的麻烦。...重写接口的默认方法一 接口默认方法二 静态方法 Java8后还允许接口定义静态方法,格式如下:。...接口常量二 接口的多实现 一个类的直接父类是唯一的,但是一个类可以同时实现多个接口

    41810
    领券