스프링부트 14

[spring boot JPA] object references an unsaved transient instance - save the transient instance before flushing 오류 원인

"object references an unsaved transient instance - save the transient instance before flushing" 오류는 Hibernate 또는 JPA에서 발생하는 오류로, 영속성 컨텍스트에 저장되지 않은(transient) 엔티티를 다른 엔티티가 참조하고 있을 때 발생합니다. 이 경우, 영속성 컨텍스트는 참조한 엔티티를 올바르게 관리하지 못하므로 오류가 발생합니다. 이 오류를 해결하기 위해 다음을 확인하십시오: 연관 엔티티 저장: 먼저 연관 엔티티(Team)를 저장한 후, 메인 엔티티(Members)에 연관 엔티티를 설정하세요. 영속성 컨텍스트는 참조된 엔티티가 영속 상태로 저장되어 있어야 합니다. 원본 Members members = new M..

spring boot 와 JPA + mysql 사용한 두개 테이블 조인 Insert

프로젝트 구조 build.gradle buildscript { repositories { mavenCentral() } dependencies { classpath "gradle.plugin.com.ewerk.gradle.plugins:querydsl-plugin:1.0.10" } } plugins { id 'java' id 'war' id 'org.springframework.boot' version '2.7.14' id 'io.spring.dependency-management' version '1.1.2' id 'com.ewerk.gradle.plugins.querydsl' version '1.0.10' // Querydsl 플러그인 추가 } group = 'com.naya' version = '0..

IntelliJ 이용하여 스프링 부트 + JPA + Mysql 간단한 예제

JAVA 11 사용 build.gradle plugins { id 'java' id 'war' id 'org.springframework.boot' version '2.7.14' id 'io.spring.dependency-management' version '1.1.2' } group = 'com.naya' version = '0.0.1-SNAPSHOT' java { sourceCompatibility = '11' } configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring..

[인텔리제이 2020.3] 스프링 부트 + Java + thymeleaf 수정시 자동 리로드(새로고침) 방법 (최종)

Java 파일과 thymeleaf 템플릿 html 파일수정시 새로고침 없이 자동으로 리로드 되는 방법을 소개합니다. mac : cmd + shift +a window : ctrl + shift +a registry 검색 후 compiler.automake.allow.when.app.running 체크 setting > Build, Execution, Depoyment >Compiler Build project automatically 체크 resources > application.yml server: port: 8080 spring: datasource: driver-class-name: net.sf.log4jdbc.sql.jdbcapi.DriverSpy url: jdbc:log4jdbc:mysql:/..

intelliJ Springboot + MyBatis + MySQL 셋팅 및 연동(1)

목적 : 쇼핑몰 만들기 위한 기본적인 셋팅을 해본다. java 17 버전 사용 -> java 11 로 변경 java 11 로 변경 Selected Dependencies 항목을 모두 체크 해준다. build.gradle java 11 plugins { id 'java' id 'war' id 'org.springframework.boot' version '2.7.14' id 'io.spring.dependency-management' version '1.1.2' } group = 'com.naya' version = '0.0.1-SNAPSHOT' java { sourceCompatibility = '11' } configurations { compileOnly { extendsFrom annotationP..

[java] 인텔리제이 스프링부트 + 웹소켓 연결방법

Lombok 추가 프로젝트구조 build.gradle 스프링부트 버전을 2.6.1 로 해준다. sourceCompatibility 을 11 로 해준다. plugins { id 'java' id 'war' id 'org.springframework.boot' version '2.6.1' id 'io.spring.dependency-management' version '1.1.2' } group = 'com.example' version = '0.0.1-SNAPSHOT' java { sourceCompatibility = '11' } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boo..

intellij java11 + spring boot + 웹소켓 서버 (WebSocket Server) 구축

프로젝트 폴더(untitled1) 우측 마우스 클릭 Add Framework Supprot... 클릭 WebServices 체크 Apache Axis 변경 Spring MVC 체크 src/main/java 에서 패키지 생성 (kdh) .java Class 추가 ChatServer package kdh; import javax.websocket.*; import javax.websocket.server.ServerEndpoint; import java.io.IOException; import java.util.HashMap; import java.util.Map; @ServerEndpoint("/ws") public class ChatServer { private Map usernames = new Has..

spring boot application.properties 운영/개발 설정하기

목적 자동 배포시 운영서버 / 개발서버 각각 DB 설정 할수 있도록 하기 위해서... 설정은 아래와 같이 2가지 방법으로 설정한다. spring boot - application.properties 설정 tomcat - catalina.properties 설정 . spring boot 설정 방법 sprint boot 에서 설정 파일 이름은 아래와 같이 한다. 운영 : application.properties 개발 : application-dev.properties .tomcat 설정 방법 톰캣 설정은 아래와 같이 3가지 방법이 존재한다. 1. web.xml - active-profile 설정 spring.profiles.active prod 2. catalina.sh 설정 JAVA_OPTS="$JAVA_..

인텔리제이(intellij) 스프링 부트(spring boot) vue.js 연동 8080 포트 방법

인텔리제이(intellij) 스프링 부트(spring boot) vue.js 연동 8080 포트 방법 보통 백엔드서버 8081 프론트엔드 8081 두개의 서버를 가동하지만 본 문서에서는 백엔드 서버 8080 으로 연동하는 방법을 사용하고자 한다. 필요사항 intellij spring boot vue.js 백엔드 (spring boot) 설정 build.gradle plugins { id 'org.springframework.boot' version '2.5.6' id 'io.spring.dependency-management' version '1.0.11.RELEASE' id 'java' id "com.github.node-gradle.node" version "3.1.1" id 'war' } group..

프로그래밍/vue 2021.11.23

스프링부트(spring boot) mysql 연동시 log4j2 설정 gradle intellij

스프링 부트 사용시 기본 로그 spring-boot-starter-logging 제거해야 합니다. all { exclude group: 'org.springframework.boot', module: 'spring-boot-starter-logging' } build.gradle 에 log4j2 와 쿼리로그를 볼수 있도록 추가하겠습니다. build.gradle log4j2 추가 implementation 'org.springframework.boot:spring-boot-starter-log4j2' build.gradle 쿼리로그 추가 implementation 'org.bgee.log4jdbc-log4j2:log4jdbc-log4j2-jdbc4.1:1.16' build.gradle 전체 plugins ..