728x90

spring 9

(ProfitKey) @Value와 yml 사용하여 환경변수 값 설정하기

일단 내 프로젝트 환경은 yml 파일이 개발 환경마다 나뉘어 있다.(공통 / 로컬 / 데브 etc)로컬과 데브로 나뉘어진 yml 파일에 각각 넣어줘야한다. **여기서 주의할 점 콜론 앞까지의 변수명이 똑같아야함logout-redirect-uri 처음에 생각없이 logout-redirect-uri-local / logout-redirect-uri-dev 이런식으로 했다가 아예 @Value 주입이 안되어버렸음  터미널에도 저 값 주입해준다 1. 터미널 환경변수 편집기 들가기sudo vi ~/.zshrc i 키 눌러서 insert 가능하게 만들고 내가 설정한 변수 ${}값과 데이터가 들어갈 수 있게 해준다 uri 값 자체는 마스킹 처리로 올리겠음export COM_SOCIAL_LOGOUT_LOC_REDIREC..

프로젝트 2025.03.22

[Spring Boot]Open api 데이터 용량 초과로 인한 불러오기 실패 문제 해결법

❗️ 오류사항open api에서 json값을 (인증키포함링크) 받아 spring boot 내에서 파싱해서 mysql db에 적재하는 작업을 하던 중  Error fetching and saving data: could not execute statement [Data truncation: Data too long for column 'INTRCN_CN' at row 1] [insert into Animal 이런 오류가 떴다. 대충 보면 데이터의 길이가 너무 길어서 DB 테이블 내에 들어가질 못하는 것 같았다.  아마 이런식으로 내용들이 길어서  varchar(255)로 담을 수 없어서 생긴 모양이다.📌 해결 실패한 방법1. varchar(1000)까지 늘려보기@Column(length = 늘릴 값) 으..

Coding/Spring(Boot) 2024.07.10

[Spring Boot] Mac에서 H2 database 연결하기 (STS4)

📌 H2 database란?H2 데이터베이스는 주로 개발 환경에서 사용하는 자바 기반의 경량 DBMS이다.개발 시에는 H2 데이터베이스를 사용하여 빠르게 개발하고 실제 운영 시스템에는 좀 더 규모 있는 DBMS(MySQL, 오라클 DB, MS SQL 등)를 사용하는 것이 일반적이다. H2 db를 사용하기 위해선 STS에 H2 데이터베이스를 연결하기 위헤서는 build.gradle과 application.properties 설정을 해줘야 한다.📑 build.gradleruntimeOnly 'com.h2database:h2' dependencies에 상단 코드를 추가한다. 📄 application.properties src/main/resources에 들어있는 application.properties에..

Coding/Spring(Boot) 2024.06.20

[Spring]MVC 프로젝트 생성 및 설정

(이전에 썼던 MVC프로젝트를 기반으로 새 프로젝트를 만드는 거라 필요한 내용들은 이전 플젝 소스를 좀 가져다 썼다) MVC 프로젝트를 새로 생성하려면 일단  오른쪽 클릭을 하여 New - other 에 들어간다 그리고 spring을 검색하면 나오는 Spring Legacy Project 클릭 누르고 Spring MVC Project 클릭 필자는 com.spring.hello2 라고 작성해주었다(여기는 패키지생성에 쓸 것을 적는 것이다.)  이렇게 생성한 후에 프로젝트에 오른쪽 키를 눌러 Properties에 들어가 바꿔주어야 할 설정이 있다.  [Java Compiler]아마 들어가면 Use compliance from~~~여기가 체크되어 있을텐데 이걸 풀어준다그러면 밑에 Compiler complia..

Coding/Spring(Boot) 2024.06.18

[Spring] 이클립스/STS3 Lombok 다운로드 (MacOS)

Lombok이란?Lombok은 자바 언어에서 반복적으로 작성해야하는 코드를 자동으로 생성해주는 라이브러리.Getter, Setter, Constructor, toString 등의 메소드를 자동으로 생성하여 개발자가 직접 작성하지 않아도 되도록 도와준다.              Lombok을 사용하기 위해서는 라이브러리를 프로젝트에 추가해야 한다.Lombok 어노테이션 종류Lombok은 다양한 어노테이션을 제공한다. 하단 참고 ,,,,,@Getter: Getter 메소드 생성@Setter: Setter 메소드 생성@ToString: toString 메소드 생성@EqualsAndHashCode: equals, hashCode 메소드 생성@Data: Getter, Setter, equals, hashCode,..

Coding/Spring(Boot) 2024.06.14

[Spring]회원 웹 기능 - 조회

여기서 회원 목록을 눌러 회원리스트를 조회하는 법을 다룬다.일단 회원 가입에 들어가서 이름에 spring1, spring2를 등록해보자. 그런 다음 회원 목록에 들어가면이렇게 등록했던 이름이 회원리스트에 저장되고 조회할 수 있게 된다. memberList.html${members}를 통해 객체를 꺼내 member에 담고 id와 name을 출력하는 구조이다.  아래의 getter/setter 방법으로 접근해서 값을 가져와서 출력해주는 원리이다. 페이지 소스보기를 해보면 저렇게 받아온 값이 코드로 성공적으로 렌더링되어 있는 것을 확인할 수 있다. MemberController.java 등록된 회원을 조회할 수 있는 컨트롤러member를 받아 "members/memberList"에 반환해준다.

Coding/Spring(Boot) 2024.06.11

[Spring]회원 웹 기능 - 등록

페이지 틀을 위한 HTML코드 //home.html  //createMemberForm.html 여기서 이 코드를 보자. name="name"이 post로 name 데이터를 넘겨주고 스프링이 하단의 setName으로 값을 넘겨준다.그럼 getName으로 값을 꺼낼 수 있다.(여기서 name은 private String name의 값.) 기능 구현을 위한 Controller (및 자바코드) //MemberForm.java member 객체 생성을 위해 name을 선언 후 getter/ setter를 해준다.  //MemberController.java member객체 생성. return "redirect:/";는 홈화면으로 보내는 코드  createMemberForm.html에 있는 이 코드는 name에 ..

Coding/Spring(Boot) 2024.06.11

[Spring]DI(의존성 주입)와 Bean

DI란? = Dependency Injection (의존성 주입)- 객체 의존관계를 외부에서 넣어주는 것 = 의존성 주입- Controller에서 객체 사용 시, new 키워드를 통해 컨트롤러에서 직접 생성 x => 스프링 컨테이너에 생성된 객체를 받아 사용- 코드의 재사용성 증가, 코드의 유지보수성 향상, 객체 간의 결합도 감소, 단위 테스트 용이성 증가라는 장점을 가짐 컴포넌트 스캔 방식- @Component 애노테이션이 있으면 스프링 빈으로 자동 등록- @Controller 컨트롤러가 스프링 빈으로 자동 등록된 이유도 컴포넌트 스캔때문- @Component를 포함하는 애노테이션도 스프링 빈으로 자동 등록   (@Controller, @Service, @Repository)  회원 컨트롤러에 의존관계..

Coding/Spring(Boot) 2024.06.10