스프링

 

 

long 타입 변환

클래스를 만든다.

public class CLOBHandler implements TypeHandler {

	//Statement 로 호출해서 ResultSet 의 컬럼이름을 읽어올 때
	@Override
	public Object getResult(ResultSet rs, String columnName) throws SQLException {
		
		return rs.getString(columnName);
	}

	//Statement 로 호출해서 ResultSet 의 컬럼인덱스로 읽어올 때
	@Override
	public Object getResult(ResultSet rs, int columnIndex) throws SQLException {
		return rs.getString(columnIndex);
	}
	
	
	//CallableStatement로 호출해서 ResultSet 의 컬럼인덱스로 읽어올 때 
	@Override
	public Object getResult(CallableStatement cs, int columnIndex) throws SQLException {
		return cs.getString(columnIndex);
	}

	//Statement의 파라미터를 세팅할 때
	@Override
	public void setParameter(PreparedStatement ps, int columnIndex, Object parameter, 
			JdbcType arg3) throws SQLException {
	
		String s=(String)parameter;
		StringReader reader=new StringReader(s);
		ps.setCharacterStream(columnIndex, reader, s.length());
		
	}
	
	

}

 

public interface FacebookFeedDAO {
	
	String insert=" insert INTO TBL_FACEBOOK_FEED ( idx, ID, NAME, MESSAGE, PICTURE, CREATED_TIME) "
				 + " VALUES ( seq_facebook_feed.nextval , #{id}, #{name}, #{message}, #{picture}, #{created_time} )";


	
	String list=" select * from TBL_FACEBOOK_FEED  where id=#{id}  order by idx desc";
	
	
	
	
	@Insert(insert)
	public void insert(FacebookFeedVO vo);
	
	
	
// preperty="vo 의 변숩명", column="테이블의 컬럼"
//javaType="자바클래스 자료형", jdbcType="컬럼의 자료형"
//typeHandler :jdbcType을 javaType으로 변환해 주는 변환기
	@Select(list)
	@Results(value={
			@Result(property="id", column="id"),
			@Result(property="name", column="name"),
			@Result(property="message", column="message"
				, javaType=String.class, jdbcType=JdbcType.LONGNVARCHAR
				, typeHandler=CLOBHandler.class
					),
			@Result(property="picture", column="picture"),
			@Result(property="created_time", column="created_time"),
	})
	public List<FacebookFeedVO> list(String id);
	
	
	
	
	
}

 

어노테이션에서 typeHandler = CLOBHandler.class

 

 

 

about author

PHRASE

Level 60  머나먼나라

물방울이 그릇을 채우듯이 어리석은 자는 악을 채운다. -법구경

댓글 ( 4)

댓글 남기기

작성