.xml 파일
<insert id="insert" parameterType ="BoardDto">
INSERT INTO board (title,content,writer)
VALUES(#{title},#{content},#{writer})
</insert>
밑에처럼 바뀐다.
String sql = "INSERT INTO baord"
+"(title,content,writer)"
+"(?,?,?)";
PreparedStatement pstmt = conn.PreparedStatement(sql);
int result = pstmt.executeUpdate();
#{}는 ?로 바뀌어서 값을 넣을 수 있게한다.
PreparedStatement를 사용하는게 특징이다.
.xml 파일
<insert id="insert" parameterType ="BoardDto">
INSERT INTO board (title,content,writer)
VALUES('${title}','${content}','${writer}')
</insert>
밑에처럼 바뀐다.
String sql = "INSERT INTO baord"
+"(title,content,writer)"
+"('"+title+"','"+content+"','"+writer+"')";
PreparedStatement pstmt = conn.PreparedStatement(sql);
int result = pstmt.executeUpdate();
${}는 이름 그대로 나오기 때문에 table명 대신 쓸 수도 있고 여러가지로 활용될 수 있다. 다만, 보안에 취약할 수 있다. 따라서, 내부적으로만 사용해야 한다.
또한, 이름 그대로 나오기때문에 ''를 꼭 같이 적어줘야 한다.