본문 바로가기

Java116

[iBatis] iBatis란? 동적태그, 사용예제 Java 애플리케이션에서 SQL 쿼리와 객체를 매핑할 때 다양한 ORM이나, 프레임워크를 사용한다. iBatis는 MyBatis의 이전이름이다. SQL 중심의 매핑 프레임워크로,  SQL 쿼리를 직접 작성하고 그 SQL을 자바 객체 간의 매핑을 자동으로 처리하는데 도움을 주고,개발자가 SQL을 완전히 제어하면서도 객체와의 매핑을 자동화하여 코드의 생산성과 유지보수성을 높여준다. iBatis는 ORM의 기능을 제공하지만, Hibernate와 같은 전통적인 ORM 프레임워크와는 조금 다른 접근 방식을 취한다.그렇다면 iBatis는 ORM이 맞다,아니다 라는 표현들 중 어떤것이 맞을까?iBatis vs 전통적인 ORM일단 iBatis가 ORM으로 분류되는 이유는, 객체와 관계형 데이터베이스 간의 매핑을 처리하.. 2025. 3. 5.
[Spring Boot] 공통 response 포맷 만들기 프로젝트 진행 중, 백엔드에서 프론트엔드로 response를 보내줄 때ResponseEntity가 아닌, 공통된 response 포맷을 만들어서 사용하면 좋겠다라는 피드백을 받았다. 공통 response DTO를 만들어서 사용하면 어떤 이점을 가져갈 수 있을까? 장점일관된 응답 구조모든 API 응답에 동일한 구조를 제공하여 프론트 측에서 데이터를 처리하기 쉽다.유지보수 용이성응답 구조가 변경되어도, 공통 response DTO만 수정하면 모든 관련 API의 응답 구조가 동시에 업데이트 된다.코드를 수정해야 할 범위가 좁아지고, 변경이 쉽다.재사용성 증가제네릭 타입을 로 사용하면, 다양한 타입과 함께 사용할 수 있다.사용 SuccessResponse.java@Getter@Builderpublic clas.. 2024. 11. 21.
[Spring Boot / JPA] QueryDSL 개념, 사용법 그리고 사용예제 새로운 팀 프로젝트를 진행하며, QueryDSL을 사용해보기로 하였다.QueryDSL 의 개념부터 사용방법까지 알아보자. QueryDSL이란?Java 기반의 타입 안전한 쿼리 빌더 라이브러리이다.JPA와 함께 사용되며, JPQL을 대체하여 더 직관적이고 가독성 높은 쿼리 작성이 가능하다.JPQL(Java Persistence Query Language)보다 가독성이 좋고 유지보수가 쉬운 쿼리를 작성할 수 있다.QueryDSL 말고도 JPQL이라는 개념이 있는데, 이 기술도 데이터베이스 쿼리를 작성할 떄 사용된다.간단하게 특징을 알아보자. JPQL 특징문자열 기반 쿼리JPQL은 쿼리를 문자열로 작성한다. SQL과 유사한 구문을 사용하지만, 객체 중심의 쿼리로 JPA 엔티티를 대상으로 한다.비교적 직관적인 .. 2024. 11. 20.
[React] - 실시간 채팅 기능 구현(3) - React로 프론트단 코드 작성 사실 이 프로젝트를 진행하면서 React를 처음 써보았다.AI에 많이 의존하기도 했고, 부족한 부분이 많아서 프로젝트를 하나 더 진행하면서 더 익히고,리액트에 관한 포스팅도 해야겠다는 생각이 들었다. 보시는 분들도 좋은 코드는 아니니 많이 참고는 하지 마시고, 흐름 위주로 보셔도 좋을 것 같다. 프론트 - 백 연결setupProxy.jsconst { createProxyMiddleware } = require('http-proxy-middleware');module.exports = function (app) { app.use( '/api', createProxyMiddleware({ target: 'http://localhost:8080/api', .. 2024. 11. 14.