반응형

전체 글 1103

[macOS] 맥북 오라클 데이터베이스(Oracle Database) 설치

🛠️ 맥북에 오라클 설치하기1. Colima 설치$ brew install colima   2. Docker 설치$ brew install docker   3. Colima 실행$ colima start --memory 4 --arch x86_64   4. Oracle 컨테이너 Run$ docker run -e ORACLE_PASSWORD=1234 -p 1521:1521 -d gvenzl/oracle-xe   5. Oracle 컨테이너 실행상태 확인$ docker ps   6. Oracle 컨테이너 이름 변경[5. Oracle 컨테이너 실행상태 확인]에서 실행한 스크립트 결과의 NAMES를 확인하여 아래 스크립트를 실행한다.$ docker rename {현재컨테이너이름} {변경할이름}Ex)$ docke..

IT 2025.01.20

[Java] 접근제어자

☕️ 접근제어자(Access Modifier) 란?접근 제어자는 자바 제어자의 한 종류로, 클래스, 멤버, 생성자 앞에 위치할 수 있으며, 사용 범위를 제한하는 역할을 한다.접근 제어자는 public, protected, private이 있으며 아무것도 서술하지 않으면 적용되는 default가 있다.멤버 및 생성자에는 4가지 종류 모두 사용이 가능하며, Class에는 public과 default만 사용 가능하다.   ☕️ 클래스의 접근제어자클래스에서는 public과 default 접근 제어자만 사용할 수 있다.쉽게 말해 class 키워드 앞에 public이 붙어 있거나 붙어 있지 않거나로 구분된다.// public 접근제어자public class PublicClass {}// default 접근제어자cl..

IT 2025.01.20

[Nginx] 오류 페이지 설정

🚨 이슈사항웹 서버의 기본 오류 페이지에는 웹 서버의 종류를 알 수 있는 정보를 포함하고 있다.이는 또 다른 공격의 빌미가 될 수 있으므로, 기본 오류 페이지가 아닌 별도의 오류 페이지로 제공하는 것이 좋다.   🚨 해결방안custom_error.html이라는 별도의 오류 페이지를 만들었다고 가정하에, Nginx의 설정을 다음과 같이 변경한다.server { ... error_page 400 403 404 405 406 411 497 500 501 502 503 504 505 /custom_error.html; location = /custom_error.html { root /home/user/nginx/html; } ...}

IT 2025.01.20

[Mybatis] Oracle java.sql.SQLException: 부적합한 열 유형: 1111

🐛 오류 현상Request processing failed; nested exception is org.springframework.jdbc.UncategorizedSQLException: Error setting null for parameter #1 with JdbcType OTHER . Try setting a different JdbcType for this parameter or a different jdbcTypeForNull configuration property. Cause: java.sql.SQLException: 부적합한 열 유형: 1111위의 오류 문구가 발생하는 케이스는 다양하다.데이터 타입이 다른 경우Map을 파라미터로 넘겼을 때 해당 맵안에 파라미터가 null인 경우... I..

IT 2025.01.20

[GoF] 디자인 패턴이란?

🏁 GoF(Gang of Four)란?이 분야의 4인방(Gang of Four, 줄여 GoF)의 의미로 소프트웨어 설계에 있어 공통된 문제들에 대한 표준적인 해법과 작명법을 제안한 "Design Patterns" 책의 저자들을 지칭한다.4인방은 에릭 감마(Erich Gamma), 리처드 헬름(Richard Helm), 랄프 존슨(Ralph Johnson), 존 블리시데스(John Vlissides)이며 이들은 여러 가지 문제에 대한 설계 사례를 분석하여 서로 비슷한 문제를 해결하기 위한 설계들을 분류하고, 각 문제 유형별로 가장 적합한 설계를 일반화해 패턴으로 정립하였다.   🏁 GoF 디자인 패턴의 유형GoF(Gang of Four)에서는 23가지 디자인 패턴을 다음의 3가지 유형으로 분류한다.생성..

IT 2025.01.20

[Java] String, StringBuffer, StringBuilder 차이

☕️ String, StringBuffer, StringBuilder 정의String- StringBuffer, StringBuilder 와의 가장 큰 차이점은 String은 불변(immutable)의 속성을 갖는다는 점이다.- String 클래스를 통해 변경 연산을 자주 사용할 경우, 힙 메모리에 많은 가비지(Garbage)가 생성되어 힙 메모리 부족으로 이어질 수 있다.- String도 불변성을 가지기 때문에 멀티스레드 환경에서의 thread-safe 하다.- JDK 1.5 버전 이후부터, String의 + 연산은 컴파일 시에 StringBuilder를 사용하도록 자동변환되어 성능 최적화가 이뤄진다. (단, 항상 변환되는 것은 아니므로 상황에 따라서 StringBuffer 혹은 StringBuilde..

IT 2025.01.20

[Java] 클래스, 객체, 인스턴스 차이

☕️ 클래스, 객체, 인스턴스의 정의클래스(Class)- 클래스란 객체를 정의하고 만들어 내기 위한 설계도 혹은 틀을 말한다.- 클래스는 변수와 메서드로 구성되어 있다.객체(Object)- 클래스로 구현할 모든 대상을 가리킨다.- OOP의 관점에서 클래스의 타입으로 선언되었을 때, '객체'라고 부른다.인스턴스(Instance)- 설계도를 바탕으로 소프트웨어 세계에 구현된 구체적인 실체를 일컫는다.- OOP의 관점에서 객체가 메모리에 할당되어 실제 사용될 때, '인스턴스'라고 부른다.  ☕️ 코드 예시/* 클래스 */class Student { // ...}public class 클래스_객체_인스턴스 { public static void main(String[] args) { ..

IT 2025.01.20

[Java] 객체지향의 5대 원칙 - SOLID

☕️ 객체 지향 설계 5원칙 - SOLIDSOLID란 객체 지향 프로그래밍을 하면서 지켜야 하는 5대 원칙을 뜻한다. SOLID는 각 5가지 원칙의 앞 글자를 따서 부르는 이름으로 5가지 원칙은 다음과 같다.SRP(Single Responsibility Principle) - 단일 책임 원칙OCP(Open Closed Principle) - 개방 폐쇄 원칙LSP(Liskov Substitution Principle) - 리스코프 치환 원칙ISP(Interface Segregation Principle) - 인터페이스 분리 원칙DIP(Dependency Inversion Principle) - 의존 역전 원칙SOLID 원칙을 철저히 지키면 시간이 지나도 변경이 용이하고, 유지보수와 확장이 쉬운 소프트웨어를..

IT 2025.01.20

[Java] 객체지향의 4대 특징 - 캡슐화, 추상화, 상속, 다형성

☕️ 캡슐화연관된 데이터(변수)와 기능(메소드)을 하나로 묶고, 불필요한 요소를 외부에 노출되지 않도록 설계하는 방식을 뜻한다. 자바에서는 접근 제어자(public, private, default, protected)를 통해 캡슐화를 구현할 수 있다.class Student { private int id; private String name; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { ..

IT 2025.01.20
반응형