CRUD 9

[JSP] Dynamic Web Project에서 Oracle DB 연동하고 update 쿼리 날리기

2024.04.12 - [JSP] - [JSP] Dynamic Web Project에서 Oracle DB 연동하고 insert, delete 쿼리 날리기 update 역시 select와 다르게 수정한 값을 보내주기만 하면 되기 때문에 ResultSet이 없다. update만 따로 정리하는 이유는, 수정하기 위해 기존 레코드를 가지고 와서 그 값을 수정해 주어야 하기 때문이다. 하여 select * from 테이블명 where sno = sno; 와 같이 레코드를 한 번 출력해 주고, 그 상태에서 update를 해야 한다는 것이다. edit.jsp 성적상세보기 ( 처음으로 ) 학번 이름 국어 영어 수학 역사 list.jsp 파일에서 학번을 클릭하면 해당 레코드의 학번과 함께 edit.jsp 파일로 이동하게..

JSP 2024.04.17

Mac에서 STS3로 Spring Legacy Project로 Hello 띄우기

이번에는 STS3로 Spring Legacy Project를 생성하여 웹 브라우저에 Hello를 띄워볼 것이다. 제목에 언급했듯이 나는 보통 Mac에서 작업을 진행할 예정이다. JDK 11 Apache Tomcat 9 JDK와 Tomcat 버전은 이렇게 사용할 것이다. 맥 애플칩 환경이라 STS3를 실행하기까지 고된 시간이 필요했지만, 설치를 한 이후의 과정부터 정리를 해보겠다. 우선 STS3를 실행한다. 그다음 File -> New -> Spring Legacy Project를 눌러 새로운 프로젝트를 생성하자. 프로젝트 이름을 입력해 주고, Spring MVC Project를 클릭해 준 뒤, Next 버튼을 눌러준다. package를 입력할 때, 총 3 덩어리로 만들어 준다. 이렇게 하면 프로젝트 생성..

Spring 2024.01.29

CRUD 게시판 _조회수 카운트 추가하기

2024.01.02 - [백엔드] - CRUD 게시판 _update 추가하기 이전 포스팅에서 update를 추가하여 수정하기까지 가능해졌다. 이번에는 상세보기를 클릭할 때마다 조회수가 1씩 증가할 수 있도록 해보자. 방법은 많겠지만 나는 cntUpdate를 추가하여 작업을 해볼 것이다. 우선 상세보기를 클릭하고 들어왔을 때 조회수가 올랐는지 바로 확인할 수 있도록 basicBoard_detail.jsp 파일에 조회수도 추가해주었다. 다음으로 cntUpdate 메소드를 추가하자. 해당 레코드를 클릭했을 때 cnt를 + 1 해줄 것이기 때문에, boardNumber를 받아서 update만 해주면 되어 리턴은 필요없다. BasicBoardService.java BasicBoardServiceImpl.java ..

JSP 2024.01.08

CRUD 게시판 _update 추가하기

2023.12.28 - [백엔드] - CRUD 게시판 _getBoard 추가하기 이전 포스팅에서 getBoard를 추가하여 상세보기가 가능해졌다. 이번에는 수정을 할 수 있도록 update를 추가해보자. getBoard에서 받아놓은 값들을 수정하여 다시 vo에 담아 리턴없이 업로드 하는 과정이라 insert와 느낌이 비슷하다. 우선 basicBoard_detail.jsp 파일을 수정하자. 기존에는 그냥 table 작업만 되어 있었지만, 이제는 update를 위하여 table을 form에 넣고, 수정 버튼을 클릭하면 BasicBoardController의 U로 이동할 수 있도록 했다. 다음으로 수정할 것을 정해서 그 값을 input의 value로 넣어주었는데, 이 때, 파라미터로 수정된 값을 넘기기 위해서..

JSP 2024.01.02

CRUD 게시판 _getBoard 추가하기

