?
服务的实现是需要依赖契约接口的定义的,所以需要引入接口定义jar包。
?
新建Java工程spi-provider-add,引入spi-intface.jar。
新建com.fanyc.test.spi.provider.Add类,实现com.fanyc.test.spi.intface.Computer接口,
实现体中完成了的a和b的求和并返回。
?
代码如下所示:
class="java" name="code">package com.fanyc.test.spi.provider;
import com.fanyc.test.spi.intface.Computer;
/**
 * 服务实现者:加法运算
 * 
 * @author Fanyc
 *
 */
public class Add implements Computer {
	/**
	 * {@inheritDoc}
	 */
	@Override
	public int compute(int a, int b) {
		return a+b;
	}
}
?
至此加法服务的接口实现就完成了,还需要一个重要的步骤,不然java SPI是不会发现该服务的。
?
在工程根目录下新建目录:META-INF/services
添加文件名为:monospace; line-height: 20.0200004577637px;">com.fanyc.test.spi.intface.Computer 即契约接口名
添加文件内容为:com.fanyc.test.spi.provider.Add 即契约服务实现者类名
?
至此才算真正完成了服务实现者的所有内容。