
7.2(화) 1. 저장소 만들기 git init -> 깃의 리포지토리를 생성하는것

👉 클래스에 대한 필수적인 데이터를 지정하기 위한 함수👉기본적으로 클래스에 대한 생성자를 직접 생성할 수 있지만, 따로 생성해주지 않으면 컴파일러에서 자동으로 defualt 생성자를 생성해준다.👉Movie클래스에서 Movie라는 똑같은 메서드를 생성하는 것이 생성

📌 ArrayList <Integer> list = new ArrayList<Integer>();👉 자동으로 배열의 크기를 늘려주고, 중간 내용물을 삭제하면 크기를 줄여주는 특성을 가지고 있어서 기존 배열의 고정된 크기를 갖는 단점을 해결함.👉 기본자료

👉 자바는 컴파일, 인터프리터방식을 같이 사용한다. 이러한 이유는 속도 때문인데, 최적화 및 속도 플랫폼 독립성을 가져갈 수 있다.👉 ByteCode라는 것은 프로그래밍언어와 인터프리터 언어 그 사이의 언어이기 때문에, 다양한 플랫폼에서 사용이 가능하다. Byte

👉 클래스변수 : static value (클래스가 있을동안 사용되는 변수)👉 인스턴스변수 : 인스턴스가 남아있는동안 사용되는 변수👉 지역변수 : 함수나 메소드 안에서만 사용되는 변수\-> public Demo(String s1, String s2) 생성자를 통해

7.12(금)Scanner 조심해야할점1-1. nextLine()에 대한 input이 안나오는 이유👉 nextInt할 때 숫자+enter를 입력했기 때문👉 nextLine( )에서는 enter값만 읽기 때문에 input을 할 기회가 없다.1-2. 해결방법👉 고로

7.15 (월) 1. Record 👉 클래스를 더 쉽게 사용하는것. 👉 text, answer와 같은 구성요소를 갖는다. 👉 자체적으로 final로 선언된 필드를 가지며, 불변객체를 생성함. 👉 생성자를 자동으로 생성해준다. 🌳 Record를 이용하여 생

Override 👉 덮어쓴다 -> 상속 / 인터페이스인 경우에만 가능하다.overload👉 한 클래스 내에서 이름이 똑같은 메서드가 매개변수의 개수가 다른 메서드.생성자 오버로딩 👉 생성자가 name과 age가 있을때 똑같은 생성자를 만들어서 name의 생성자

📌 in - read : 파일을 읽는 기능📌 out - write : 파일을 작성하는 기능📌 예외와 에러는 다른개념임.에러 : 개발자가 손 쓸 수 없는 것.예외 : 개발자가 고칠수 있는 것.👉 컴파일러쪽에서 예외처리를 해주는것 / checkedExcetion👉

📌 I/O의 횟수가 적을수록 📌 I/O의 데이터 양이 적을수록👉 입출력의 속도 개선을 위해 버퍼를 사용한다.buffer를 이용한 속도차이 비교해보기Request headers👉 클라이언트가 서버로 원하는 조건에 대한 정보를 서버에게 전달.👉 ex) 서버의 호스

👉 클라이언트가 서버에게 주소를 요청하게 되면 서버에서는 완전한 html을 생성하여 클라이언트에게 전달한다.👉 일반적으로 www.google.com 을 작성하게 되면 구글서버에서 클라이언트에게 구글메인 페이지에 대한 html파일을 전달하는것이다.👉 SSR과 다르게

WAS👉 WAS의 한개가 매우 고가이므로 중간에 1대 모니터링으로 해놓고, 여러개의 web application이 연결되어있는식이다. 삼성그룹사가 있으면 아래 예하 그룹사가 있는것처럼.Servlet Context = Web Application👉 사진을 설명하자면,

GET : 조회, 퍼갈수있게, 카톡으로 전달이 가능 👉 쿼리스트링 : 헤드와 같이 전송 👉 EX) ?키=값&키=값&키=값 👉 URL 인코딩 : URL에 한글 및 공백이 들어가면POST : 처리하는용도, 개인적인 내용request 변수 : 브라우저에서 전송되는

MVC 란? (Model, View, Controller)👉 우선 MVC가 나오게된 유래부터 생각해보자면, 기존에는 하나의 주소를 가진 JSP 를 통한 홈페이지 화면 송출밖에 없었지만, 이후 홈페이지를 변경해야할때 주소도 변경해야하고 JSP 자체를 변경해야하는 에로사

👉 애플리케이션의 현재 상태에 대해서 실시간으로 변경해야하고, M,V,C가 서로 공유해야하지만 웹에서는 상태라는것이 없기 때문에 실제로는 MVC가 아니라 Model2라고 불려야하지만 MVC의 구조를 사용하기 때문에 Web MVC라고 불린다.ex) req.getRequ

