2026년 5월 6일 개발자가 되기 위한 첫번째 과정, 학원 수업이 시작되었다.간단한 OT 이후 선생님의 소개가 이어졌고 S/W란 무엇인가에 대한 간단한 강의가 이어졌다.소프트웨어가 어떤 것인지, 소프트웨어의 생애 주기에 대해 알게 되었고 생애주기에 대한 모형도 배웠다
오늘은 학원 2일차다. 어제와 마찬가지로 S/W의 전체적인 이론, 개발에 필요한 최소한의 지식들을 공부하고 있다. 소프트웨어의 거장 그래디 부치(Grady Booch) 오전 시간에는 그래디 부치의 강연을 보았다. 그의 강연은 총 3가지의 흥미로운 소주제로 구성이 되어있었다. > 소프트웨어는 왜 '개집'부터 '도시'까지 모든 것이 될 수 있을까? 개발...
오늘은 학원 3일차다. 코딩에 있어 가장 기초라고도 볼 수 있는 '객체-지향' 오늘은 이 개념에 대해 자세하게 배워보는 시간을 가져보았다. 객체-지향 객체-지향에는 총 3개의 구성이 존재한다 객체 클래스 메시지 클래스는 설계도고 객체는 실체라고 볼 수가 있는데
주말을 보내고 다시 월요일이 왔다. 저번주는 개발에 필요한 최소한의 기초 지식인 이론 위주로 공부를 했다. 그리고 오늘부터는 드디어 실습을 시작하게 되었다. 자바 기본 오늘 첫 시간부터는 자바 설치와 vscode 설치를 진행하였다. 자바를 실행하기 위한 jdk를 설치하고 이어서 vscode도 설치를 진행하였다. 그 다음 vscode를 열고 exten...
오늘은 입출력에 대한 개념을 실습하였다. 입력 키보드, 마우스 등 입력 장치를 통해 컴퓨터에 데이터를 입력한다. 출력 모니터, 프린터 등 출력장치를 통해 컴퓨터가 데이터를 내보낸다. 출력하기 이게 자바에서 기본적으로 출력을 하는 방법이라고 한다. 예를 들어 라는 것을 출력하기 위해서는 println을 사용해 이런식으로 작성하면 된다. 여러...
오늘은 6일차! 새로운 진도를 많이 나갔다. 거두절미하고 정리해보겠다. 문자열(String) 문자열은 "안녕하세요"처럼 연속된 문자를 값으로 가지는 자료형이다. 큰 따옴표 안에 값을 작성한다는 특징이 있다. 문자열 예제 다음을 만족하는 문자열 변수를 생성해보세요 > 변수 이름: greeting 값: Hello 이렇게 코드를 작성하였고 출력해 본다...
오늘은 어제 다 못나간 선택문부터 수업을 진행하였다. 삼항 연산자 (Tenary Operator) 조건이 참이면 값 1을 반환하고 거짓이면 값 2를 반환한다. 간단한 if else 문을 대신해 사용할 수 있다 > 조건 ? 값1 : 값2 삼항 연산자 예제 나이가 18살 이상이면 "성인입니다", 아니면 "성인이 아닙니다"를 출력하는 코드를 작성하라. ...
오늘은 여태 배웠던 문제들을 풀어보는 시간을 가져보았다. 태그 수집하기 다음과 같은 태그로부터 검색어들을 수집해라 #맛집#좋반#칭구구해요#갬성#부평핫플 foreach문과 split을 사용하여 작성하였다. tags에 값을 입력한 후 split으로 # 부분을 기준으로 잘라내었다. 그 뒤 keyWords에 저장 후 배열을 생성하였다. 그 뒤 foreac...
오늘도 저번주처럼 응용문제를 풀어보는 시간을 가져보았다. 열심히 공부를하고 코드를 써내려가려해도 아직까지는 순탄치 않은 거 같다. 팩토리얼 구하기 입력 5, 4, 3, 2, 1 결과 5 x 4 x 3 x 2 x 1 4 x 3 x 2 x 1 3 x 2 x 1 2 x 1 1 factorial() 함수를 생성한 뒤, int result = 1;을 사용해 ...
오늘은 10일차 오늘 배운 내용들을 정리해보겠다. 구구단 만들기 입력받은 숫자의 구구단을 출력하는 프로그램을 만들어라. 예를 들어 5를 입력하면 결과는 아래와 같다. 만약 입력받은 숫자가 1과 9사이가 아니라면 "올바른 숫자를 입력하세요" 라고 출력하고 함수를 종료해라. 5 x 1 = 5 5 x 2 = 10 5 x 3 = 15 5 x 4 = 20 5 ...
제어자 (Modifiers) 접근 제어자(Access Modifiers) 클래스/멤버에 대한 접근을 제어한다. 비접근 제어자(Non-Access Modifiers) 클래스/멤버의 용도나 제약 사항 등을 정의한다. 클래스 (Class) 객체 생성을 위한 틀, 설계도를 의미한다. 클래스는 속성과 메서드로 구성된다. 클래스에 속한 속성과 메서드들을 합쳐 ...
setter 활용하기 person에 이름(name) 속성을 할당하는 setter를 정의하라. 그리고 setter에 이름이 유효한지 검사하는 로직을 추가하라. privat String name;을 사용해 name 변수에 직접 접근하지 못하도록 만들었다. 외부에서는 person.name처럼 값을 바로 수정할 수 없게 된다. 그 다음 setName() 이라는...
오늘은 못다한 상속과 추상화에 대해 배워보는 시간을 가져보았다. 부모 소환하기 super 키워드로 자식 클래스에서 부모를 소환할 수 있다. 주로 자식에서 내부적으로 부모의 속성이나 메서드를 사용하고 싶을 때 소환한다. 부모 소환하기 예제 (1) Student 클래스의 greeting 메서드에서 부모의 greeting을 활용해보라. Student 클...
오늘은 리팩토링을 진행해보며 여태 배워왔던 것들을 돌아보고 바른 코딩이란 무엇인가에 대해 배워보는 시간을 가져보았다. 리팩토링(Refactoring) 리팩토링이란 기능은 그대로 두고 내부를 개선하는 것이다. 코드를 읽기 쉽게 만들고 중복을 제거하며 유지보수가 쉬워지게 된다. 리팩토링 예제 (1) > 나쁜 예시 이 코드는 캡슐화를 제대로 활용하지 못...
오늘도 어제와 같이 코드의 좋은 예시와 나쁜 예시를 비교하며 어떤식으로 코드를 설계해야 좋을지에 대해 살펴보았다. SRP (Single Responsibility Principle) 클래스는 하나의 책임만 가져야한다라는 원칙이다. SRP 예제 그럼 먼저 SRP를 위반한 나쁜 예시를 확인해보겠다. > 나쁜 예시 이 코드는 SRP(단일 책임 원칙)을...
오늘도 문제 풀이를 하며 조금 더 심화된 코드를 작성하고 풀이해 보았다. 템플릿 메서드 (Template Method) 큰 작업 흐름은 부모가 정하고 세부동작은 자식이 구현하는 패턴이다. 작업 순서는 고정하고 일부 내용만 자식 클래스마다 다르게 만드는 것이라고 이해하면 된다. 템플릿 메서드 예시 (1) > 나쁜 예시 이 코드는 중복 코드가 너무 많...
오늘도 새로운 패턴들을 배우며 조금 더 깊게 익혀보는 시간을 가져보았다. 어댑터 패턴 (Adapter Pattern) 서로 호환되지 않는 객체를 중간에서 연결해주는 패턴이다. 쉽게 말하면 형식이 다른 것을 변환해서 연결해주는 것이다. 어댑터 패턴 예제 (1) > 나쁜 예시 이 코드가 나쁜 예시인 이유는 앞서 했던 예제들과 비슷하게 OrderServ...
메서드 체이닝 (Method Chaining) 메서드 체이닝은 메서드를 연속으로 이어서 호출하는 기법이다 자기 자신(this)를 반환해서 메서드를 연속으로 호출하는 기법이라고 볼 수 있다. 메서드 체이닝 예제 (1) > 나쁜 예시 이 코드는 동작에는 문제가 없지만 객체지향 설계 관점에서는 사용하기 불편한 구조라는 점에서 나쁜 예시로 볼 수 있다. 현...
지네릭 클래스 예제 (2) ApiResponse의 데이터로 User를 입력하는 코드를 작성하라 ApiResponse에서 T는 타입 매개변수이다. 즉 data에 어떤 타입이 들어올지 미리 정하지 않고 객체를 생성할 때 결정한다. 그렇기 때문에 T자리에 User가 들어간다. 즉 실제로는 class ApiResponse { private User dat; }...
가공/변환하기 변환, 필터링, 정렬 등 데이터를 가공하는 단계이다. 중간 연산의 결과 역시 또 다른 스트림이므로 메서드 체이닝을 활용할 수 있다. 다음은 주요 가공 단계의 메서드이다. 결과 처리하기 가공이 끝난 데이터들을 최종적으로 수집하거나 소비해 스트림 공정을 끝내는 단계이다. 다음은 스트림의 결과 처리용 메서드이다. 합계 구하기 예제 다음과 ...
예외처리 예제 아래 다이어그램을 참고해 Account 인스턴스가 마이너스 금액의 입금을 요청받는 경우 작업을 거부하고 예외를 던지는 코드를 작성하라. >Account balance: int deposit(int amount): void Account 클래스를 만들어 balace(계좌 잔액)을 0으로 설정하였다. 그 다음 deposit 메서드를 만들었고...
DTO 생성하기 예제 데이터베이스로부터 가져온 Post 리스트로부터 PostListDto 리스트를 생성하는 코드를 작성하라. 이 코드는 Post 데이터를 화면에 필요한 형태(PostListDto)로 변환하는 과정을 보여주는 예제이다. 먼저 Post 클래스는 게시물의 전체 정보를 담고 있다. 게시물 번호, 제목, 썸네일 주소, 내용까지 모두 가지고 있는 ...
TodoList 만들기 오늘은 todolist를 만드는 시간을 가져보았다. TodoList 할 일 목록을 관리하는 TodoList 클래스를 구현했다. 이 클래스는 실제 데이터가 저장되는 공간 역할을 하며 할 일 추가, 조회, 삭제, 완료 처리와 같은 핵심 기능을
GitHub 터미널 업로드 방법 GitHub에서 로그인 후 repository 생성 Git 초기화: git init 파일 생성: .gitignore Git 상태 확인: git status 파일 추가: git add . 첫 커밋 생성: git commit -m " pr
다른 버전의 Bank Account Account Transaction Manager View Controller CommandHandler BankAccountApp 이번 Bank Account 프로젝트를 진행하면서 이전에 직접 만들었던 BankAccount 프로젝트와 비교해볼 수 있었다. 처음에 만들었던 버전은 계좌 정보와 거래 내역을 모두...
Java 연습문제 국가 클래스 아래를 만족하는 클래스를 선언하고 객체를 생성하라. 단 불변 객체가 되도록 하라. 그리고 반복문과 getter를 활용해 각 국가의 특성에 접근하라. >Country name: String capitalCity: String population: int language: String isG2: boolean 이번 예제에서...
데이터베이스 (Database) 데이터베이스(DB)는 데이터를 전문적이고 체계적으로 관리하기 위해 구출하는 데이터 저장소이다. 데이터 모델링 방식에 따라 크게 두 종류로 구분된다. 관계형 데이터베이스(RDB) 비관계형 데이터베이스(NoSQL) 관계형 데이터베이스 (Relational Database) 데이터를 행과 열을 가진 테이블(Table) 형식...
JOIN 공통 속성을 기준으로 두 테이블을 합치는 것(join)을 의미합니다. 조인을 통해 두 테이블의 정보를 조합해서 조회할 수 있다. 다음은 조인을 수행하는 방법이다. > ...FROM테이블1 JOIN테이블2 ON테이블1.컬럼 = 테이블2.컬럼; JOIN 예제 (1) 학생, 학과 테이블을 활용해 학생들을 그들이 속한 학과 정보와 함께 조회하라. ...
View (뷰) 웹이나 모바일 애플리케이션에서 사용자에게 보여지는 화면을 의미한다. 사용자 인터페이스(UI(라고도 부른다. SSR (Server-Side Rendering) 전통적인 웹 애플리케이션 방식으로 서버가 화면(HTML)을 완성해서 클라이언트에게 내려주는 구조이다. 서버 프레임워크별 템플릿 엔진 Spring Boot : Thymeleaf,...
post-mapper domain/ Member.java 데이터베이스의 회원 데이터를 관리하기 위한 Member 클래스를 구현하였다. domain/Post Post 클래스는 게시글 한 개의 정보를 저장하는 객체로 제목, 내용, 작성자 등의 데이터를 관리하기 위해 작성하였다. SignUpRequest.java SignUpRequest 클래스는 회원...
MemberController.java MemberController는 회원(Member)과 관련된 요청을 처리하는 컨트롤러이다. 사용자의 회원가입 및 로그인 요청을 받아 처리하며 회원가입 페이지를 화면에 표시하거나 사용자가 입력한 회원 정보를 검증하는 역할을 한다. 또한 MemberMapper를 통해 데이터베이스와 통신하고 PasswordEncoder를...
지역 도서관 웹사이트 만들기 application.properties Spirng Boot로 웹사이트를 만들 때 사용하는 파일이다. 프로젝트의 기본 설정을 담당하고 데이터베이스 연결 설정이 들어간다. enums/Status.java 이 파일은 도서관 시스템에서 상태 값을 안전하고 통일성 있게 관리하는 파일이다. 도서관 시스템에서 상태를 문자열로 쓰면...
dto/BookDetailsResponse.java dto/InstanceOfBookDetailsResponse.java dto/BookSearchResponse.java dto/AuthorDetailsResponse.java controller/BookController.java controller/BookInstanceController.jav...
자바 객체지향이 아직 나에겐 너무 어려워서 자습시간 때 공부를 하는 시간을 가져보았다. 예제 1 예제 2 예제 3 예제 4 예제 5 예제 6 예제 7 예제 8 마무리 AI 도움 없이 혼자서 작성하려고 많은 노력을 했다. 아직은 미숙한 실력이지만 조금씩 이해가 되고 한 줄씩 작성할 수 있게 되면서 뿌듯한 마음이 생긴다. 하나하나 작성할 때마...
프론트 엔드 (Front-End) 사용자가 브라우저를 통해 눈으로 보고 클릭하고 상호작용하는 웹사이트의 모든 앞단(Client-sid) 영역을 구축하는 기술을 의미한다. 개발 언어 HTML 웹페이지의 기본 정보(텍스트, 이미지 등)를 만드는 언어이다. CSS(Cascading Style Sheet) 디자인/스타일 개발에 사용되는 언어이다. Java...
객체지향 연습문제(1) 객체지향 연습문제(2) 객체지향 연습문제(3) 객체지향 연습문제(4) 마무리 부족한 객체지향 연습문제를 꾸준히 풀고 있다. AI 도움 없이 혼자서 풀려니까 확실히 시간이 오래걸리고 더디긴하지만 하나씩 풀어가는 날 보며 뿌듯함을 느꼈다. 얼른 실력이 무럭무럭 자랐으면 좋겠다!
레이아웃 레이아웃 구성 방식 크게 Semantic/Non-Semantic 방식으로 나뉜다. Semantic Layout Semantic 엘리먼트 시멘틱 레이아웃의 장점 화면에 보여지는 모습은 시멘틱 태그를 사용하던 div 엘리먼트만 사용하던 똑같다. 검색 엔진 최적화(SEO) 웹 접근성(스크린 리더가 현재 위치
CSS CSS 선택자 선택자는 스타일을 적용할 엘리먼트를 선택하는 역할을 한다. 기본 선택자 관계 선택자 기본 선택자 엘리먼트 선택자 예제 엘리먼트 선택자를 활용해 간단한 스타일을 적용해라. 클래스 선택자 예제 클래스 선택자를 활용해 간단한 스타일을 적용하라. 아이디 선택자 아이디 선택자를 활용해 간단한 스타일을 적용하라. 관계 선택자 ...
자바 객체지향 문제 연습(1) 자바 객체지향 문제 연습(2) 자바 객체지향 문제 연습(3) 마무리 아직은 많이 틀리고 헷갈려서 이정도 수준의 문제를 더 연습해서 내 걸로 만들어봐야겠다!
Size width/height 엘리먼트의 넓이(width)와 높이(height)를 결정한다. width 속성 다음은 넓이 관련된 속성들이다. width 예제 width가 auto일 때와 지정한 경우를 비교하는 코드를 작성하라. min-width 예제 min-width를 활용해 엘리먼트의 최소 넓이를 정하라. max-width maxx-w...
야구게임 배열 사용 x 배열 사용 ㅇ 개인 공부 (1) 사용자의 입력은 받은 숫자를 순서대로 출력하되 3의 배수인 숫자에만 Fizz로 출력하라. (2) 사용자가 입력한 값을 순서대로 출력하되 3의 배수인 숫자만 출력하지 마라. 마무리 오늘은 강사님이 바뀌셔서 소개와 전체적인 상담이 진행되었다. vscode대신 intellij를 다운로드 받았...
자료형 Scanner Test switch문 switch문 활용 switch문 활용 선생님 답 while문 for문 별찍기 랜덤 문제 마무리 오늘은 선생님이 바뀌시면서 java를 처음부터 다시 찝어주셨다. 확실히 전 선생님보다 훨씬 이해하기 쉬웠고 수업이 재밌었다. 이것저것 배우지 않았던 것들까지 배우면서 머리가 조금 복잡해지긴 했지만 열...
Array Test 배열 기초 Q1 시간이 부족해서 문제를 다 못풀었다! Q1_선생님 풀이 MultiArrayTest Q2 길이가 5인 정수형 배열을 생성한 후, 다음 조건을 만족하는 프로그램을 작성하시오. 조건 배열에 1~9 사이의 랜덤한 숫자를 저장하시오. 중복된 숫자는 허용하지 않는다. 배열의 내용을 출력하시오. (정렬 전) 배열의 값을...
ㄹ 배열 만들기 배열은 아무리해도 아직은 모르겠어서 시간안에 풀지 못했다. ㄹ 배열 만들기 선생님 풀이 달팽이 배열 만들기 MultiArrayTest MethodTset 간단한 계산기 프로젝트 이제 이런 코드는 시간이 좀 걸리지만 혼자서 풀 수 있게 되었다. 아직 시간이 부족해서 메서드는 만들지 못하였지만 메인 안에서 출력은 되게 만들었다. ...
낚시 게임 사실 이 문제도 풀었어야 했는데 나에겐 아직 어려운 문제라 풀지는 못하고 선생님 풀이만 보았다. 점수 프로그램 이 문제도 시간이 없어서 3번 메소드를 구현하지 못했다. 시간만 있었으면 완성이 가능했을 거다. 점수 프로그램 선생님 풀이 랜덤 추출 프로그램 CrCvTest MATest 무한 반복 프로그램 이건 나 혼자 main문 작성...
ClassTest Q1 클래스 객체화 연습 ConstructTest HasTast Q2 개인공부 Q1 Q2 Q3 Q4 Q5 마무리 class에 대해 배웠다. 메서드랑 클래스가 제일 재밌는 거 같다. 문제도 전에 좀 풀었었어서 꽤 순조롭게 풀었다. 그래도 아직 선생님이 출제해주시는 문제는 어렵다. 내일도 열심히 공부해야 될 거 같다.
Q1 ClassTest Q2 Q2 선생님 풀이 classArrayTest MethodOverloading ConOverloading Q3 Q3 선생님 풀이 개인 공부 Q1 Q2 Q3 마무리 복잡하다. 근데 재밌다. 선생님이 설명해주시는 걸 못알아먹어도 재밌다. 지피티랑 객체화 문제를 푸는 시간이 가장 재밌었다. 조금 더 시간이 많았...
AccessTest InheritanceTest Q1 미완성 코드다 시간이 부족했다. Q1 선생님 풀이 Q2 Q2 선생님 풀이 CastingTest OverridingTest MethodAndCastingTest Q3 선생님 풀이 개인공부 Q1 Q2 마무리 오늘도 자바공부 완
SuperTest AbstractClassTest InterfaceTest Q1 AbstractTest GenericTest ListTest1 ListTest2 SetTest1 SetTest2 Q2 개인 공부 Q1 Q2 Q3 Q4 Q5 Q6 마무리 오늘은 추상과 List에 대해 배웠다. 아직 좀 많이 어려워서 개인 공부를 ...
GetSetTest MapTest1 MapTest2 Q1 Q1_1 선생님 풀이 java와 DB 연결 maven으로 생성 xml 파일에 gson 의존성 주입 Main 마무리 전화번호부가 완성되었다. main문안에 모든 걸 다 적었다. 사실 분리도 하고 그랬어야했는데 아직은 try문 안에 sql 연동해서 불러오고 작업하는 것도 어려워서 ai의...
ExceptionTest1 ExceptionTest2 ExceptionTest3 InnerClass LanbdaTest PDF 만들기 PDF 만들기 2 API 활용 크롤링 Java로 엑셀 생성 의존성 목록 마무리 오늘은 예외처리와 내부 클래스까지 배우고 크롤링과 여러가지 자바로 사용할 수 있는 기술들에 대해 활용해보는 시간을 가져보았다...
JSONUPTest 의존성 HTML 마무리 오늘은 남은 크롤링과 html에 대해 배워보는 시간을 가져보았다. 개인사정으로 오후 수업은 못들었지만 주말에 공부해서 보충할 예정이다.
로그인창 버튼 이동 간단한 주문창 간단한 주문창(2) Q1 회원 가입 창 Q2 예약 정보 Q3 프론트엔드 개발자 지원서 만들기 CSS style 마진과 패딩 맛보기 글씨 색 바꾸기 폰트(1) 폰트(2) 폰트(3) 폰트(4) 다양한 색상 표기법 color text-align line height(1) line heig...
개인 사정으로 결석 주말에 보충 공부 예정
CSS position 속성 상품 소개 페이지 배경 이미지 가져오기 배경 이미지 위치 맞추기 배경 이미지 위치 맞추기 2 배경 이미지 크기 조절 선형 그라데이션 선형 그라데이션 2 원형 그라데이션 원형 그라데이션 2 원형 그라데이션 3 원형 그라데이션 4 그라데이션 반복 그라데이션 반복 2 Q1 Q2 Q3 Q4 고급 선택자 ...
엑셀, 한글파일 바로가기 링크 바로가기 로그인 페이지 링크 스타일 회원가입 가상 선택자 가상 클래스 가상 요소 가상요소 2 다양한 필터 함수 Q1 Q2 Q3 Q4 Transform 밀기 Transfrom 상하좌우로 늘리기 Transform 각도 조절 Transform 원근감 Transform 회전 Transform 비틀기 ...
애니메이션 Transform2 Q1 Q2 Q3 Q4 viewport units 미디어 쿼리 사용하기 Object-fit 속성 플렉서블 박스 레이아웃 마무리 오늘도 CSS를 배웠다.
CSS Grid Layout 1 CSS Grid Layout 2 CSS Grid Layout 3 CSS Grid Layout 4 CSS Grid Layout 5 CSS Grid Layout 6 Q1 Q2 Javascript 글자색 바꾸기 alert 문 Welcome 나이 계산하기 조건문 세션 선택 - switch문 구구단 팩토리...
함수 변수 호이스팅 Function - Variable Function - Variable 2 기본 매개변수(Default Parameters) 즉시 실행 함수(IIFE, Immediately Invoked Function Expression) 화살표 함수(Arrow Function, =>) 자바 스크립트 이벤트 What time is it?...
SQL select*from memberTBL; select*from producttbl; select name,address from memberTBL; -- memberTBL에 name이 지운이인 데이터 가져오기 select*from memberTBL where name = '지운이'; -- memberTBL에 있는 지운이라는 이름을 가진 자의...
SQL -- DDL DCL DML -- DML -> select insert update delete -- DDL -> create drop alter -- DCL -> grant revoke -- DDL CREATE TABLE testTbl3 (id int AUTO_INCREMENT PRIMARY KEY, userName char(3), ag...
Spring boot Spring boot의 특징 웹 애플리케이션 서버(내장) 스프링 스타터 개발이 조금 더 편하다. xml 설정 없이 자바 수준으로 개발하기 용이하다. 애플리케이션 모니터링 관련 용이 기본 뼈대 main -> resources -> templates -> HTML static -> 나머지 java -> 자바 test -> java ...
Spring 서버 사이드 렌더링(SSR) 미리 정의된 템플릿을 만들고 동적으로 HTML 페이지를 만들어서 클라이언트에게 전달 요청이 올 때마다 서버에서 새로운 HTML 페이지를 만들어서 주는 방식 (서버 사이드랜드) 서버 사이드 템플릿 엔진 - Thymeleaf, JSP JSP는 무조건 서버사이드 렌더링 Thymeleaf - 무조건 서버사이드 렌더링을...
스프링 시큐리티 인증 / 인가 인증이 필요없는 경우 -> 상품 상세 페이지 조회 인증이 필요한 경우 -> 상품 주문 관리자 권한이 필요한 경우 -> 상품 등록 회원가입 흐름 (Test) > DTO 객체 -> Member Entity -> Member Service -> Member Repository DTO (Data Transfer Object)...
Spring 역할 한 줄 정리 DTO → 데이터를 담아 전달 Entity → DB에 저장할 객체 Repository → Entity를 DB에 저장·조회하는 역할 Service → 비즈니스 로직을 처리하며 Repository를 호출하는 역할 엔티티 정리 | 어노테이션 | 설명 ...
Spring 상품 등록 및 이미지 등록 흐름 1. 상품 등록 요청 사용자가 itemForm.html에서 상품 정보와 이미지를 입력한 뒤 저장 버튼을 누르 ItemController가 요청을 받는다. Controller는 ItemFormDto : 상품 정보 List : 이미지 파일 목록 을 ItemService로 전달한다. > View ↓ It...
Spring ItemRepositoryCustom ItemRepositoryCustomImpl MainController ItemImgDto ItemImgService MainItemDto Item ItemRepository ItemService main.html ItemController itemMng.html itemForm.ht...
Spring ItemController ItemService ItemDtl.html OrderItemDto OrderHistDto OrderRepository ItemLmgRepository OutOfStockException Item OrderItem Order OrderDto OrderService OrderController ...
Spring orderHist.html Item OrderItem Order OrderService OrderService CartItemDto Cart CartItem CartController itemDtl.html CartRepository CartItemRepository CartService CartDetailDto c...
Spring cartList.html CartOrderDto OrderService CartService CartController 마무리 오늘은 장바구니까지 완료하며 쇼핑몰을 마무리하였다. 소셜 로그인만 하면 완료된다!
Spring 오전에는 sns 로그인 작성, 오후에는 aws에 배포하는 작업을 했다. 중간에서부터 완전 꼬여서 선생님 도움을 받아서 배포를 완료했다. 배포는 정말 쉬운 게 아니라는 것을 느꼈다.
팀프로젝트 주제 선정 페스티벌 웹,앱 홈 - 검색창, 알림창, 캘린더, 실시간 공연소식, 큰 배너창, 뉴스 프로필 - 프로필 사진, 이름, 가수, 공연추가, 공연 포스터 컬렉션, 뱃지 설정 -> 앱 문의, 이용약관 구현, 다크모드 커뮤니티 - 게시판 (전체글, 인기글 ....) 공연 일정 - 캘린더 날씨, 공연 데이터, 공연소식 정리 AI - ...
팀프로젝트 오늘은 팀프로젝트 회의랑 기획 작성, erd 구성, 깃 협업 구조 만들기를 했다. 내가 혼자 다 했당.
팀프로젝트 오늘은 기획문서를 마저 정리하고 개발 환경을 구축한 다음 본격적인 개발에 들어갔다. 미리 만들어둔 erd를 바탕으로 db를 구축하고 깃허브 공유 환경까지 마련하였다. 오늘 내가 진행한 곳은 프로필 만들기 프로필에 여러가지 기능들을 넣어 사용자가 보기 편하게 만들었다. 나의 공연부터 시작해서 여태 다녀온 페스티벌, 관심 가수, 공연 등등 그리고 ...
팀 프로젝트 오늘 한 일 요약 백엔드 구조 정리 패키지 전체 리네이밍 (com.example.demo → com.example.festival) 각 도메인을 controller/service/dto/entity/repository 계층별 폴더로 재정리 2.
팀 프로젝트 관심 공연/아티스트 하트(찜) API 정식 구현 interest 패키지에 InterestController/Service/DTO 구현, 관심 아티스트·공연 등록/조회/삭제 API 완성 공연 상세페이지에 예매하기 버튼 옆 하트 버튼 추가 → 클릭 시 관심공연 등록/해제, 프로필의 관심공연 목록에 즉시 반영
팀프로젝트 오늘은 아직 하고 있던 일을 마무리를 못해서 내일 한 번에 정리해서 올리려고 한다. 팀프로젝트 생각보다 빡센데 재밌다~
팀 프로젝트 2026-08-25 개발 기록 오전 — MD 중고거래 / 사전예약 MD 중고거래 등록/조회/구매요청/찜 기능 추가 — 매물 등록, 이미지 업로드, 구매요청, 찜(좋아요) 토글까지 한 번에 MD 사전예약 페이지 로그인 필수로 변경 프로필에 중고거래 활동 내역 섹션 추가 — 내가 등록한 매물 / 찜한 매물 목록을 프로필에서 바로 확인 가능하게...
팀 프로젝트 AI 챗봇 1차 구현 (MySQL 기반) chatbot 패키지 신규: 의도 분류 후 사실 질의(공연/아티스트 시간, 주차·입장)는 DB 조회로 결정론적으로 답하고(LLM 미사용, 환각 위험 0%), 추천/취향분석/코디추천만 LLM이 근거를 갖고 설명 생성 종료된 공연 미기록 시 챗봇 인사말에서 "기록 만들어드릴까요?" 자동 유도 프론트에 우...