목록workspace/server_application (122)
HwangHub
자바에서 조건에 따른 코드의 실행 흐름을 제어하려면 '조건문'을 사용해야 합니다. 이번 글에서는 자바의 대표적인 조건문인 if와 switch에 대해 좀 더 자세히 알아보도록 하겠습니다. if 조건문 if 조건문은 가장 기본적인 조건문으로, 주어진 조건이 참(true)일 때만 특정 코드 블럭을 실행합니다. 이는 else if와 else와 함께 사용하여 여러 개의 조건을 체크하고, 각 조건에 따라 다른 코드를 실행할 수 있습니다. 여기서 조건식은 boolean 타입의 값을 반환하는 논리식이 사용됩니다. if (조건식1) { // 조건식1이 참일 때 실행될 코드 } else if (조건식2) { // 조건식1이 거짓이고 조건식2가 참일 때 실행될 코드 } else { // 모든 조건이 거짓일 때..
자바에는 다양한 연산자들이 있습니다. 그 중에서도 오늘은 비트 비교연산자에 대해 이야기해볼까 합니다. 비트연산자는 |, &, ^, ~, , >>> 등이 있습니다. 이들은 각각 OR, AND, XOR, NOT, left shift, signed right shift, unsigned right shift 연산을 수행합니다. 이번 글에서는 이들 중에서도 |와 & 연산자에 대해 좀 더 자세히 알아보겠습니다. 비트 OR 연산자 (|) 비트 OR 연산자 (|)는 두 비트 중 하나라도 1이 있으면 결과는 1이 됩니다. 이 연산자는 논리 OR 연산자 (||)와 비슷해 보일 수 있지만, 중요한 차이가 있습니다. 논리 OR 연산자는 앞의 피연산자가 true일 경우 뒤의 피연산자를 평가하지 않습니다. 이를 "short-c..
이번엔 자바에서의 변수에 대해 자세히 알아보려 합니다. 변수는 자바에서 데이터를 저장하고 관리하는 데 중요한 역할을 합니다. 이 글을 통해 변수의 종류와 활용법에 대해 이해하시고, 실제 코딩에서 더 효율적으로 활용하시기 바랍니다. 변수란? 변수는 자바에서 메모리 공간에 값(value)를 할당하여 데이터를 활용할 수 있도록 도와주는 도구입니다. 이를 통해 우리는 데이터를 저장하고, 읽고, 변형하는 데 사용됩니다. 변수는 크게 기본형(primitive type)과 참조형(reference type) 두 가지로 구분합니다. 기본형 변수 기본형 변수는 타입에 따라 정해진 크기의 메모리 공간을 할당받고, 그 공간에 '값'을 직접 저장합니다. 기본형 변수는 다음과 같이 8가지가 있습니다. boolean (1byte..
자바에서는 기본형 변수외에 참조형 변수를 활용할 때 'pass by value'라는 용어를 사용하곤 합니다. 그러나 이 'pass by value'는 기본형 변수를 전달할 때의 'pass by value'와는 다소 차이가 있습니다. 기본형 변수를 'pass by value'로 전달할 때는 변수의 실제 값이 복사되어 전달됩니다. 그러나 참조형 변수를 'pass by value'로 전달할 때는 변수가 참조하고 있는 객체의 주소(참조 값)가 복사되어 전달됩니다. 즉, 이 경우 'value'는 참조 '값'이며, 이 참조 값이 복사되어 전달되는 것이기 때문에 여전히 'pass by value'라는 용..
웹은 지속적으로 발전하며 그에 따라 웹 표준도 끊임없이 발전하고 있습니다. 그러한 발전의 일환으로 HTML5에서는 시맨틱 태그라는 새로운 개념이 도입되었습니다. 그렇다면, 시맨틱 태그가 등장한 배경은 무엇이었을까요? 그리고 이들 시맨틱 태그는 각각 어떤 의미를 가지고 있을까요? 시맨틱 태그의 등장 시맨틱(semantic)이란 '의미'를 뜻합니다. 즉, 시맨틱 태그는 웹 페이지의 구조를 명확하게 설명하는 역할을 합니다. 기존의 HTML에서는 , 등의 태그를 사용하여 웹 페이지를 구성했습니다. 아직까지도 많은 웹 페이지가 남발된 태그로 구성되어 있습니다. 하지만 이런 태그들은 구조적인 의미를 가지지 않아, 웹 페이지의 각 문단의 의미를 파악하기 어렵게 만들고, 유지보수성을 저하시킵니다. 그래서 HTML5에서..
우리는 타이핑을 하면서 수 많은 엔터를 입력한다. 근데 Enter 입력 표현은 OS마다 다르다는 사실... 놀랍게도 나는 몰랐다. (컴퓨터의 세상을 넓고도 험악하다.) 걍 나중에 혹시 또 기억 안나면 보려고 간단하게 적어둔다. 리눅스 계열은 \r (캐리지 리턴)만 윈도우는 \r\n (캐리지 리턴 + 라인 피드(=뉴라인)) 둘다 한줄평 아, 그래서 맨날 git bash에서 찡얼거렸구나
외부, 내부, 인라인 적용 스타일이 존재할 때, 인라인 > 내부 > 외부 순으로 스타일 적용 우선순위를 가진다. 외부 스타일시트 : head 태그 안에
절대 경로 file system : "드라이브부터" 파일이 있는 실제 경로를 모두 표현 (file:///C:/SSAFY/work-front/saffy.png) network : "프로토콜, 도메인부터" 파일이 있는 실제 경로를 모두 표현 (https://www.naver.com/blah/blah) 상대 경로 특정 경로를 기준으로 파일이 있는 relative한 위치를 표현 ("./ssffy.png") .. 상위 ./ 현재(생략 가능) /fdsa 하위 경로 ~: file:///C:/Users/{현재 유저}/와 동일한 의미 웹 주소는 브라우저에 표시되는 도메인 주소가 기준임. (중요) 예를 들어 https://naver.com:8080/context-path/path1/path2 가 있다고 할 때, 상대 경로..
컴퓨터는 기본적으로 0과 1로 이루어진 이진 데이터를 처리합니다. 이러한 이진 데이터를 사람이 이해할 수 있는 문자로 변환하기 위해 인코딩이 사용됩니다. 아스키부터 유니코드까지 컴퓨터 인코딩의 역사는 미국에서 컴퓨터를 개발하면서 시작되었습니다. 처음에는 간단한 영어 문자를 숫자로 변환하는 아스키(ASCII) 코드가 사용되었습니다. 아스키 코드는 7비트로 표현되는데, 이는 128개의 다른 문자를 표현할 수 있음을 의미합니다. 이는 대소문자 알파벳, 숫자, 일부 특수 문자를 포함합니다. 그러나, 아스키 코드로는 다양한 언어와 특수 기호를 모두 표현할 수 없었습니다. 이를 해결하기 위해 아스키 코드를 확장하여 국제 규격에 맞게 일부 특수 기호들(pound 등)을 추가한 인코딩 코드인 ISO-8859-1이 등장..
앞으로 싸피에서 myBatis를 공부할 예정인데, 지금까지는 Spring의 대표적인 ORM인 JPA에 대해서만 사용해 왔기 때문에 이와 관련된 간단한 궁금증이 생겼다. 이에 따라 간단하게 짚고 넘어가려 한다. myBatis는 SQL Mapper이고 JPA는 ORM기술이다. (즉, myBatis는 ORM이 아니다. 둘은 차이가 있다.) SQL Mapper 쿼리의 실행결과를 미리 지정하여 두고 이를 객체로 매핑하는 기술을 말한다. 즉, 쿼리를 개발자가 직접 작성해야 한다. ORM 쿼리를 개발자가 직접 작성하지 않아도 ORM에서 객체를 해석하여 쿼리를 생성해준다. (복잡한 쿼리가 필요한 경우에는 직접 작성하는 경우도 있음) ORM은 객체지향 언어와 관계형 데이터베이스 간의 패러다임 갭을 해소하고자 등장한 기술..