본문 바로가기

분류 전체보기

(351)
JPA JPA란 Java Persietence API의 약어로 자바 진영의 ORM 기술 표준이다. 표준 인터페이스이다. *ORM(Object-Relational Mapping)의 약자로 객체로 연결해준다는 의미이다. SQL언어가 아닌 개발언어로 데이터베이스를접근할 수 있게 해주는 툴이다. (스프링만큼 넓이와 깊이가 있는 기술이다... 망망대해 돛단배...) -JPA는 기존의 반복 코드는 물론이고, 기본적인 SQL도 JPA가 직접 만들어서 싱행해준다. - JPA를 사용하면, SQL과 데이터 중심의 설계에서 객체 중심의 설계로 패러다임을 전환할 수 있다. - JPA 를 사용하면 개발 생산성을 크게 높일 수 있다. @Override public List findAll() { List result; return em...
JdbcTemplate 3일동안 중복 예외 처리가 안돼서 db에 회원가입이 되지않았다.. 다시 강의보면서 계속 매달렸는데 알고보니 sql구문에서 매개변수 name을 "name"이라고 문자열로 엮는 바람에 중복된 객체가 있는지 확인하는 findByName에서 객체에서 확인되지않아 중복처리가 안되는거였다.... 그것도 모르고 sql문 놔두고 서비스클래스랑 db연동하는 클래스만 계속 다시 짰다... 이 작은 문제를 알아차리지 못해 시간을 버린거같아 너무 속상했지만 이 또한 경험치가 되기를....ㅎ @SpringBootTest : 스프링 컨테이너와 테스트를 함께 실행한다. @Transactional : 테스트케이스에 이 애노테이션이 있으면, 테스트 시작 전에 트랜잭션을 시작하고, 테스트 완료 후에 항상 롤백한다. 이렇게 하면 DB에 ..
순수 Jdbc 스프링부트가 지원하는 인메모리 관계형 데이터베이스인 H2 db 연결하기 h2의 장점으로는 따로 설치가 필요없는 아주 가벼운 웹용 로컬 DB이다! (설치 가이드는 쉽고 쉽게 설명된 다른 글들이 많으니 패스~) H2 연결 성공! insert into member(name) values("spring")라고 ""쓰면 에러.. 꼭 작은따옴표.. 오라클할 때 배웠는데도 실수하는 저란 사람 ㅠㅠㅠ 자바는 db연동을 하려면 jdbc가 꼭 있어야 한다. 의존성 추가한다음에 꼭 우측 상단 코끼리 눌러서 업로드 해주기! spring.datasource.url=jdbc:h2:tcp://localhost/~/test spring.datasource.driver-class-name=org.h2.Driver spring.data..
스프링 빈과 의존 관계 설정 외부 요청을 받는 Controller는 비즈니스 로직을 만드는 Service를 의존하고 Service는 데이터를 저장한 Repository를 의존한다. 이것이 기본적으로 정형화된 패턴이다. 스프링 빈을 등록하는 2가지 방법 -컴포넌트 스캔과 자동 의존관계 설정 -자바 코드로 직접 스프링 빈 연결 컴포넌트 스캔과 자동 의존관계 설정 @Component : 애노테이션이 있으면 스프링 빈으로 자동 등록된다. @Controller : 컨트롤러가 스프링 빈으로 자동 등록된 이유도 컴포넌트 스캔 때문이다. 컴포넌트를 포함하는 다음 애노테이션도 스프링 빈으로 자동 등록된다. @Controller @Service @Repository 스프링이 실행될때 컴포넌트 관련 애노테이션이 있다면 스프링이 객체로 생성시켜 스프링 ..
스프링 부트를 이용하여 웹을 개발하는 3가지 방법 Spring Boot는 간단하게 말하자면 스프링을 편리하게 사용할수있게 여러 기능들을 제공하는 툴이다. 거대한 스프링을 감싸고 있는 스프링부트는 기능들 또한 어마어마하게 많아서 일일이 모두 외우지 못한다. 그러므로 필요한걸 찾는 능력이 중요하다. *정식문서를 자주 봐주는게 좋다! 웹을 개발하는 방법은 기본적으로 세가지가 있다 첫번째는 서버 통신 없이 내가 만든 html 파일 그대로 웹 브라우저에 내려주는 정적 컨텐츠가 있다. 정적페이지 적어놓은 글을 그대로 읽어주는 정적페이지 package com.example.spring.Controller; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; imp..
강의 들으며 스프링 다시 시작! 수업때 스프링 수업을 들었지만 다시 혼자 해보려고 하니 부족함을 많이 느껴 강의를 결제하게 되었다! 스프링이란? java의 web frame work로 java 언어를 기반으로 java로 다양한 어플리케이션을 만들기 위한 프로그래밍 틀이다. 프로젝트를 진행하다 보면 중복 코드도 나오기 마련인데 spring은 이런 중복코드의 사용률을 줄여주고, 비즈니스 로직을 더 간단하게 해줄수있다. 스프링을 사용하면 다른 사람의 코드를 참조하여 쓰기 편리한데 이말의 의미는 오픈소스를 좀 더 효율적으로 가져다 쓰기 좋은 구조라는 것이다. 결론적으로 스프링이란 자바 기술들을 더 쉽게 사용할 수 있게 해주는 오픈소스 프레임 워크이다. 프레임 워크란? 프레임워크(Framework)는 말 그대로 '뼈대', '골격'이다. 집을 지..
로또 번호 추출해서 인생 한방 노리기 학원에서 팀 프로젝트가 끝나고 살짝의 방황과 정처기 실기 준비로 인해 코드와는 살짝쿵 멀어졌었는데 다시 스스로 과제를 주면서 다시금 하나하나 구현해나가는 재미를 오랜만에 느끼고 있는 요즘! 새롭게 게시판을 만들기 전 이클립스에서 인텔리제이로 넘어오면서 아직은 뭔가 낯설게 느껴져서 스프링을 하기전 간단한 프로그램 뭐 없나 생각하다가 학원 다닐때 만들었던 로또 출력했던 프로그램이 생각나서 다시 한번 구현해보았다. 그때는 조금 이해하지 못하고 서툰 느낌도 있었는데 확실히 이제는 더 완벽히 이해하고 만드는 느낌이라 더 재미있게 했던거 같다! (사실 이때도 재밌게 만들면서 다같이 각자 이 번호로 로또사서 당첨되면 내일부터 다 안나옵니다 하며 까불었지만 역시나 모두들 다음날에도 다같이 교실에서 만났다는...ㅋㅋㅋㅋ..
노트북 환경 세팅하기 깃과 이클립스 연동하기 팀프로젝트를 했을때는 부끄럽지만 팀의 스크럼 마스터 같은 분이 계셔서 내가 딱히 연결하지 않고도 연동해서 사용할 수 있었다. 하지만 지금 학원이 끝난 지금 혼자 깃과 내 노트북에 있던 이클립스를 깃에 연결해야하는데 찾아보니 그래도 어렵지 않게 금방 연결할 수 있었다. 다행다행ㅜㅜ (아 이클립스는 원래 깔려있었음!) 참고 사이트 : https://ddururiiiiiii.tistory.com/47 [Git-hub/Eclipse] 깃허브와 이클립스 연동하기 ( + 추가 및 수정) 개인적으로 공부한 코드들을 내 개인 깃허브에 차곡차곡 쌓기 위해 내가 사용하는 개발툴인 이클립스와 내 개인 깃허브를 연동해보려 한다. [전제사항] github(깃허브) 아이디가 있다. 이클립스를 ddururi..