본문 바로가기
  • 시 쓰는 개발자

분류 전체보기176

스프링 느낀점 - 2023.03.07. 작성 옛날에 메모했던 걸 보며 내용을 바로잡기 위해 블로그에 기록해둡니다. (23년 3월 메모)날짜표시가 따로 없는 건 과거의 메모니까, 틀린 내용이 다수 포함될 수 있음. 성공/실패 메세지>> 성공, 실패 여부에 대한 메세지를 항상 같이 넘겨주는 것이 무조건 좋다고 생각이 된다. 그래야 postman으로 검사할 때도 편하고 어디서 뭐때문에 실패했는지 내가 직접 넘겨줄 수 있기 때문에 훨씬 편하다.→ print로 찍을 수도 있는데, log.info로 로그를 남겨주는 것이 더 좋은듯하다.  API 명세서>> api 명세서는 거의 무조건 postman으로 관리하는 게 맞다. notion에 관리를 같이 해도 되는데, 노션은 사용해도 되고 안해도 된다면 postman은 무조건 해야하는 것 같다 그래야 기능확인하기도 .. 2024. 5. 9.
HTTP 웹 기본 지식 (3) - Stateless, Connectionless, http메세지 김영한님의 HTTP 웹 기본지식을 들으며 정리하였습니다. 웹 브라우저 요청 흐름EX) 다음과 같이 요청 날림 https://www.google.com/search?q=Hello&hl=koIP랑 PORT 정보 찾아내고, 이를 토대로 요청 보냄.HTTP 버전 정보와 호스트 정보, 쿼리 정보 등을 GET 요청 보냄그 요청이 Socket 라이브러리 통해서 TCP/IP로 전달되고, 패킷이 생성됨.호스트 서버에서 받아서 패킷 까서 HTTP 메세지 분석응답패킷 생성해서 보냄. 데이터 타입 정보, HTTP 버전, 상태정보(200, 400 등), HTML 길이정보, BODY 내용 등 ...HTTP (Hyper Text Transfer Protocol)모든 것을 담아 전송한다. HTML, 이미지, 음성, 파일, JSON,.. 2024. 5. 7.
HTTP 웹 기본 지식 (2) - DNS, URL 김영한님의 HTTP 웹 기본지식을 들으며 정리하였습니다. DNS (Domain Name System)IP는 기억하기 어렵고, 변경될 수 있기 때문에 DNS라는 전화번호부를 도입.웹페이지 클릭시 해당 도메인 명을 IP 주소로 변환하여 연결해줌.URI (Uniform Resource Identifier) = URL + URN리소스를 식별하는 통합된 방법이다.URI는 Locator(URL)와 Name(URN)으로 분류할 수 있다. 하지만 URN 방식은 보편화 되지 않아서 안쓰이고, URL과 URI를 같은 의미로 이야기함.Uniform : 리소스를 식별하는 통합된 방식Resource : URI로 식별할 수 있는 모든 것Identifier : 다른 항목과 구분하는데 필요한 정보 (EX. 주민번호)URL기본 포멧 .. 2024. 5. 7.
HTTP 웹 기본 지식 (1) - IP, TCP, UDP 김영한님의 HTTP 웹 기본지식을 들으며 정리하였습니다. IP (Internet Protocol)지정한 IP 주소에 패킷이라는 단위로 데이터 전달패킷 : 패키지 + 버킷. 즉, 데이터 보따리라고 생각데이터 송수신에서 송신과 수신은 같은 길이 아니어도 됨. 즉, 데이터 주고받을 때 왔던 길 그대로 되돌아가는 게 아니어도 상관 없음.IP의 한계비연결성 : PC가 꺼져있어도, 못받는상태여도 상관없이 데이터 보냄.비신뢰성 : 중간에 패킷 사라지는 것이나, 패킷 오는 순서 보장 안해줌.패킷 크기가 크면 끊어서 보내주는데(1500바이트 정도), 순서 보장 안해주고 & 전송되는 노드들이 고정이 아니라서 패킷 순서가 꼬일 수 있음.TCP의 특징 (Transmission Control Protocol)TCP가 출발지와 .. 2024. 5. 7.
JPA N+1 문제 여러 인터넷 내용들을 참고하여 정리하였습니다.[개발면접3분] N+1 문제와 해결방법https://www.youtube.com/watch?v=B0iYvMJ6eG4  [10분 테코톡] 수달의 JPA N+1 문제https://www.youtube.com/watch?v=ni92wUkAmQIN+1 문제 : ORM 사용시 발생하는 쿼리 문제. 1개의 쿼리문에 N개의 추가 쿼리문이 요청되어 성능이 저하되는 것을 의미한다. 즉, 1+N 문제이다.OneToMany 예시 (게시글-댓글 상황)>> 1단계게시글 - 댓글처럼 OneToMany 관계에서 Lazy 로딩을 적용한 상황을 생각해보자. 그럼 게시글을 조회했을 때, 아직 댓글은 안받아오니까 댓글을 proxy 객체로 가지고 있다. 근데 만약 이 상황에서 댓글을 조회한.. 2024. 5. 5.
컴퓨터보안 Intro ~ Network1 요약 >> key 개수 - 대칭암호                   : N명일 때 N*(N-1) / 2 개의 key 필요 - 비대칭 암호 (공개키) : N명일 때 2N개 키가 필요 (공개키-개인키 쌍으로 N개 pairs) >> Access Control 3개 - ACM (표) - ACL - RBAC (계층화 됨) >> HASH의 특징 2개 - One way : pw를 함수에 넣어 해쉬값 생성은 쉽지만, 반대로 해쉬값 보고 pw 알아내긴 어렵다 - Collision-resistant : 같은 해쉬값을 가지는 PW1, PW2가 나올 수도 있긴 한데 매우 매우 어려움. >> HASH 보안 강화기법 2개 - 해시 해서 나온 값을 다시 해시함수로 돌린다. - salt : 임의의 문자열을 덧붙인다. ㄴ Salt 비트 수.. 2024. 4. 26.
컴퓨터보안 - 실습내용 간단 정리 (1) [1주차] 패스워드 크래킹>> 패스워드 크래킹 종류 - Brute-force cracking - Dictionary attacks - Pattern checking >> 패스워드 크래킹 도구  - Cain and Abel - John the Ripper - Hydra - ElcomSoft [2주차] 시저암호, 전치암호 크래킹>> 대칭키 암호의 분류 - 블록 암호 : 메시지를 특정한 크기의 블록으로 나누어 각각 암호화 - 스트림 암호 : 메시지를 비트/바이트 단위로 바로바로 암호화 >> 기본적인 암호 설계 기법 - 치환 암호(substitution cipher) : 각 문자를 다른 문자로 치환하여 암호화 ex) 시저 암호 (Caesar Cipher), 단일 치환 암호, 플레이페어(Playfair) 암호, .. 2024. 4. 25.
일반화학실험 - 밀도와 비중 * 밀도 = 단위 부피당 물질의 질량, 보통 고체 > 액체 > 기체 순으로 밀도가 크다. * 예외적으로 물은 액체보다 고체의 밀도가 작다. = 그 이유는 수소결합 때문. 수소결합이란, F O N 같이 전기음성도가 큰 원자의 비공유 전자쌍과 –COOH, -OH, -NH2 등과 같이 산성도가 큰 수소원자 사이에 발생하는 화학적 결합   * 비중 : 어떤 물질의 질량과 그 물질과 같은 부피를 가진 표준 물질의 질량 비율비중 = 물체의 질량 / 표준물질의 질량 = 물체의 밀도 / 표준질의 밀도 * 표준 물질 : 고체, 액체 = 1 atm, 4도씨 물 / 기체 = 1atm, 0도씨 공기비중인 상대적인 값이라 단위가 없다. * 좋은 볍씨 고르기 : 소금물에 넣어서 물에 뜨는 것은 쭉정이, 가라앉은 것이 속이 꽉찬 .. 2024. 4. 25.
일반화학실험 - 화학 반응과 화학 반응식 * 화학 반응과 화학 반응식 = 화학 반응 : 하나 또는 여러 물질이(H2, O2) 하나 이상의 새로운 물질로 변화(H2O) = 화학 반응식 : 화학적인 기호들을 이용해 화학 반응을 표시한 식 2H2 + O2 -> 2H2O * 화학 반응의 형태 * 산화 환원 반응 = 산화 : 산소와 결합해서 수소가 떨어져 나감. 산화수가 증가한 것 (전자수의 감소) = 환원 : 산소와 분리해 수소와 결합함. 산화수가 감소한 것 (전자수의 증가) * 산화 환원 반응의 형태 = 결합 반응 : A + B → C = 분해 반응 : C → A + B = 치환 반응 : A + BC → AC + B (1) 수소치환 , (2) 금속 치환 , (3) 할로겐 치환 * 금속의 이온화 경향 = 금속이 전자를 잃고 양이온이 되려는 성질 = K.. 2024. 4. 25.