📌 커넥션풀을 하기 위해서 HikariCP를 주로 사용한다.👉 SQL에서 페이징은 데이터를 쪼개서 여러 페이지에 걸쳐 보여주는 기법으로, 대량의 데이터를 한 번에 가져오는 대신, 페이지 단위로 나누어 가져오는것.👉 DB에서 적은양을 처리하면 네트워크 속도가 향상

👉 close 의 의미는 원격에 통보를 하는 의미로 GC가 제 역할을 해도 된다는 말이다.👉 만약에 Connection 객체를 인스턴스 변수로 할당하게 된다면 한 사람이 1번 작업을 하고 있을때 두 번째 사람이 중간에 2번작업을 하려고 들어온다면, 이후 close를

👉 400대 500대 에러가 발생할시에 에러가 어느 부분에서 발생했는지 보여주면 해커에 노출이 될 수 있으므로, 에러발생 화면을 별도로 만들어준다.web.xml 파일내에 error코드를 작성후 location을 error500,jsp로 만들어준다.error500.js

👉 세션은 서버에서 관리되는 클라이언트의 상태 정보.👉 상태유지 : 세션을 사용하면 클라이언트의 상태를 유지할 수 있다. 로그인 상태를 유지하거나 사용자가 페이지를 이동하더라도 유지👉 일시적 : 클라이언트가 웹 브라우저를 닫거나 세션 만료시간이 지나면 세션 정보는

👉서블릿 컨테이너에서 발생하는 이벤트를 감지하고 처리하는 객체로, 는 웹 애플리케이션의 생명 주기 이벤트, 세션 이벤트 등이 있다. 쉽게 말해 서버가 가동하고 종료될때 이벤트가 생성되기도 하고 RequestEvent(요청이벤트)를 통해서 누군가 브라우저에 방문 했다는

👉 클라이언트 요청에 따른 여러 종류의 스코프가 있다.👉 수명 : 클라이언트가 웹 어플리케이션에 접속하여 세션 생성, 세션이 종료될 때까지 유지됨.👉 범위 : 같은 사용자가 여러 페이지를 거칠때 세션을 통해 데이터 유지.👉 사용예시 : 로그인 정보, 사용자 설정

📌 어제부터 뺑이친 cookie로 만든 작고작은 프로젝트를 해결해서 기분좋은 기념으로 한번 더 올린다. 점점 개발 오류에 대한 익숙함이 증가하는중.

📌 서버중심 시대 : JSTL -> 결과페이지 + DOM 핸들링 + JS이벤트 => HTML, CSS, JS📌 DHTML 시대 : 한 화면에서의 변화 -> JS + Ajax(서버통신) => JSON📌 WebApplication 시대 : SinglePageAppli

👉 돔트리는 HTML 문서의 구조를 트리 형태로 표현👉 div, p, a 태그 같은 요소들이 돔 트리의 노드👉 랜더트리는 돔트리를 기반으로 페이지를 실제로 어떻게 표시할지 결정하는 트리👉 돔트리와 각 노드가 스타일 정보와 조합되어 랜더 트리의 노드로 변환.👉

👉 export는 기존 java의 import와 같은 개념으로 사용된다.👉 sample.js라는 js파일을 생성하여 메소드를 만드는데, 만약 js에서 메소드를 export할때 default로 생성한다면 html에서 import 메소드를 {}로 가두면 오류가 난다.

📌 공통코드📌 기본코드📌 축약코드👉 함수생성 방법3가지중 화살표를 이용한 함수생성 방법👉 print라는 함수는 param이라는 파라미터를 한개 받는다👉 obj2의 name과 age가 함수내부의 param.name, param.age로 들어가서 name age

8.14(수) 1. 모듈패턴 👉 프로젝트의 코드 단위를 명확하게 분리하고 구성된다. 👉 클로저와 즉시 실행함수가 합쳐져 싱글턴같은 기능을 할 수 있다. 1-1. sample2.js 1-2. index.html 👉 하지만 이렇게 즉시 실행함수와 클로저를 사용

👉 md 에서 npm create vue@latest 이후 나오는것들 다 No하기 -> 새로 생성한 v1에서 code . 하면 vscode로 바로 접속 -> vscode terminal에서 npm install👉 cmd에서 npm create vite@latest

8.20(화) 1. v-bind 👉 하나의 컴포넌트에 속성을 주는것 👉 messeage라는 변수를 만들어서 컴포넌트에 달아놓으면 elemnets 에서 확인시에 변수에 대한 속성값이 주어진다. 👉 v-bind라고 사용하지않고 주로 :src="message"로 사