2023.12.24 - [백엔드] - CRUD 게시판 _delete 추가하기 이전 포스팅에서 delete를 추가하여 레코드 삭제를 할 수 있게 되었다. 이번에는 update를 하기 위한 전초단계인 한 레코드 상세보기를 추가해보자. 우선 레코드 하나를 보여주어야 하기 때문에 레코드를 vo에 담아 리턴해 줄 것이고, 그 레코드를 찾기 위해 boardNumber를 받을 것이다. 원래는 기본게시판 목록에서 바로 보였던 내용을 빼고, 제목을 누르면 이동할 Detail 에서 보여질 수 있도록 했다. basicBoard_list.jsp 다음으로 BasicBoardDao 에 getBoard를 추가해 주었는데, 참고로 이전에 select는 getBoardList로 변경해주었다. BasicBoardDao.java Basi..

JSP 2023.12.28

CRUD 게시판 _delete 추가하기

2023.12.19 - [백엔드] - CRUD 게시판 _select 추가하기 이전 포스팅에서 select를 추가하여 웹에서 DB에 저장되어 있는 데이터를 가지고 와서 바로 확인할 수 있게 되었다. 그럼 이번에는 상대적으로 간단한 delete를 추가해보자. 우선 insert와 마찬가지로 삭제만 하면 되기 때문에 리턴할 것은 없고, 삭제할 레코드를 찾아야 하기 때문에 파라미터로 boardNumber를 받을 것이다. 이전에 작업했던 코드에 이번 작업을 추가할건데, 앞으로는 코드가 너무 길어질 경우 전체 코드가 아닌 추가된 부분만 추가할 것이다. 우선 basicBoard_list.jsp에 삭제 버튼을 추가해 버튼을 클릭하면 해당 레코드가 삭제될 수 있도록 추가해보자. basicBoard_list.jsp 이때, ..

JSP 2023.12.24

CRUD 게시판 _select 추가하기

2023.12.13 - [백엔드] - CRUD 게시판_insert 추가하기 이전 포스팅에서 insert를 추가하여 SQL developer에서 추가되는 것을 확인했다면, 이번에는 사이트에서 DB에 저장되어 있는 데이터를 가지고 와서 확인할 수 있도록 select 작업을 진행해보자. 우선 전체 목록을 가지고 오는 select는 따로 받을 것이 없기 때문에 DB에 있는 값을 가져와서 jsp에서 보여주기만 하면 된다. 그렇다는 건 리턴할 것은 있고, 받을 것은 없기에 파라미터는 비워두면 된다는 것. 이때, 리턴은 각 레코드를 VO에 담아 List에 차곡차곡 쌓아줄 것이다(List). 그럼 DB에 있는 값을 가지고 오는 것부터 해보자. 이전에 작업했던 코드에 이번 작업을 추가해보자. 우선 BasicBoardDa..

JSP 2023.12.19

CRUD 게시판_insert 추가하기

2023.12.08 - [백엔드] - 백엔드 개발의 시작_CRUD 게시판 만들기 이전 포스팅에서 기본 틀은 만들어 두었으니, 이어서 DB에 데이터를 저장할 수 있는 insert 작업을 진행해보자. 우선 insert는 jsp에서 폼을 만들어 정보를 입력하여 전송을 하면 controller를 지나 Service를 거쳐 Dao를 건너 DB에 저장 되는 과정이다. 그렇다는건 리턴할 것은 없고(void), 입력 값을 파라미터(BasicBoardVO vo)에 담아 DB에 저장하기만 하면 된다는 것. 우선 webapp에 basicBoard 폴더를 만들어 basicBoard_form.jsp 파일을 생성해준다. basicBoard_form.jsp (input은 name=""을 통해서 파라미터로 값이 전달이 되니 name..

JSP 2023.12.13

백엔드 개발의 시작_CRUD 게시판 만들기

백엔드 개발자라면 적어도 한 번은 만들어 본다는 게시판 만들기, 그 첫 번째 단계 (DB -> VO -> Dao -> Service -> Controller) 우선 나는 이클립스에서 오라클 DB와 톰캣 서버를 사용한다. Dynamic Web Project Oracle DB JDK 11 Apache Tomcat v9.0 나의 작업 환경은 이러하고 기본으로 톰캣을 연동하고 로컬 호스트까지를 띄운 상태에서 DB에 테이블 생성하는 것부터 간단하게 정리해보겠다. Oracle SQL Developer에서 basicBoard 테이블을 생성한다. CREATE TABLE basicBoard ( boardNumber NUMBER PRIMARY KEY, id nvarchar2(50) NOT NULL, title nvarch..

JSP 2023.12.08