728x90
반응형

전체 글 158

Java - 클래스와 객체란?

클래스와 객체란? 클래스의 정의 : 클래스란 객체를 정의해 놓은 것 클래스의 용도 : 클래스는 객체를 생성하는데 사용 객체의 정의 : 실제로 존재하는 것. 사물 또는 개념 객체의 용도 : 객체가 가지고 있는 기능과 속성에 따라 다름 클래스 객체 제품 설계도 제품 TV 설계도 TV 붕어빵 기계 붕어빵 TV(객체)를 만들기 위해 TV설계도가(클래스) 필요합니다. 클래스는 객체를 생성하기 위해 필요합니다. 설계도를 한번 만들어 놓으면 제품을 쉽게 만들 수 있습니다. 프로그램을 만들려면 여러 객체가 필요합니다. 여러 객체를 만들려면, 객체별 클래스가 필요합니다. 결과적으로 프로그램을 만들기 위해서는 클래스를 잘 만들어야 합니다. 객체의 구성 요소 객체 = 속성(변수) + 기능(메서드) 속성 크기, 길이, 높이,..

코딩 공부/JAVA 2023.05.29

Spring [쇼핑몰프로젝트] - 장바구니 페이지 구현[33-1]

오늘은 장바구니 페이지에 대한 css 포스팅을 해보겠습니다 ╰(*°▽°*)╯ CSS는 아직 많이 다뤄보지 않았기 때문에 조금씩 수정을 하고, 확인을 하면서 진행하였습니다. @charset "UTF-8"; #wrap { min-height: 100%; position: relative; padding-bottom: 200px; } h2 { margin: 100px auto 80px auto; text-align: center; } table { width: 1150px; margin-top: 50px; margin-bottom: 50px; text-align: center; } table tr { line-height: 40px; } table tr th { background-color: #8c8ce8;..

Spring [쇼핑몰프로젝트] - 장바구니 페이지 구현[33]

오늘은 장바구니 페이지 구현에 대한 여덟번째 포스팅을 해보겠습니다 ╰(*°▽°*)╯8 구현 순서 1. cart.jsp 1. cart.jsp 지난 포스팅에선 cart.jsp에 값이 넘어오는지 확인하기 위해 ${cartInfo}만 작성해 주었습니다. 이번 시간에는 css와 저장된 값이 넘어올 수 있도록 구현해보겠습니다. (css는 chatGPT를 사용하였습니다.) 태그 아래의 네비게이션 바에 관리자로 로그인 했을 때만 관리자 화면이 출력되도록 태그를 사용해주고, 로그인을 한 일반 회원들은 로그아웃, 마이페이지 화면이 뜨도록 작성해 주었습니다. Health 人 관리자 페이지 로그아웃 마이페이지 장바구니 화면에 들어갔을 때 회원의 아이디가 출력 되도록 값을 넣어줍니다. ${member.memberName}님의 ..

Spring [쇼핑몰프로젝트] - 장바구니 페이지 구현[32]

오늘은 장바구니 페이지 구현에 대한 일곱번째 포스팅을 해보겠습니다 ╰(*°▽°*)╯7 사용자가 상품을 구매할 경우, 해당 상품 별로 얼마의 포인트가 적립되는지 알 수 있도록 화면 구현을 하겠습니다. 상품의 상세 페이지에 적립 될 포인트를 알 수 있도록 정보를 표시하고, 포인트 관련 속성을 추가 해 주겠습니다. 구현 순서 1. ProductController.java 2. productDetail.jsp 1. ProductController.java 현재 테이블의 정보는 "##,### 원" 으로 구성 되어 있습니다. 문자열은 사칙연산이 불가능 하기 때문에 정수형으로 바꾸어서 연산해 주어야 합니다. 우선, 테이블의 칼럼값이 정수형이 아닌 문자열로 되어있기 때문에 문자열을 정수형으로 받아올 수 있도록 수정해 ..

Spring [쇼핑몰프로젝트] - 장바구니 페이지 구현 - 오류 기록[31]

