임동까스
[Java] Mysql Java 연동하기 본문
public List<Article> getArticles() {
List<Article> articles = new ArrayList<>();
Connection con = null;
try {
String dbmsJdbcUrl = "jdbc:mysql://127.0.0.1:3306/textBoard?useUnicode=true&characterEncoding=utf8&autoReconnect=true&serverTimezone=Asia/Seoul&useOldAliasMetadataBehavior=true&zeroDateTimeNehavior=convertToNull&connectTimeout=60000&socketTimeout=60000";
String dbmsLoginId = "sbsst";
String dbmsLoginPw = "sbs123414";
// MySQL 드라이버 등록
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
// 연결 생성
try {
con = DriverManager.getConnection(dbmsJdbcUrl, dbmsLoginId, dbmsLoginPw);
} catch (SQLException e) {
e.printStackTrace();
}
// 명령어 저장
String sql = "SELECT * FROM article ORDER BY id DESC";
try {
// 명령어 실행 후 rs에 결과 저장
PreparedStatement pstmt = con.prepareStatement(sql);
ResultSet rs = pstmt.executeQuery();
// rs에 저장된 페이지가 있는 동안 실행
while (rs.next()) {
int id = rs.getInt("id");
String regDate = rs.getString("regDate");
String updateDate = rs.getString("updateDate");
String title = rs.getString("title");
String body = rs.getString("body");
int memberId = rs.getInt("memberId");
int boardId = rs.getInt("boardId");
Article article = new Article(id, regDate, updateDate, title, body, memberId, boardId);
articles.add(article);
}
} catch (SQLException e) {
e.printStackTrace();
}
} finally {
try {
if (con != null) {
con.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
return articles;
}
sql 작성부분
String sql = "SELECT * FROM article where id = ?";
PreparedStatement pstmt = con.prepareStatement(sql);
pstmt.setInt(1, input);
ResultSet rs = pstmt.executeQuery(); 물음표 치환으로 가능
try , catch
- try에서 발생할 수 있는 에러를 미리 catch로 설정해둠. 에러 발생시 catch 실행 catch로 못 잡은경우 finally로 넘기기
next()
- 페이지 넘기기?
finally
- 무조건실행. 무조건 해야하는 작업 작성.
Connection
- 열은 경우 무조건 닫아야함 finally 에서 닫으면 무조건 닫음.
- 주소, 아이디, 비번으로 연결
ResultSet
- 쿼리 실행 결과가 여기에 저장됌
'프로그래밍기초 > Java' 카테고리의 다른 글
[Java] StringTokenizer (0) | 2020.11.18 |
---|---|
[Java] Map, HashMap (0) | 2020.11.18 |
[Java] abstract, 변수 (0) | 2020.11.05 |
[Java] 삼항연산자, MVC구조 (0) | 2020.11.03 |
[Java] .trim() 공백제거 ( Scanner 메서드) (0) | 2020.11.03 |