본문 바로가기

java spring/jdbc6

jdbc6 (상세조회, 페이징) 만들던 jdbc콘솔 게시판 프로그램에 기능을 추가하였다. 먼저 상세조회 코드를 보자 사용자가 글에 있는 id 정수값을 입력하면 그 id값을 (Notice)service.getPost메소드의 인자로 넘겨준다. 그렇게 되면 db에 id값으로 가져온 데이터를 기반으로 Notice 객체를 만들고 이 객체를 반환해 주면 NoticeConsole의 seeDetail메소드가 출력해준다. 다음으로 페이징 기능. 멤버변수로 page를 두고, 이에 대해서 출력해주는 로직이다. 만역 페이지가 이미 1인데 사용자가 이전 페이지를 선택하면 이미 첫 페이지임을 알려준다. 다음 페이지로 갈 때 NoticeSerive의 getCount메소드를 사용하여 게시글 개수를 받아온다. 아래는 페이징에따라 출력을 하는 NoticeSerive의.. 2021. 3. 30.
jdbc 5 (Notice 서비스 만들기1) (모든 내용은 유튜브 뉴렉처님 보고 포스팅하였습니다.) 이제 jdbc를 사용하여 CRUD를 할 수 있으니 Notice라는 서비를 만들어보자. 우선 다음과 같이 자바 프로젝트를 만든다. 다음으로 NoticeService 클래스를 다음과 같이 작성한다. NoticeService 여기는 Notice에 관한 CRUD기능을 모두 옮겨 놓은 것이다. 전 포스팅에서 각각 SELECT, INSERT, UPDATE, DELETE하는 클래스들의 코드를 봤는데 그것들을 하나의 클래스에 서비스로 모아둔 것이다. getList() getList함수는 DB에 요청한 정보를 Notice타입 List에 받는다. 1. while문에서 테이블의 row하나를 받아서 변수 title, writerId, regDate, content, hi.. 2021. 3. 24.
jdbc4(Mysql jdbc연결) 전까지만 해도 jdbc공부를 윈도우 노트북의 오라클에 DB를 두고, 맥북에서 윈도우 오라클 DB에 접속하여 실습을 했는데, 오늘 갑자기 연결이 안되서... 그냥 내 맥에 있던 MySql DB에 연결하여 실습하였다. jdbc라는 도구덕에 오라클 -> MySql로 바꾸는 것은 어렵지 않다. 그냥 MySql 드라이버,Jdbc설치해서 오라클에서 이어주던거랑 똑같이 해주면 된다. 아래 코드를 보자. SELECT 실행결과: 이쁘게 잘 가져온다. 조금 달랐던 것은 오라클 쓸때에는 sql쿼리문에서 select * from notice; 이렇게만 해줘도 잘 가져왔는데, mysql은 ' db이름.테이블명 ' 라고 가져와야한다. 다만 이것은 내가 mysql에 접속할 때 root로 접속해서 그런 것 같다. 다음으로 mysql.. 2021. 3. 24.
jdbc3 저번에 jdbc1에서 SELECT문으로 DB의 데이터를 가져오는 것을 해봤다. 출력결과에서 보이듯이 HIT칼럼에서 가져온 데이터들을 잘 출력한다. 다음은 데이터를 삽입하는 INSERT문이다. 데이터를 삽입할 때에는 PreparedStatement를 쓴다. values( ?, ?, ?, ?)의 인덱스는 순서대로 1, 2, 3, 4이다. 이 인덱스에 맞춰서 setString(인덱스, 변수명)을 잘 맞추어 써야한다. 다음은 UPDATE로 위에서 인서트한 id=15인 데이터를 수정해보겠다. sql쿼리 정의 부분의 주석에서 보이듯이 SET앞에 띄어쓰기를 반드시 해줘야한다. 만약 띄어쓰기 없이 그냥 쓴다면 "NOTICESET" 이 되어 jdbc가 이해하지 못할 것이다. 아래는 수정결과. id=15인 데이터가 원했던.. 2021. 3. 24.