您好,欢迎访问一九零五行业门户网

Java中SPI是什么?

1、概念
jdk内置的服务提供发现机制。spi是一种动态替换和发现的机制。比如有一个界面。如果你想在运行时动态添加,你只需要添加一个实现。我们经常遇到java.sql.driver界面,其他不同的厂商可以对同一个界面做出不同的实现。mysql和postgresql为用户提供不同的实现,java的spi机制可以为某个界面找到服务。
2、实例
public class kryoserializer implements objectserializer {     @override    public byte[] serialize(object obj) throws objectserializerexception {        byte[] bytes;        bytearrayoutputstream outputstream = new bytearrayoutputstream();        try {            //获取kryo对象            kryo kryo = new kryo();            output output = new output(outputstream);            kryo.writeobject(output, obj);            bytes = output.tobytes();            output.flush();        } catch (exception ex) {            throw new objectserializerexception(kryo serialize error + ex.getmessage());        } finally {            try {                outputstream.flush();                outputstream.close();            } catch (ioexception e) {             }        }        return bytes;    }     @override    public <t> t deserialize(byte[] param, class<t> clazz) throws objectserializerexception {        t object;        try (bytearrayinputstream inputstream = new bytearrayinputstream(param)) {            kryo kryo = new kryo();            input input = new input(inputstream);            object = kryo.readobject(input, clazz);            input.close();        } catch (exception e) {            throw new objectserializerexception(kryo deserialize error + e.getmessage());        }        return object;    }     @override    public string getschemename() {        return kryoserializer;    } }
以上就是java中spi是什么?的详细内容。
其它类似信息

推荐信息