public class ByteArrayType extends Object implements ExtendedType
byte[]
, mapping it as either of JDBC types - BLOB or (VAR)BINARY.
Can be configured to trim trailing zero bytes.Modifier and Type | Field and Description |
---|---|
protected boolean |
trimmingBytes |
protected boolean |
usingBlobs |
Constructor and Description |
---|
ByteArrayType(boolean trimmingBytes,
boolean usingBlobs) |
Modifier and Type | Method and Description |
---|---|
String |
getClassName()
Returns a full name of Java class that this ExtendedType supports.
|
boolean |
isTrimmingBytes() |
boolean |
isUsingBlobs()
Returns
true if byte columns are handled as BLOBs internally. |
Object |
materializeObject(CallableStatement cs,
int index,
int type)
Reads an object from a stored procedure OUT parameter, converting it to class
returned by 'getClassName' method.
|
Object |
materializeObject(ResultSet rs,
int index,
int type)
Reads an object from JDBC ResultSet column, converting it to class returned by
'getClassName' method.
|
protected byte[] |
readBinaryStream(ResultSet rs,
int index) |
protected byte[] |
readBlob(Blob blob) |
protected byte[] |
readValueStream(InputStream in,
int streamSize,
int bufSize) |
void |
setJdbcObject(PreparedStatement st,
Object val,
int pos,
int type,
int scale)
Initializes a single parameter of a PreparedStatement with object value.
|
void |
setTrimmingBytes(boolean trimingBytes) |
void |
setUsingBlobs(boolean usingBlobs) |
static byte[] |
trimBytes(byte[] bytes)
Strips null bytes from the byte array, returning a potentially smaller array that
contains no trailing zero bytes.
|
protected Blob |
writeBlob(byte[] bytes) |
public static byte[] trimBytes(byte[] bytes)
public String getClassName()
ExtendedType
getClassName
in interface ExtendedType
public Object materializeObject(ResultSet rs, int index, int type) throws Exception
ExtendedType
materializeObject
in interface ExtendedType
Exception
- if read error occurred, or an object can't be converted to a
target Java class.public Object materializeObject(CallableStatement cs, int index, int type) throws Exception
ExtendedType
materializeObject
in interface ExtendedType
Exception
- if read error ocurred, or an object can't be converted to a
target Java class.public void setJdbcObject(PreparedStatement st, Object val, int pos, int type, int scale) throws Exception
ExtendedType
setJdbcObject
in interface ExtendedType
Exception
protected Blob writeBlob(byte[] bytes)
protected byte[] readBlob(Blob blob) throws IOException, SQLException
IOException
SQLException
protected byte[] readBinaryStream(ResultSet rs, int index) throws IOException, SQLException
IOException
SQLException
protected byte[] readValueStream(InputStream in, int streamSize, int bufSize) throws IOException
IOException
public boolean isUsingBlobs()
true
if byte columns are handled as BLOBs internally.public void setUsingBlobs(boolean usingBlobs)
public boolean isTrimmingBytes()
public void setTrimmingBytes(boolean trimingBytes)
Copyright © 2001–2018 Apache Cayenne. All rights reserved.