📄 byteatypehandler.java
字号:
package com.esri.solutions.jitk.personalization.dao.typehandlers;
import java.sql.SQLException;
import org.apache.log4j.LogManager;
import org.apache.log4j.Logger;
import com.ibatis.sqlmap.client.extensions.ParameterSetter;
import com.ibatis.sqlmap.client.extensions.ResultGetter;
import com.ibatis.sqlmap.client.extensions.TypeHandlerCallback;
public class BYTEATypeHandler implements TypeHandlerCallback {
private static final Logger _logger = LogManager.getLogger(BYTEATypeHandler.class);
public Object getResult(ResultGetter arg0) throws SQLException {
_logger.debug("getResult() called");
return arg0.getBytes();
}
public void setParameter(ParameterSetter setter, Object parameter)
throws SQLException {
_logger.debug("Set parameter called");
byte[] value = (byte []) parameter;
StringBuilder sb = createEscapedString(value);
setter.setString(sb.toString());
_logger.debug("String converted to " + sb);
}
protected StringBuilder createEscapedString(byte [] bytes) {
StringBuilder sb = new StringBuilder();
if (bytes != null) {
for (byte b : bytes) {
int asciiValue = Byte.valueOf(b).intValue();
sb.append("\\\\");
if (asciiValue < 10) {
sb.append("00");
} else if (asciiValue < 100) {
sb.append("0");
}
sb.append(String.valueOf(asciiValue));
}
}
return sb;
}
public Object valueOf(String arg0) {
_logger.debug("valueOf() called with: " + arg0);
return arg0.getBytes();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -