백엔드공부 17

[인텔리제이] 프로젝트 빌드 오류, 빌드 안됨

[문제] 간혹 인텔리제이에서 프로젝트를 생성하다가 문제가 생겼을 때 프로젝트를 열면, 폴더에 분명 src 등 모두 있는데 프로젝트에는 보이지 않고 .gitignore와 pom.xml 파일만 보이는 경우가 있었다. [해결] 햄버거 -> 파일 -> 프로젝트 구조 클릭. 좌측 모듈 -> + 버튼 클릭 -> 모듈 가져오기 클릭. 사용하려는 프로젝트 선택 후 하단의 확인 버튼 클릭.. 외부 모델에서 모듈 가져오기 클릭, Maven (Maven 프로젝트일 경우) 클릭하고 하단의 생성 버튼 클릭. 그러면 이렇게 제대로 빌드가 된 것을 확인할 수 있다.

error 2024.10.01

[Spring] 인텔리제이 스프링 프로젝트 실행

인텔리제이를 사용하게 되어 스프링 프로젝트 실행까지를 정리해 본다. 우선 인텔리제이 홈페이지에서 다운로드 페이지에 들어가면 Ultimate가 나오는데 그건 유료고, 커서를 조금 내려보면 Community Edition이 있으니 이것을 다운 받으면 된다. 설치 후 실행하면 아래처럼 나오는데, 새 프로젝트를 선택한다. 좌측의 Maven 원형 클릭하고, 프로젝트 이름, 위치, JDK 버전을 확인해주고, Archetype에서 quickstart를 선택해 주고 생성 버튼 클릭. 프로젝트가 다 설치되고 나면 아래와 같이 폴더를 만들어 경로를 설정해준다. pom.xml 파일에 추가할 의존성을 추가해 주고, 우측 상단의 Maven 변경 내용 로드 버튼( Ctrl + Shift + O ) 클릭. 4.0.0 org.e..

Spring 2024.09.25

Springboot CRUD게시판 - delete

2024.03.01 - [Springboot] - Springboot CRUD게시판 - update 이제 CRUD의 마지막인 delete, 삭제만이 남았다. 나는 getGuestbook.jsp 파일인 상세보기 페이지에 삭제 버튼을 추가해 주었다. 눌렀을 때 바로 삭제되는 것이 아니라, "정말로 삭제하시겠습니까?라는 알람을 띄우기 위해 자바스크립트 함수를 사용해주었고, 삭제 버튼을 클릭하면 해당 함수가 실행될 수 있도록 하였다. 삭제를 할 때에도 어떤 레코드를 삭제할지를 전달해주어야 하기 때문에 guestbook_idx값을 같이 넘겨 주었다. GuestbookController.java 파일에 guestbookDelete.do를 mapping 해주고, GuestbookService.java 파일을 추가해 ..

Springboot 2024.03.07

Springboot CRUD게시판 - update

2024.02.27 - [Springboot] - Springboot CRUD게시판 - selectOne (getGuestbook) 이번에는 상세 보기 페이지에서 메모를 수정한 뒤, update 하는 작업을 해 볼 것이다. 상세 보기를 만들 때 이미 form을 추가해 두었기 때문에, 수정 후 submit을 클릭하면 guestbookUpdate.do로 이동할 것이다. 우선 방명록 목록에서 2001번 방명록이라고 되어 있는 레코드를 선택할 것이다. GuestbookController.java 파일에서 guestbookUpdate.do mapping을 해주고, update를 한 후에는 getGuestbookList.do로 이동할 수 있도록 해준다. vo에 값이 잘 들어갔는지 확인하기 위해 console에 찍..

Springboot 2024.03.01

Springboot CRUD게시판 - insert

2024.02.20 - [Springboot] - Springboot CRUD게시판 - select 자, 그럼 이번에는 guestbook 테이블에 값을 추가하기 위한 작업을 시작해 보자. 이전에 getGuestbookList.jsp 파일에 만들어 놓은 글쓰기 버튼을 활용할 것이다. 우선 이 버튼을 클릭하면 guestbookForm.do로 이동할 수 있도록 GuestbookController.java 파일에 추가하고, 이때 guestbook -> guestbookForm.jsp로 이동할 수 있도록 해준다. view -> guestbook 폴더에 guestbookForm.jsp 파일을 추가하고, 입력 폼을 작성해 준다. 번호와 날짜는 자동으로 입력될 것이기 때문에 따로 받지 않고, 저장하기 버튼을 누르면 g..

Springboot 2024.02.24

Springboot CRUD게시판 - select

자, 이제 본격적으로 데이터베이스를 활용하여 테이블의 결과를 띄워볼 것이다. 그러기 위해서 이전에 pom.xml에 추가해 두었던 오라클 DB에 테이블과, idx로 사용할 시퀀스도 하나씩 생성했다. 아주 기본적인 '방명록'으로 CRUD를 먼저 진행할 것이다. select를 먼저 만들 것이기 때문에 확인을 위해 미리 레코드 하나를 추가했다. 잊지 말고 commit을 해준 뒤, 잘 저장이 되었는지 확인 후 프로젝트 작업을 시작했다. 우선 springboot에 project 패키지, 그 안에 guestbook 패키지를 생성해준다. 그 안에 데이터베이스에 있는 값을 활용하기 위한 GuestbookVO.java를 추가해주고, lombok의 @Data를 사용해준다. @Data의 자세한 설명은 Chat-GPT가 해주었..

Springboot 2024.02.20

Springboot 기본 설정(pom.xml - jsp, servlet, jstl / controller)

웹프라우저에 hello를 띄우는 것까지는 되었으니, 본격적으로 Mapping 작업을 시작해보자. 우선 기존의 pom.xml 파일에 jsp와 jstl를 사용하기 위해 dependency를 추가해준다. 자세한 설명은 Chat-GPT의 설명을 참고하자. tomcat-embed-jasper: 역할: Embeddable한 Apache Tomcat JSP 엔진을 제공합니다. 설명: 이 의존성은 Apache Tomcat 서버의 JSP(JavaServer Pages) 엔진을 내장하고 있습니다. JSP는 Java 코드를 HTML 페이지에 포함시키기 위한 기술로, 동적인 웹 페이지를 생성하는 데 사용됩니다. 내장 JSP 엔진은 웹 애플리케이션을 개발하고 실행하는 데 사용됩니다. jakarta.servlet-api: 역할:..

Springboot 2024.02.13

VSCode로 Springboot 시작하기 (다운부터 실행까지)

STS4도 나름 사용할만 하지만 VSCode만큼 익스텐션이 잘 되어있는 것이 없기에 이번에는 VSCode로 Springboot 개발 환경을 맞추고 화면에 Hello를 띄우는 것까지 진행해 보았다. 우선 Spring Tools 4를 VSCode용으로 다운 받는다. VSCode는 이미 설치가 되어 있으니 VSCode의 Extenstions 메뉴에서 JAVA와 Spring boot를 사용하기 위한 Extension을 설치해 준다. Extension Pack for Java Spring Boot Extension Pack 프로젝트를 생성하기 위해 보기(View) -> 명령 팔레트(Command Palette)를 실행하고, spring initializr 을 입력하고 Maven 프로젝트 생성을 클릭해 준다. 스프..

Springboot 2024.02.06

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

스프링 프레임워크란?

자, 프레임워크가 무엇인지 조금은 알았으니 본격적으로 스프링 프레임워크에 대해 알아보자. IoC(제어의 역행-낮은 결합도)와 AOP(횡단관심-높은 응집도)를 지원하는 경량의 컨테이너 프레임워크 사실 스프링 프레임워크에 대한 설명이라면 위에 한 줄이면 끝이다. 하지만 지금은 공부하는 시간이니 조금 더 자세하게 알아보자. 스프링 탄생 배경 책을 보면 스프링 프레임워크의 가장 처음에 나오는 것이 바로 탄생 배경이다. 스프링 프레임워크는 로드 존슨이 2004년에 만든 오픈소스 프레임워크이고, 이 스프링 프레임워크가 등장하기 이전에 자바 기반의 엔터프라이즈 애플리케이션은 대부분 EJB(Enterprise Java Beans)로 개발이 되었다고 한다. 자, 생각을 해보자. 뭔가가 새로 나온다는 건 이전에 사용하던 ..

지식 2024.01.23