오블완 9

[JavaScript] jQuery

jQuery는 JavaScript를 간단하고 효율적으로 작성할 수 있게 도와주는 JavaScript 라이브러리이다. 특징간결한 코드: 복잡한 JavaScript 코드를 몇 줄로 대체 가능DOM 조작: HTML 요소를 쉽게 선택하고 조작이벤트 처리: 브라우저 간 차이 없이 클릭, 입력 등의 이벤트를 처리AJAX: 비동기 요청을 간편하게 처리크로스브라우징 지원: 다양한 브라우저에서 동일하게 동작기본 문법$() 로 요소 선택$('#id') // id$('.class') // class$('tag') // 태그 DOM 조작$('#example').text('새로운 텍스트'); // 텍스트 변경$('.example').css('color', 'red'); // CSS 스타일 변경 이벤트 처리$('#button')..

JavaScript 2024.11.17

[JavaScript] 정규식

정규식(Regular Expressions)은 문자열 패턴을 정의하는 도구로, 문자열 검색, 매칭, 추출, 치환 등 다양한 작업에 활용된다. 1. 정규식의 기본 구조1-1. 정규식 리터럴슬래시( / )로 감싸서 정의한다const regex = /abc/ 1-2. RegExp 객체new RegExp() 를 사용하여 동적으로 정규식을 생성한다const regex = new RegExp('abc'); // 'abc'라는 문자열을 찾는 정규식 2. 정규식의 주요 기능2-1. 매칭 (검색)정규식을 사용하여 문자열에서 특정 패턴을 검색한다const regex = /hello/;const str = 'hello world'console.log(regex.test(str)); // true 2-2. 문자열 추출정규식을..

JavaScript 2024.11.16

[JavaScript] 정규식으로 소수점 자리수 제한하기

1. 정규식으로 소수점 자리수 제한const regex = /^\d+(\.\d{1,2})?$/^\d+ : 숫자로 시작(\.\d{1,2})? : 소수점 이하 1~2자리 (선택적)$ : 끝validateDecimal(input) { const regex = /^\d+(\.\d{1,2})?$/; return regex.test(input);}// test examplevalidateDecimal('123'); // truevalidateDecimal('123.45'); // truevalidateDecimal('123.456'); // falsevalidateDecimal('abc'); // false 2. 동적으로 정규식 생성하기createRegex(decimalPlaces) { return..

[Java] 순환참조

순환참조객체나 클래스가 서로를 참조하는 상황이 계속 순환되는 구조를 말한다.예를 들어, 클래스 A 가 클래스 B 를 참조하고, 클래스 B 도 다시 클래스 A 를 참조하게 되면, 두 클래스가 서로를 필요로 하게 되어 순환 참조가 발생한다.예를 들어보면,1. 클래스 간 순환 참조class A { private B b; public A(B b) { this.b = b; }}class B { private A a; public B(A a) { this.a = a; }} 여기서 A 와 B 는 서로를 생성자에서 참조하므로, A 를 생성하려면 B 가 먼저 필요하고, B 를 생성하려면 A 가 필요하다. 이 때문에 객체를 생성하는 과정에서 무한 루프가 생기거나 ..

Java/기본 2024.11.14

[Java] @NoArgsConstructor, @AllArgsConstructor

Lombok 생성자 어노테이션 @NoArgsConstructor 과 @AllArgsConstructor@NoArgsConstructor@NoArgsConstructor 는 매개변수가 없는 기본 생성자(default constructor)를 생성한다. 필드를 초기화하지 않고 객체를 생성할 때 유용하다. 예를 들어, Spring과 같은 프레임워크에서 빈(Bean)으로 객체를 등록할 때 자주 사용된다.import lombok.NoArgsConstructor;@NoArgsConstructorpublic class Example { private String name; private int age;} 위 코드는 Example 클래스에 매개변수가 없는 기본 생성자를 추가한다. new Example() ..

Java/기본 2024.11.12

[Java] 트랜잭션

Java에서 트랜잭션(Transaction)은 데이터베이스 상태를 관리하기 위한 중요한 개념이다. 트랜잭션은 여러 작업을 하나의 논리적인 작업 단위로 묶어주며, 모든 작업이 성공해야지만 전체 작업이 커밋(commit)되고, 중간에 하나라도 실패하면 롤백하여 데이터의 일관성을 유지한다. 1. 트랜잭션의 ACID 속성원자성(Atomicity) : 트랜잭션 내 모든 작업이 하나의 단위로 실행되어야 하며, 일부만 성공하거나 실패해서는 안된다. 즉, 증간에 오류가 발생하면 트랜잭션 전체가 롤백된다.일관성(Consistency) : 트랜잭션이 완료되면 데이터베이스가 일관된 상태를 유지해야 한다.고립성(Isolation) : 트랜잭션 간 서로 독립적으로 실행되며, 트랜잭션이 완료되기 전까지 다른 트랜잭션이 중간 상태..

Java/기본 2024.11.11

[JavaScript] this

JavaScript의 this 키워드: 스코프에 따른 동작 방식JavaScript에서 this 는 함수가 호출되는 방식에 따라 가리키는 대상이 달라지는 동적 바인딩 키워드다. 상황에 따라 this 의 참조가 바뀌기 때문에 정확한 동작 방식을 이해하는 것이 좋다 1. 전역전역에서 사용될 때, this 는 전역 객체를 참조한다.브라우저 환경에서는 window 객체, Node.js 환경에서는 global 객체를 가리킨다console.log(this) // 브라우저에서는 window, Node.js에서는 global 2. 메서드객체의 메서드에서 this 는 해당 메서드가 속한 객체를 참조한다즉, 메서드가 호출될 때만 this 는 해당 객체를 참조하므로, 호출 위치가 중요하다const person = { n..

JavaScript 2024.11.10

[Python] enumerate

enumerate 함수enumerate 는 파이썬에서 반복 가능한 객체(리스트, 튜플 등)를 인덱스와 함께 반복할 수 있게 도와주는 내장 함수이다.보통 for 문과 함께 사용하며, 반복할 때마다 현재 인덱스와 요소를 동시에 가져올 수 있다 기본 문법for index, value in enumerate(iterable, start=0): # 반복문 내용iterable: 반복할 대상 객체 (예: 리스트, 문자열, 튜플 등)start: 인덱스 시작 값을 지정하는 매개변수로, 기본값은 0이다예제 1리스트 요소와 인덱스를 함께 출력하기fruits = ["apple", "banana", "cherry"]for index, fruit in enumerate(fruits): print(index, fruit..

Python/기본 2024.11.09

[Java] Future

Future란 무엇인가?비동기 작업의 결과를 나중에 받을 수 있는 객체인 Future 는 Java의 java.util.concurrent 패키지에서 제공된다.작업이 완료될 때까지 기다리지 않고 다른 작업을 할 수 있으며, 완료되면 결과를 받을 수 있는 유연성을 제공한다. 사용 예시데이터베이스 조회, 원격 API 호출과 같은 시간이 오래 걸리는 작업을 비동기 처리할 때 유용하다 특징비동기 실행 : 작업이 백그라운드에서 실행된다결과 대기 : 완료될 때까지 기다리지 않고, 작업이 끝난 후 결과를 가져온다작업 상태 확인 : 작업이 완료되었는지, 취소되었는지 확인이 가능하다Future의 주요 메서드Future 는 여러 메서드를 통해 비동기 작업을 관리한다get() : 작업이 완료딜 때까지 기다렸다가 결과를 반환한..

Java/기본 2024.11.08