👉 기존에 사용하던 props / emits는 각 컴포넌트간에 바로 상위 바로 하위컴포넌트끼리 전달을 할 수 있어서 여러단계 아래의 컴포넌트에게 전달하기 위해선 각각의 컴포넌트에 선언을 해야한다는 불편함이 존재했다.👉 이러한 불편함을 줄이기위해 하나의 컴포넌트에서

npm install vue-router@4pages 만들기main.js에 createRouter설정App.vue import👉 vue application을 새로 시작하는것이 아닌(새창을 띄우는것이 아닌) history(주소)만 변경하여 사용된다.👉 /main /

👉 서버를 통해 api 데이터를 가져오는데 시간이걸리는것에 대해 loading창을 띄우기👉 loading 변수를 반응형으로 만든다👉 api서버 통신하는 코드 내부에서 loading.value값을 true -> false로 변경해준다.👉 loading이 true일

👉 결과값을 보게되면 str1의 값은 zzz로 변경이 되지만, str2는 zzz로 변경이 되지 않는다.이는 str1은 toRef를 이용하여 obj.value.v1 값을 간접참조하므로 원값이 변경될시 str1값도 변경된다.👉 이러한 점을 이용하여 userId값 또한

8.28(수) 1. eclipse설치 1-1. c드라이브 아래 ws폴더 생성 2. jdk 및 환경변수 설정 2-1. cmd에서 java -version을 확인하여 17version인지 확인 2-2. cmd종료 하기 2-3. corretto-17 관련된 폴더 들어

8.29(목) 1. log4j2 1-1. resources 폴더 내부에 log4j2.xml 파일을 드래그 앤 드롭 1-2. pom.xml 에 추가하기 1-3. LOG4J2 내용 수정 및 추가 2. test 2-1. pom.xml 추가 2-2. test폴더

👉 view파일을 어떻게 읽을것인가에 대한 코드👉 controller에서 getMapping의 코드가 "/hello" 이고, 해당되는 메소드가 public void일때는, property의 첫번째 뒤에 붙게된다. 고로 /WEB-INF/views/hello.jsp가

클라이언트부터 들어오는 모든 요청을 DispatcherServlet이 받는다.DispatcherServlet은 HandlerMapping을 통해서 요청을 처리할 Controller를 검색한다.DispatcherServlet은 검색된 Controller를 실행하여 클라이

📌 Target : 개발자가 직접 만든 코드📌 Proxy : Target을 감싸고있는 객체📌 aspect : logging, transaction과 같은 기능자체를 의미📌 advice : 실체, 횡단관심사 코드(aspect를 실제로 구현한 코드)📌 AOP에서

👉 MyBatis에서는 mapper에서 sql정의할때 매개변수를 한개밖에 사용하지 못한다. 하지만, 두개 이상 사용하기 위해서는 param이라는 어노테이션을 사용해야한다.👉 insert에서는 ReplyVO라는 객체 한가지만 매개변수로 사용하고있지만, list와 co

9.5 (목) 1. resultMap 👉 기존에는 xml코드 내부에 select 태그와 함께 id와 resultType을 많이 사용했지만, resultMap을 통해 mapping을 쉽게 할 수 있다. 예를들어 xml내부 sql코드의 결과와 DTO인 JAVA객체를

👉 Sercurity에서는 일반적인 로그인처럼 db에서 id / pw를 확인하는것이 아니고, db에서는 사용자의 정보를 가져와 password Encoder를 사용하여 사용자임을 확인한다.👉 기본 form-login을 사용하게 되면 Spring Security에서

1-1. 프로젝트 생성1-2. 기초셋팅TimeMapper.javaSpringDemoApplicationTimeMapper.xmlapplication.ymlSpringDemoApplicationTests👉 기존의 application.yml이 아닌 dev가 추가된 ym

👉 우선, PostMapping은 게시글을 등록한 이후에 발생이 되는데 첨부파일을 넣어 게시글에 등록하게 되면 해당 DTO에 결합된 Imges를 uploadUtil의 upload메소드에 매개변수로 들어가서, List<.String>데이터타입인 uploadedFi

👉 th:data-bno=${dto.bno} 처럼 data-bno 변수에 dto.bno 값을 할당하여 script태그에서 사용이 가능하다.script👉 여기서 getAttribute는 html요소에서 특정 속성값을 읽어오는 역할인데, data-bno의 속성값을 읽어

👉 EnableMethodSecurity은 controller에서 해당 권한이 있을때 사용할수있도록 사용하는 @PreAuthorize, @PostAuthorize 어노테이션들을 활성화하는 어노테이션이다.👉 password를 Encodeing해야하므로 @bean을 통

