package jef.database.dialect.type; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import jef.database.dialect.DatabaseDialect; import jef.database.jdbc.result.IResultSet; public class CharCharMapping extends AColumnMapping{ public int getSqlType() { return java.sql.Types.CHAR; } public Object jdbcSet(PreparedStatement st, Object value, int index, DatabaseDialect session) throws SQLException { if(value==null){ st.setNull(index, java.sql.Types.CHAR); }else{ st.setString(index, value.toString()); } return value; } @Override protected String getSqlExpression(Object value, DatabaseDialect profile) { return wrapSqlStr(value.toString()); } public Object jdbcGet(IResultSet rs, int n) throws SQLException { String s=rs.getString(n); if(s==null || s.length()==0)return null; return s.charAt(0); } @Override protected Class<?> getDefaultJavaType() { return Character.class; } @Override public void jdbcUpdate(ResultSet rs, String columnIndex, Object value, DatabaseDialect dialect) throws SQLException { rs.updateString(columnIndex, value.toString()); } }