웹 개발

DB에 byte로 insert 하기, select 후 string으로 변경하기

노루아부지 2019. 11. 19. 10:39

JAVA

 

Controller

public void testByte() throws Exception {
    String tmp = "<html><body><p>홍길동</p></body></html>";
    String cd = String.valueOf(System.currentTimeMillis());
        
    map.put("CD", cd);
    map.put("VAL", tmp.getBytes());
    dao.insertTest(map);
 
    Map<String, Object> tmpMap = dao.selectTest();
        
    byte[] data = (byte[]) tmpMap.get("VAL");
    String str = new String(data);
 
    System.out.println(data);
    System.out.println(str);
}

 

DAO

public void insertTest(Map<String, Object> map) {
    query.insert("query.insertTest", map);
}
 
public Map<String, Object> selectTest(Map<String, Object> map) {
    return query.selectOne("query.selectTest", map);
}

 

IBATIS

<insert id="insertTest">
    INSERT TEST(CD, VAL) VALUES(#CD#, #VAL#)
</insert>
 
<select id="selectTest" parameterClass="java.util.Map" resultClass="java.util.HashMap">
    SELECT VAL FROM TEST WHERE CD = #CD#
</select>

 

테이블 정의[mssql]

CREATE TABLE "TEST" (
    "CD" VARCHAR(50) NULL DEFAULT NULL,
    "VAL" VARBINARY(max) NULL DEFAULT NULL
);

 

728x90
loading