9.21 (금) 1. TailWind CSS 👉 style태그를 이용하여 별도의 css를 사용하지 않고, java태그 내부에 css를 사용할 수 있음. ex) 📌 https://tailwindcss.com/docs/guides/vite npm install

👉 Vue와 React는 큰 차이점이 있는데, 그 중 한가지는 양방향과 단방향이다.👉 Vue같은 경우에는 Input태그를 사용할 때, v-model을 사용하여 input에 작성되는 내용이 양방향으로 데이터가 작성이 되지만, React인 경우에는 그렇지않기 때문에 I

👉 코드스플리팅은 router에서 import되는 부분을 전체 import가 아니라 변수로 따로 빼내어 해당 경로로 접근할 때만 로드되도록 하는 기법👉 레이지로딩은 Suspense컴포넌트를 사용하여 로딩상태를 사용자에게 보여주는 기법👉 fallback을 통해서 데

👉 useCallback은 함수를 메모이제이션하여, 값이 변경되지 않는 한 이전에 생성된 함수를 사용. input태그에서 이벤트를 사용한것은 한 글자씩 작성할 때마다 handleChange메소드가 호출되어 상태를 업데이트하는데, usecallback을 이용하면 han

👉 react에서의 store를 이용한 상태관리 라이브러리📌 npm install @reduxjs/toolkit : createSlice, configurestore📌 npm install redux : redux 핵심기능 📌 npm install react-r

👉 export를 보면 postSigninThunk라는 이름으로 postSignin을 사용하겠다는 내용이 있는데, postSignin은 api서버에서 사용되는 로그인메소드 이름이다.👉 기존의 reducers아래에 작성되는 extraReucers는 현재 작성된 red

10.08 (화) 1. domain 👉 하나의 도메인에 여러가지 엔티티들이 모여있다 (ex: 상품, 카테고리, 제조사 등) 👉 테이블 설계하는것처럼 설계하면 됨. 👉 모든 엔티티는 식별자가 있어야한다. (pk가 있으면 엔티티) 👉 간단한 파일 구조 1-1.

ERD를 참고하여 구성하자관계의 주어는 FK단방향참조 / 양방향참조가 있는데, 무조건 단방향참조를 생각하자.ToString 주의EX) 상품에 대한 테이블이 존재할때, 상품의 이미지와 상품의 리뷰에 대한 데이터가 있다면 대부분 이미지와 리뷰는 비슷한 개념으로 테이블을 따

10.15 1.validation

인텔리제이 lombok, spring web넣어서 생성dockerfile을 project안에 넣기<터미널에서 인텔리제이 jar파일 생성 하기 ./gradlew bootJar><터미널에서 인텔리제이 gradle 클린 실행하기 ./gradlew clean>3\.

customUtilyml 파일 내부 upload 추가maven 추가yml 내부에 servlet 추가DTO 구성uploadControllerpostman 확인docker desktop 실행 및 jar파일 생성docker build해서 image생성docker contai

REST API 키 : 복사하기보안코드 : 복사하기동의항목의 이메일이 등록되어있는지 확인카카오 로그인uri설정👉 uri 경로를 생성해둬야 아래 에러가 발생하지 않는다.👉 uri의 뒷부분이 인가코드인데, 인가코드를 통해 access token을 얻어야함.KakaoRe

store👉 redux는 전역 상태관리이므로 전역으로 상태관리하기 위한 변수하나를 설정한다.👉 projectStore 라는 store 내부에는 countSlice의 count가 상태변수이다.main👉 main 컴포넌트에서는 store로 사용할 projectStor

👉 jsoup gradle 추가하기👉 urlConnection.setRequestProperty("User-Agent", "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTM

오른쪽 상단 버튼 콘솔에서 프로젝트 만들기웹 푸시 인증서 잘 가지고있어야함. (나중에)웹 눌러서 실행사용할 react에 firebaseconfig 코드 생성하기 위해서 ts로 만들어놓기, npm install 하기다시 fcm 홈페이지에서 안에 내용 가져와서 config

Select는 Mybatis를 사용Create, Delete, Update, Insert등 JPA사용👉 도메인은 vo와 dto같은 느낌으로 실제 sql을 사용해서 create table이 되도록 만드는 구조이다.👉 repository는 현재는 별내용이 없지만, re

aws의 인스턴스인스턴스 시작인스턴스 유형은 t2.micro 선택키페어는 원하는 이름으로 생성키페어 생성👉 키페어 생성하면 생성된 다운로드 파일을 aws 폴더 내부에 넣어놓자👉 aws 폴더는 내가 별도로 생성한것.네트워크 생성👉 새 기본 vpc생성 하고, 다시 리