MyBatis XML — CDATA, #{}, ${}
·
🖥️ development
1. CDATA란?는 XML 파서가 내부 내용을 파싱하지 않고 순수 문자열로 처리하도록 감싸는 구문입니다. 왜 필요한가?MyBatis XML 매퍼는 XML 파일이기 때문에, >, & 같은 특수문자는 XML 태그로 오인될 수 있습니다. 10"> AND age > 10 가 XML 닫는 태그로 오인 --> 10"> 10 ]]> XML 특수문자 목록특수문자XML 의미SQL에서 사용 시태그 시작CDATA 또는 <>태그 끝CDATA 또는 >&엔티티 시작CDATA 또는 &"속성값 구분CDATA 또는 "'속성값 구분CDATA 또는 ' CDATA 사용 예시 SELECT * FROM users = #{minAge} AND sa..
RestTemplate - Java에서 HTTP 요청 보내기
·
🖥️ development/JAVA
1. RestTemplate이란?Spring 프로젝트에서 외부 API를 호출하거나 서버 간 통신을 할 때 가장 많이 사용되는 방법이 바로 RestTemplate입니다.RestTemplate은 Spring에서 제공하는 동기식 HTTP 클라이언트입니다.REST API 호출을 간편하게 처리할 수 있도록 다양한 메서드를 제공합니다.내 서버 → RestTemplate → 외부 API 서버 ← 응답 특징✅ Spring에서 기본 제공 (별도 의존성 불필요)✅ 사용법이 단순하고 직관적✅ 레거시 프로젝트에서 가장 많이 사용⚠️ Spring 5.0부터 유지보수 모드 (새 기능 추가 없음)⚠️ 동기 방식 (응답이 올 때까지 스레드 블로킹)유지보수 모드란?버그 수정은 하지만 새로운 기능은..
Oracle Synonym(시노님)
·
🖥️ development
1. Synonym이란?Synonym(시노님) 은 Oracle DB에서 테이블, 뷰, 시퀀스, 프로시저 등 다양한 객체에 별명(Alias)을 붙이는 기능입니다.쉽게 말해, 실제 객체 이름 대신 내가 원하는 이름으로 접근할 수 있게 해주는 별명표 같은 개념입니다.실제 객체: HR.EMPLOYEES시노님: EMP ← 이걸로 접근 가능 2. Synonym을 사용하는 이유2-1) 다른 스키마 객체에 간편하게 접근다른 스키마의 테이블을 참조할 때 원래는 스키마명.테이블명 형식으로 써야 합니다.-- 시노님 없이SELECT * FROM HR.EMPLOYEES;SELECT * FROM SCOTT.DEPT;-- 시노님 사용 후SELECT * FROM EMP; -- HR.EMPLOYEES를 가리키는 시노님SEL..
[ SQL ] REGEXP_LIKE 정리
·
🖥️ development/SQL
SQL에서 LIKE는 단순한 패턴 매칭만 가능하지만,REGEXP_LIKE를 사용하면 정규식(Regular Expression)을 활용한 강력한 패턴 매칭이 가능합니다.1. REGEXP_LIKE란?REGEXP_LIKE는 정규식(Regular Expression)을 사용해 문자열 패턴을 검색하는 SQL 함수입니다.Oracle, MySQL 8.0+, MariaDB 등에서 지원합니다.기존 LIKE 연산자보다 훨씬 복잡하고 정교한 패턴 검색이 가능합니다.LIKE vs REGEXP_LIKE 비교항목LIKEREGEXP_LIKE패턴 표현%, _ 만 사용정규식 전체 사용 가능복잡한 패턴어려움✅ 가능대소문자 구분DB 설정 따름옵션으로 제어 가능성능빠름상대적으로 느림가독성단순복잡하지만 강력 2. 기본 문법-- OracleR..
내장 Tomcat vs 외부 Tomcat
·
🖥️ development
1. 내장 Tomcat vs 외부 Tomcat 이란?내장 Tomcat (Embedded Tomcat)Spring Boot가 기본으로 제공하는 방식입니다.Tomcat이 애플리케이션 JAR 안에 포함되어 있어,별도의 서버 설치 없이 java -jar 한 줄로 실행됩니다.[app.jar] ├── 내 코드 ├── 라이브러리 └── Tomcat ← JAR 안에 포함외부 Tomcat (External Tomcat)Tomcat을 서버에 별도로 설치하고,빌드된 WAR 파일을 Tomcat의 webapps/ 폴더에 올려서 실행하는 방식입니다.[외부 Tomcat 서버] └── webapps/ └── app.war ← 여기에 배포 2. 구조 비교항목내장 Tomcat외부 TomcatTomcat 위치JAR 안..
JAR vs WAR 정리
·
🖥️ development/JAVA
1. JAR와 WAR는 Maven 전용이 아니다먼저 흔한 오해를 하나 짚고 넘어갑니다.JAR/WAR는 Java의 패키징 포맷이고, Maven은 이를 만드는 빌드 도구 중 하나입니다.Gradle, Ant 등 다른 빌드 도구로도 동일하게 생성할 수 있습니다.빌드 도구명령어결과물Mavenmvn package.jar / .warGradlegradle build.jar / .war 2. JAR (Java ARchive)개념JAR는 Java 클래스 파일, 리소스, 라이브러리를 하나로 묶은 아카이브 파일입니다.Spring Boot에서는 내장 Tomcat까지 포함한 Executable JAR 형태로 많이 사용합니다.즉, JAR 파일 하나만 있으면 별도의 서버 설치 없이 바로 실행이 가능합니다. 내부 구조app.jar├..