UPDATE
와 DELETE
는 구문에 오류가 없으면 data가 없어도 실행은 된다. int count = jdbcTemplate.update(sql, param); // 구문의 오류는 없지만 실행이 안된 경우 count == 0
System.out.println(count > 0 ? "진짜 리얼 수정 완료" : "실행은 됐는데 대상이 없음");
public class JdbcUtils {
// 계정 및 연결 주소를 상수 형태로 보관
public static final String DRIVER = "oracle.jdbc.OracleDriver";
public static final String URL = "jdbc:oracle:thin:@localhost:1521:xe";
public static final String USERNAME = "";
public static final String PASSWORD = "";
// 연결 객체 생성 method
public static DataSource getDataSource() {
DriverManagerDataSource dataSource = new DriverManagerDataSource();
dataSource.setDriverClassName(DRIVER);
dataSource.setUrl(URL);
dataSource.setUsername(USERNAME);
dataSource.setPassword(PASSWORD);
return dataSource;
}
// 명령 실행 객체 생성 method
public static JdbcTemplate getJdbcTemplate() {
JdbcTemplate jdbcTemplate = new JdbcTemplate();
jdbcTemplate.setDataSource(getDataSource());
return jdbcTemplate;
}
}
+ 궁금점
int count = jdbcTemplate.update(sql, param);
List<ObjectDto> objects = jdbcTemplate.query(sql, mapper, param);
RowMapper<StudentDto> mapper = new RowMapper<StudentDto>(){
@Override
public StudentDto mapRow(ResultSet rs, int idx) throws SQLException {
StudentDto studentDto = new StudentDto();
studentDto.setNo(rs.getInt("no"));
studentDto.setName(rs.getString("name"));
studentDto.setKorean(rs.getInt("korean"));
studentDto.setEnglish(rs.getInt("english"));
studentDto.setMath(rs.getInt("math"));
return studentDto;
}
};
String sql = "SELECT * FROM POCKETMON WHERE NAME INSTR(" + type + ", ?) > 0";
Object[] param = { keyword };
List<PocketmonDto> pocketmons = jdbcTemplate.query(sql, mapper, param);
String sql = "SELECT * FROM POCKETMON WHERE NAME INSTR(#1, ?) > 0";
sql = sql.replace("#1", type);
+ 인터넷 주소+