전체 글 169

[ JAVA ] - 파일 작업하기 (파일 읽기)

파일 작업하기 (파일 읽기) HTML 삽입 미리보기할 수 없는 소스 MessageFormat 경우 데이터를 일정한 형식으로 출력할 수 있게 도와주는 클래스이다. 예를 들어 아래의 코드의 경우 data.txt 파일을 불러와서 "INSER INTO VALUES ({0}, {1}, {2}, {3})"의 {0}, {1}, {2}, {3}의 위치에 데이터가 들어간 형태로 출력하여 준다. public class MessageFormatEx551 { public static void main(String[] args) throws Exception { String tableName ="USER_INFO"; String fileName = "data.txt"; String msg = "INSERT INTO " + ta..

JAVA 2023.05.11

[ JAVA ] - 커스텀 어노테이션 만드는 법

어노테이션 (:annotation) annotation은 사전적으로는 주석의 의미를 가지며, 프로그래밍 관점에서 어노테이션은 코드에 대한 부가 정보를 제공하는 메타 데이터이라고 할 수 있다. 어노테이션을 통하여 코드에 대한 설명과 컴파일러 명령 등을 표현할 수 있다. 이를 통해 개발자는 더욱 편리하고 가독성 높은 개발이 가능한다. 예를 들어 자바에서 흔하게 사용되는 @Override 어노테이션이 붙은 메서드는 상위 클래스나 인터페이스로부터 상속 받은 메서드를 오버라이딩하고 있음을 컴파일러에게 미리 알리는 역할을 수행하여 하위클래스에서 오버라이딩 하려 할 때 메서드 명 등을 잘못하여 정의한 경우에도 컴파일러가 알아서 경고메시지를 표시하여 줌으로써 개발자는 에러를 방지할 수 있다. 또한 @Deprecated..

JAVA 2023.05.06

[ ERROR ] - nested exception is org.springframework.http.converter.HttpMessageConversionException: Type definition error

nested exception is org.springframework.http.converter.HttpMessageConversionException: Type definition error: com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot construct instance of `com.example.springBootJoinAndLogin.registration.dao.RegistrationRequest` (no Creators, like default constructor, exist): cannot deserialize from Object value (no delegate- or property-based Creat..

ERROR 2023.05.03

[ Spring Boot ] - HTTP 요청 관련 어노테이션

HTTP 요청 관련 어노테이션 종류 1. @RequestMapping: HTTP 요청(request)을 처리하는 어노테이션이다. @RequestMapping의 경우 기본적으로 GET, POST, PUT, DELETE 등 모든 HTTP 메소드에 대한 요청을 처리하며, 인자에 값을 주어 특정 메서드의 요청만 받아 들이도록 설정할 수 도 있다. 2. @GetMapping: HTTP GET 요청(request)을 처리하는 어노테이션이다. 3. @PostMapping: HTTP POST 요청(request)을 처리하는 어노테이션이다. 4. @PutMapping: HTTP PUT 요청(request)을 처리하는 어노테이션이다. 5. @DeleteMapping: HTTP DELETE 요청(request)을 처리하는..

JAVA/Spring Boot 2023.04.29

[ JPA ] -JPA 기본 및 영속성 컨텍스트란? (feat: hibernate)

영속성컨텍스트란? 일종의 메모리 저장소로 EntityManager가 Entity 를 추적 관리하는 보관함 기본적으로 영속성이란 사전적으로 영원히 계속되는 성질이나 능력을 의미한다. 데이터 관점에서 영속성은 데이터베이스 등 물리적인 저장소에 데이터를 저장하고, 저장된 데이터는 영속적으로 저장되는 것을 의미한다. 즉 영속성컨텍스트란 애플리케이션과 데이터베이스 사이에 존재하며 엔티티를 영구 저장하는 환경을 뜻하는 것이다. 예를 들어 어플리케이션에서 사용자 정보를 데이터베이스에 저장하기 위해서는 데이터베이스에 접근하기 이전에 반드시 영속성컨텍스트를 거치게 된다. ) 객체와 테이블의 관계 * JDBC(:Java Database Connectivity) : 자바 어플리케이션에서 데이터베이스에 접근할 수 있는 인터페..

카테고리 없음 2023.04.23

[ React ] - react-query 사용하기

1. 라이브러리 추가 # npm > npm i react-query # yarn > yarn add react-query 2. App.tsx 설정 react-query를 전역에서 사용할 수 있도록 하기 위해 App컴포넌트를 provider로 감싸준다. App.tsx import React from "react"; import "./App.css"; import Home from "./pages/Home"; import { QueryClientProvider, queryClient } from "react-query"; function App() { // const queryClient = new QueryClient({ defaultOptions: {}, }); return ( ); } export de..

Javascript/React 2023.03.01

[ Error ] -스프링 부트 관련 에러

애플리케이션 실행 후 java.sql.sqlrecoverableexception: listener refused the connection with the following error: 이와 같은 에러 나는 경우 application.properties에서 spring.datasource.url의 설정이 잘 못 되어 있을 수 있다. 터미널에 lsnctrl 치고 서비스명 확인한 후에 jdbc:oracle:thin:@localhost:1521/[서비스명] org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name~~ Bean이 만들어 지지 않아서 발생하는 에러이다. JPA의 경우 각 메서드명에 따..

ERROR 2023.02.23

spock 사용법(테스트 코드 작성)

Spock를 활용한 테스트 코드 작성 HTML 삽입 미리보기할 수 없는 소스 1. 마우스 오른쪽 build.gradle 파일에서 Generate... - Add dependency... 클릭하면 아래와 같은 창이 나오는데 거기에 org.spockframework.spock를 검색 후 spock-core 찾고 testImplementation으로 변경해준 후 Add를 클릭한 후 2.3-groovy-3.0으로 선택하여 추가해준다 또한 위와 같이 org.cordhaus.groovy를 검색하여 testImplementation 'org.codehaus.groovy:groovy:3.0.0'도 추가. spock는 groovy를 사용하기 때문에 plugin groovy도 추가해준다. 다시 마우스 오른쪽 Genera..

JAVA/Spring Boot 2023.02.23

gradle.properties 파일 설정하기

gradle.properties 파일은 gradle을 사용한 프로젝트 전체에 적용하는 설정에 대한 정보를 담은 파일이다. gradle.properties 파일을 .gradle 경로의 하위에 위치시키면 된다. .gradle 폴더의 위치는 intellij의 Preferences - Build, Execution, Deployment - Build tools - Gradle 을 선택 시 아래와 같이 나오는데 여기서 Gradle user home 의 우측에 있는 것이 .gradle 폴더의 경로이다. 해당 .gradle 폴더의 하위에 vi gradle.properties 명령어를 통해 gradle.properties 파일을 생성해 준 후 해당 파일에 필요한 설정 부분을 작성해 주면 된다. 예를 들어 아래와 같이 ..

JAVA/gradle 2023.02.18