diff --git a/BE/src/main/java/com/codesquad/issuetracker/ragdoll/dao/MilestoneDao_Ragdoll.java b/BE/src/main/java/com/codesquad/issuetracker/ragdoll/dao/MilestoneDao_Ragdoll.java index db191a2..c826f44 100644 --- a/BE/src/main/java/com/codesquad/issuetracker/ragdoll/dao/MilestoneDao_Ragdoll.java +++ b/BE/src/main/java/com/codesquad/issuetracker/ragdoll/dao/MilestoneDao_Ragdoll.java @@ -3,6 +3,9 @@ import com.codesquad.issuetracker.ragdoll.domain.Milestone; import org.springframework.dao.support.DataAccessUtils; import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.jdbc.core.namedparam.MapSqlParameterSource; +import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate; +import org.springframework.jdbc.core.namedparam.SqlParameterSource; import org.springframework.stereotype.Repository; import javax.sql.DataSource; @@ -15,8 +18,11 @@ public class MilestoneDao_Ragdoll { private final JdbcTemplate jdbcTemplate; + private final NamedParameterJdbcTemplate namedParameterJdbcTemplate; + public MilestoneDao_Ragdoll(DataSource dataSource) { this.jdbcTemplate = new JdbcTemplate(dataSource); + this.namedParameterJdbcTemplate = new NamedParameterJdbcTemplate(dataSource); } public Milestone findMilestoneById(Integer milestoneId) { @@ -57,4 +63,16 @@ public void createNewMilestone(String title, LocalDate dueDate, String descripti "VALUES (?, ?, ?, ?, ?)"; jdbcTemplate.update(sql, new Object[]{title, description, dueDate, LocalDateTime.now(), LocalDateTime.now()}); } + + public void updateMilestone(Integer milestoneId, String title, LocalDate dueDate, String description) { + SqlParameterSource namedParameters = new MapSqlParameterSource() + .addValue("milestoneId", milestoneId) + .addValue("title", title) + .addValue("dueDate", dueDate) + .addValue("description", description) + .addValue("updatedDateTime", LocalDateTime.now()); + String sql = "UPDATE milestone SET title = :title, due_date = :dueDate, description = :description, updated_date_time = :updatedDateTime " + + "WHERE id = :milestoneId"; + namedParameterJdbcTemplate.update(sql, namedParameters); + } }