오늘은 지난번 장바구니 페이지 오류 수정에 대한 포스팅을 해보겠습니다 (´。_。`) 구현 순서 1. 오류 발생 상황 2. 해결 방법 ① cart 테이블 수정 ② cartMapper.xml 수정 ③ cartMapperTests.java 수정 ④ cartMapperTests 테스트 ⑤ 최종 테스트 1. 오류 발생 상황 - 콘솔창에는 값이 제대로 전달 되었으나, 웹 페이지에선 값이 전달 되지 않는 상황이 발생하였습니다. 원인 : 테이블에 칼럼값이 생성되지 않아서 값이 넘어오지 않았습니다. 2. 해결 방법 ① cart 테이블 삭제 및 수정 - cart 테이블과 시퀀스를 삭제해 줍니다. drop table cart; drop SEQUENCE CART_SEQ; - cart 테이블과 시퀀스를 생성해 줍니다. prod..

Spring [쇼핑몰프로젝트] - 장바구니 페이지 구현[30]

오늘은 장바구니 페이지 구현에 대한 여섯번째 포스팅을 해보겠습니다 ╰(*°▽°*)╯6 구현 순서 1. CartService.java 2. CartController.java 3. cart.jsp 1. CartService.java 장바구니 페이지에 회원이 담은 상품의 정보가 나오도록 Service 메서드를 추가해 줍니다. CartService.java에 메서드를 추가해 줍니다. //장바구니 정보 리스트 public List getCartList(String memberId); CartServiceImpl에 인터페이스에서 선언한 메서드를 오버라이딩 해줍니다. List에 getCart() 메서드를 호출하여 반환받은 값을 대입하여줍니다. CartDTO의 일부 속성에는 값이 없기때문에 for문을 사용하여 Lis..

Spring [쇼핑몰프로젝트] - 장바구니 구현 - 오류 기록[29]

오늘은 장바구니 기능 구현중 오류 발생 상황에 대한 기록 및 해결 방법에 대한 포스팅을 하겠습니다. ╰(*°▽°*)╯ 구현 순서 1. 오류 발생 상황 2. 해결 방법 1. 오류 발생 상황 - 로그인을 하지 않은 상태에서 장바구니 클릭시 alert 창은 정상적으로 뜬다. - console.log 를 찍어 값이 넘어오는지 확인해 보았는데 product_num값이 넘어오지 않는다. - 로그인을 한 상태에서 alert 창이 뜨지 않는다. - 콘솔창에 부적합한 열 유형이라는 오류가 뜬다. 2. 해결 방법 첫번째, console.log 를 찍었을 때 product_num값이 넘어오지 않았습니다. 해결 방법 : DB에서 Cart 테이블을 생성할때 product_tbl의 기본키인 pno에 제약조건을 걸어 놨기 때문에 ..

Spring [쇼핑몰프로젝트] - 장바구니 구현[28]

오늘은 장바구니 기능 구현에 대한 다섯번째 포스팅을 해보겠습니다 ╰(*°▽°*)╯5 구현 순서 0. 추합 1. 수량버튼 2. 장바구니 추가 버튼 3. 테스트 1. 수량버튼 일부 CSS 및 JSP 부분은 ChatGPT의 도움을 받아서 제작하였습니다. 하지만 이해하기 어려운 부분이 있어 일부 수정을 하였습니다. productDetail.jsp 부분에서 장바구니 수량 변경에 대한 코드를 작성해 줍니다. + - jsp 하단에 script 태그를 추가해 줍니다. 수량 버튼 조작을 위한 코드를 작성해 줍니다. plus_btn 버튼을 클릭시 quantity_input의 값이 증가가 되고, minus_btn 버튼을 클릭시 quantity_input 수량이 감소 되도록 구현해 줍니다. 최소 수량이 1이 되어야 하기 때문..

Spring [쇼핑몰프로젝트] - 장바구니 구현[27]

오늘은 장바구니 기능 구현에 대한 네번째 포스팅을 해보겠습니다 ╰(*°▽°*)╯4 구현 순서 1. Interceptor 예외설정 2. CartMapper.java 수정 3. CartService 메서드 4. CartServiceTests.java 5. CartController 1. Interceptor 예외설정 Interceptor 예외설정을 위해 servlet-context.xml 파일에 코드 한줄을 추가해 줍니다. 태그는 인터셉터에서 설정한 url 경로 중 예외 url을 설정해 주는 태그입니다. 기존의 인터셉트 코드는 "/cart/**" 경로를 타는 모든 요청은 Controller 객체를 거치게 되어있습니다. 하지만 예외로 "/cart/add" 경로는 인터셉터 객체를 거치지 않는다는 의미 입니다. ..

Spring [쇼핑몰프로젝트] - 장바구니 구현[26]

오늘은 장바구니 기능 구현에 대한 세번째 포스팅을 해보겠습니다 ╰(*°▽°*)╯3 지난 포스팅 중에서 관리자 페이지를 인터셉터 적용해 주었습니다. 장바구니 또한 로그인한 회원만 사용할 수 있도록 인터셉터 적용을 해주도록 하겠습니다. 구현 순서 1. servlet-context.xml 2. CartInterceptor.java 1. servlet-context.xml servlet-context.xml에 "/cart/**"의 경로에 대해서만 적용할 수있도록 mapping을 해줍니다. bean에 com.angel.interceptor 패키지의 CartInterceptor를 등록하고 해당 인터셉터는 "/cart" 경로를 타는 모든 요청이 CartInterceptor를 거치게 됩니다. 2. CartInterce..

728x90
반응형