GitHub

https://github.com/Backcoder-June

BackCoder 기록 그리고 숙달

분류 전체보기 171

MultiThread - 몇 명이든 내가 처리한다.

멀티쓰레드. 서버, Traffic 을 관리하는데 핵심이 되는 기능이다. 일단 이 기능 또한, WAS 형님이 제공해 주는 기능임을 되새기며. ( Sevlet Container ) Thread. CPU 듀얼코어 4Thread 할 때의 그 놈이다. 두뇌인 Core 가 Thread 를 하나 실행하고, 다음 걸 실행하는 식이다. 이 Thread 가 바로 API 코드를 실행시키는 역할을 하는 놈이다. Java 에서 main 메소드를 실행시키면 => main 전담 Thread 가 붙어서 실행시켜 준다. main 이 실행되는 과정처럼, 한줄한줄씩, 한번에 하나씩만, 순차적으로 실행시켜 준다. (Thread가 그렇게 일하도록 설계되어 있다.) 서버에서, 즉 WAS 에서 이 Thread 는 client 요청이 들어오면 S..

Back to the Spring 2022.06.11

Servlet 서블릿 등장 , http? 내가 다 연결해줄게!

4차 산업의 시대, AI 의 시대를 살아가고 있는 우리다. 급격한 변화들이 휙휙 지나가고 있는 와중에도 "Web" 의 세계에선 지금도 모든것이 HTTP 로 시작해 HTTP 로 끝난다. HTML, Text, Image 등 모든 형태의 Data 들은 결국 HTTP 의 손, HTTP 메세지를 거쳐 주고 받아진다. Https:// 에 주소를 입력하고 1초도 걸리지않아 나오는 화면. 하지만 그 찰나에 HTTP 메세지가 오고가는 과정은 생각보다 복잡했다. ---------------------- ( 소켓을 연결하고, HTTP 요청 메세지를 파싱하고, HTTP body 메세지를 파싱하고, data를 사용할 수 있게끔 파싱하고, 저장프로세스를 실행하고 ... ) 드디어 c..

Back to the Spring 2022.06.11

DB/RDBMS/NON RDB/ORM/SQL/DDL /DML/DCL/ 기초개념

- 의미있고 연관된 데이터 모음 집합체 1. Data 영구적 보관 가능 2. 미리 약속된 Data 저장규칙 => 그 룰만 알면 된다. ex. name - String/3글자까지/null 3. 한번에 여러 프로그램이 동시접근 가능 ( 공유 ) DB - 데이터 저장 공간 자체 DBMS - 데이터 저장/삭제/크기지정/타입지정 등 => DB 관리 역할을 해주는 프로그램 (ex. ORACLE/ MySQL 은 DBMS 다. ) 계층형 구조 DBMS 네트워크형 구조 DBMS -------------------- Deprecated ------------------ 1. RDBMS (관계형 DBMS) (Relational DBMS - RDB 라고도 불..

Lombok 롬복이 누구니?

1. Lombok 롬복이는 누구인가 - Code 를 간소화 시켜주는 Library , ( 코드 이쁘게 만들어주는 도구 ) - @ Annotation 을 사용한다. - 여러 필수 코드들의 반복 최소화 - Logging 기능을 제공 : Program 수행과정을 기록으로 남기는 것 ( Println으로 찍어보지말고, log 로 찍어본다.) (블랙박스) 2. Lombok 설치 - Lombok Library 추가 => Build.gradle compileOnly 'org.projectlombok:lombok' annotationProcessor 'org.projectlombok:lombok' + plugin 추가 (Setting 에서 plugins 검색해서 Lombok 설치) + enable 설정 (annotat..

Back to the Spring 2022.06.10

Math.random() 메소드 이용한 디아블로 전투

Math.radom() - 게임쪽 개발에서는 거의 핵심이라 할 정도로 중요한 메소드가 아닐까 생각이 든다. 데미지 수치, 아이템 획득 확률 수치도 이 random 메소드를 활용해서 if 문으로 if( 0.000002 > Math.random()) { 아이템을 주도록 하지 } 이런식으로 확률 수치도 어느정도 만들 수 있을 것 같다. + ( Math.random 과 유사한 기능 ) java.util.Random 클래스 Random r1 = new Random( ); r1.nextInt( ); => 정수(무제한) r1.nextInt( 100 ); => 정수 (0=1){ System.out.println("현재 "+enemy.name+"의 남은 hp : "+ enemy.hp);} els..

Back to the Java 2022.06.09

한글 깨짐 Tomcat? Java11? mustache!

Project 연습해 보는 중, Tomcat 서버에 올리는 의 한글이 ??? 로 깨지는 현상이 발생했다. 구글링을 해보니 공통적인 해결책 : Encoding 방식 통일 1. 설정 - Encoding - UTF-8 로 완전 통일 (Global Encoding, Project Encoding, Default Encoding) 2. Help - edit VM options -Dfile.encoding=UTF-8 -Dconsole.encoding=UTF-8 추가하기 3. Edit configuration - Tomcat server - VM options -Dfile.encoding=UTF-8 추가하기 ( Tomcat server 는 Configuration 에 보이지 않아서 이것도 검색해보니, 깔아야 한다. ..

Back to the Spring 2022.06.07

Programming 관련 기본 Acronym 용어들

JWT - JSON Web Token CSR - Client Side Rendering - client 컴퓨터가 HTML rendering 해서 화면으로 뿌리는 것 SSR - Server Side Rendering UX - User Experience WSL - Windows Subsystem for Linux PSA - Portable Service Abstraction PK - Primary Key JAR - Java ARchive WAR - Web application ARchive JPA - Java Persistence Api JPQL - Java Persistence Query Language JDBC - Java DB Connectivity ORM - Object Relational Mapp..

카테고리 없음 2022.05.30

Back to the Java - Static

static -> method / variables class cal { int a; int b; static int c; => 다 접근 가능. 대신, instance 로(c1.) 꺼내써야함 void sum(){ a + b } (o) 가장 평범 void sum(){ c } (o) c1.sum(a + b + c) (o) => Static 은 끼리끼리만 논다. 대신 직접 꺼낼수 있다. static void sum(){ a + b } (x) int a, b (x) static void sum(){ c } (o) static int c (o) calcul.(static)sum ( c ) (o) calcul.(static)sum ( a ) (x) c1.(static)sum (x)

Back to the Java 2022.05.27