Language 23

JDBC, SQL Mapper, ORM

4월30일자 인프라스터디에서 나온 주제 정리 예, 일반적으로 SQL 매퍼 프레임워크를 사용하려면 JDBC가 있어야 합니다. JDBC는 관계형 데이터베이스와 상호 작용하기 위한 표준 Java API로, 데이터베이스에 연결하고, 데이터베이스에 SQL 문을 전송하고, 결과를 검색하기 위한 인터페이스 및 클래스 집합을 제공합니다. SQL 매퍼 프레임워크는 JDBC를 기반으로 구축되어 Java 코드로 SQL 문을 작성하는 작업을 간소화하기 위한 추가 기능을 제공합니다. 일반적으로 개발자는 이 프레임워크를 사용하여 Java 코드에서 SQL 문을 하드코딩하는 대신 외부 XML 또는 주석 기반 파일에서 SQL 쿼리를 정의할 수 있습니다. 그러면 SQL 매퍼 프레임워크가 SQL 문을 생성하고 JDBC를 사용하여 데이터베..

Language/JAVA 2023.05.01

Broadcast Channel API

Broadcast Channel API 동일 origin의 브라우저 context 간 통신을 하게 해주는 API이다. 탭, 윈도우, 프레임, iframe 그리고 Web worker 간에 통신이 가능하다는데 소켓 같기도 하고 신기하다. 코드를 보면 정말 방송 송출 - 구독 개념으로 만들어놨다. 탭끼리 같은 이벤트나 변수를 사용해야한다면 (같은 계정 간 자동로그아웃 등) 밑의 것들도 쓸 수 있다고 한다. Service Worker postMessage Sender const channel = new BroadcastChannel("example-channel"); const messageControl = document.querySelector("#message"); const broadcastMessage..

Language/JavaScript 2023.04.19

Emoji 삭제

⚠️ 이슈 Emoji 저장 실패 오류 Emoji 저장 실패 오류 에러 현상 Incorrect string value: '\xF0\x9F\x93\xB201...' for column 'content' 에러 이유 윈도우 이모지(utf8mb4)와 DB(utf8)의 문자 인코딩 설정 상이 MySQL DB collation MariaDB에서 table을 생성할 때 c idleday.tistory.com ✅ 해결 In detail, this function first uses TextEncoder to convert content into a byte array with utf-8 encoding, then loops through this array, if it finds a byte whose first fiv..

Language/JavaScript 2023.04.14

[iBATIS/MyBATIS] 반환(Return)결과

MyBatis - 기본적으로 쿼리실행 후 row 개수 반환 - insert, update, delete에는 resultType 없음 - insert할 때에도 update() 함수를 호출하여 성공, 실패 여부 확인 가능 - 성공 : 1 반환 ( 다중 INSERT도 1) - 실패 : 0 반환 - 성공 : UPDATE된 행의 갯수 (없으면 0) - 실패 : 0 반환 - 성공 : DELETE된 행의 갯수 (없으면 0) - 실패 : 0 반환 - 성공 : SELECT문에 해당하는 결과 - 실패 : 에러 iBatis - insert태그의 경우 결과가 Object 로 넘어오기 때문에 java에서 int형으로 결과를 받을 경우 null을 return 하게 된다. 따라서 insert시에도 update() 함수를 호출하여 ..

Language/Spring 2022.12.23

[iBATIS/MyBATIS] MyBatis 개념

정의 - MyBatis는 자바 퍼시스턴스 프레임워크의 하나로, XML 서술자나 애노테이션을 사용하여 저장 프로시저나 SQL 문으로 객체들을 매핑시킨다. - 예전에는 iBatis라고 불리었으며 현재는 iBatis와 MyBatis는 완전히 다른 기능을 한다. - 응용 프로그램 계층(자바) 퍼시스턴스 계층(중간 계층) 데이터베이스 계층(오라클) - 중간 계층 기술 중 하나이다.(JDBC, MyBatis, JPA, Hibernate, Spring JDBC .. 등) - MyBatis는 SQL 구문을 XML파일에서 작성 장점 더보기 . ibatis / mybatis는 xml파일에서 자유롭게 쿼리 작성이 가능해서 편리 1. 빠른 개발(생산성) - 가독성, 유지보수 용이 DBCP만을 썼을 때는 - Connection..

Language/Spring 2022.12.23

[MyBatis] CDATA

MyBatis – 마이바티스 3 | 소개 마이바티스는 무엇인가? 마이바티스는 개발자가 지정한 SQL, 저장프로시저 그리고 몇가지 고급 매핑을 지원하는 퍼시스턴스 프레임워크이다. 마이바티스는 JDBC로 처리하는 상당부분의 코드와 mybatis.org MyBatis MyBatis는 개발자가 지정한 SQL, 저장프로시저 매핑을 지원하는 SQL 매퍼(Mapper) 프레임워크이다. JDBC로 처리하는 상당부분의 코드와 파라미터 설정 및 결과 매핑을 대신해준다. DB에 원시타입, Map 인터페이스, 자바 POJO를 설정해서 매핑하기 위해 XML과 애노테이션을 사용할 수 있다. SQL을 XML 파일에 작성한다. 클래스나 JSP처럼 코드 안에 작성하는 방식보다 SQL 변환이 유연하고 가독성이 좋다. [CDATA[.....

Language/Spring 2022.12.16