java (3) 썸네일형 리스트형 JDK 동적 프록시, CGLIB Spring 프레임워크를 사용하면서 @Transactional, @Async 과 같은 기능들을 자주 접하게 됩니다. 이런 기능들은 개발자가 직접 작성한 코드 바깥에서 실행되는 부가 기능을 자동으로 적용해주는 역할을 하고 개발자가 개발에만 집중 할 수 있게 도와준다.그런데 이게 어떻게 가능한 걸까?그 핵심에는 프록시(Proxy) 라는 기술이 있다. Spring은 개발자가 작성한 원본 객체를 직접 사용하는 것이 아니라, 그 객체를 감싸는 프록시 객체를 만들어서 그 안에 부가기능을 끼워 넣는 방식으로 동작합니다.이때 Spring이 사용하는 두 가지 대표적인 프록시 기술이 바로 JDK 동적프록시, CGLIB(Code Generation Library) 입니다.오늘은 이 2가지 기술에 대해서 간단하게 정리해보겠습.. 리플렉션을 쓰기 전에 생각해야 하는 것들 Spring을 공부하면서 자주 마주치는 개념 중 하나가 바로 리플렉션 입니다.그동안 "클래스 정보를 다룰 수 있다"는 정도로만 알고 있었지만, 실제로 어떤 기능을 하고 어떻게 활용되는지는 다소 추상적으로 느껴졌습니다. 이번 기회에 리플렉션에 개념을 보다 명확하게 정리하고, Spring 내부에서 어떻게 사용되는지를 이해해보기 위해 이 글을 작성하게 됬습니다. 리플렉션 (Reflection)?자바 프로그램이 실행 중에 클래스의 메타정보(클래스 이름, 필드, 메서드 등)를 조회하고,심지어 수정하거나 호출까지 할 수 있는 기능을 말합니다.즉, 컴파일 타임이 아닌 런타임에 어떤 객체의 구조를 알 수 있고, 해당 객체에 동적으로 접근하거나 조작할 수 있습니다. 리플렉션으로 할 수 있는 일들리플렉션은 클.. Render에 무료로 JAVA + SPRING BOOT 서버 올리기 랜더 사이트 주소https://render.com Cloud Application Hosting for Developers | RenderRender is a unified cloud to build and run all your apps and websites with free TLS certificates, global CDN, private networks and auto deploys from Git.render.com 서버에 배포할 프로젝트를 만들어준다⚒️ 환경 셋팅GradleJava 17Spring Boot 3.2.5Spring WebLombok 다운로드 받은 파일의 압축을 해제하고해제한 폴더의 build.gradle 파일을 클릭하고 프로젝트 Open을 해준다.프로젝트 배포이후에 제대로 응답.. 이전 1 다음