이 영역을 누르면 첫 페이지로 이동
개발다이어리 블로그의 첫 페이지로 이동

개발다이어리

페이지 맨 위로 올라가기

개발다이어리

저만의 개발일지를 만들어가는 공간입니다.

분류 전체보기

  • 개발다이어리
[JPA] 영속성 컨텍스트

[JPA] 영속성 컨텍스트

2022.02.01
JPA를 사용하기 위해서는 영속성 컨텍스트라는 것을 정확하게 이해 할 필요가 있다. 객체지향과 RDB와의 패러다임을 없애주는 요소이기도 하며 JPA의 내부가 어떻게 동작하는지 이해할 수 있는 방향이기도 하다. 먼저, 우리가 JPA에서 데이터를 저장할 때 사용하는 persist()는 정확하게는 데이터를 저장시키는 메소드가 아니다. public class JpaMain { public static void main(String[] args) { EntityManagerFactory emf = Persistence.createEntityManagerFactory("testUnit"); EntityManager em = emf.createEntityManager(); EntityTransaction tx = e..
[IntelliJ] 서버 재시작 없이 html수정하기

[IntelliJ] 서버 재시작 없이 html수정하기

2022.02.01
프로젝트에서 view단을 만지다보면 사소한 부분에서 생각보다 자주 수정이 발생하게 된다. 이럴때마다 서버를 재시작하는것은 약간... 귀찮다.. devtools라는 라이브러리를 사용해서 극복해보자. build.gradle에 **org.springframework.boot:spring-boot-devtools** 를 추가해서 라이브러리를 받는다. 서버를 재시작 한 후 소스를 띄어본다. 내용을 변경한 후 Build - Recompile ***.html 을 클릭한다. 변경된 내용 확인
[JPA] EntityManager

[JPA] EntityManager

2022.02.01
JPA는 기본적으로 persistence라는 클래스를 기반으로 동작한다. persistence-unit에 데이터베이스 연결이나 쿼리 로그 등의 설정들을 만들고 이 내용을 기반으로 EntityManagerFactory를 생성해서 사용하는 것이다. Persistence 간단하게 persistence.xml을 만들어보자 persistence-unit은 하나의 DB당 하나씩 생성해서 사용하면 된다. 위의 persistence-unit name="testUnit" 를 보면 여기서 설정한 persistence-unit의 이름이 "testUnit"이라는 것을 알 수 있다. 그리고 필요한 설정들을 해주면 되는데, 여기서는 h2데이터베이스를 사용하기 위한 설정 쿼리로그, sql로그 포맷 여부 등의 설정 들을 작성하였다...
[JPA] 프로젝트 생성

[JPA] 프로젝트 생성

2022.01.31
기본적인 환경은 IntelliJ Maven H2 를 사용하여 진행하도록 하겠다. 보통 프로젝트를 진행하게 되면 Spring Framework와 같이 사용하기 때문에 대부분의 필요한 작업들은 Spring이 자동으로 해준다. 하지만 이 포스팅에서는 JPA에서 어떤 동작들이 이루어지는지 자세하게 알기 위해서 순수 JPA만 동작하는 프로젝트를 만들어서 진행해보도록 하겠다. 우선 Maven기반의 프로젝트를 새로 생성한다. maven은 라이브러리를 관리해주는 도구이다. 이전에는 라이브러리를 직접 다운로드 받아서 사용했지만 maven을 사용한다면 라이브러리를 간단하게 가져올 수 있고 관련된 필요한것들을 자동으로 가져오고 관리해주기 때문에 편리하게 사용할 수 있다. 최근에는 gradle을 많이 사용하기도 해서 grad..
[JPA] JPA 알아보기

[JPA] JPA 알아보기

2022.01.31
들어가기에 앞서 우리가 개발을 하다보면 의아한점들을 느낄 수 있다. 언어도 객체지향이고 코드도 객체지향적으로 짜는데 DB와 매핑할려고보면 객체지향적인 코드가 나오지 않게된다. 이것은 우리가 사용하는 RDB와 객체지향과의 패러다임의 불일치에서 나오는 문제일 것이다. 일반적으로 RDB를 많이 사용하고있는데, RDB는 SQL로만 동작하는 시스템으로 객체라는 개념이 없다. 하지만 우리는 코드를 작성할 때 객체지향적으로 작성하고 이 코드로 가져오는 데이터들을 저장하기 위해서 RDB를 사용한다. 그래서 결국 DB에 맞게 코드를 다시 바꾸게 되는 것이다. 이런 방식으로 개발을 하다보면 어느샌가 SQL중심의 코딩을 하고있는 자신을 볼 수 있다. 똑같은 쿼리를 몇번이나 반복해서 작성하고 테이블에서 하나의 컬럼이 변경되면..
인터넷 통신(TCP와 IP)

인터넷 통신(TCP와 IP)

2021.12.14
서로 다른 두 단말기는 어떻게 통신을 하는걸까? 가까운 거리에 있다면 선을 연결해서 통신을 할 수도 있겠지만 현실은 멀리떨어진 단말기에 통신을 하는 경우가 더 많다. 멀리 떨어진 두 단말기는 통신을 위해서 인터넷을 이용한다. 그렇다면 인터넷을 이용해서 어떻게 통신을 하는걸까? 통신을 위해 필요한 것들이 정말 많이 있지만 기본적인 몇 가지만 알아보도록 하자. IP 프로토콜 기본적으로 우리가 사용하는 컴퓨터 또는 휴대폰 등의 기기에는 IP라는 통신을 위한 주소를 가지고 있다. 그렇기 때문에 목적지 IP만 있다면 멀리 떨어진 사람에게도 통신을 보낼 수 있을 것이다. 물론 주소가 있어도 간단하게 통신이 되지는 않는다. 도착지까지 가는 중간에 많은 서버들을 거쳐야 할 것이다. 대략 이런 그림으로 통신이 될 것이다..
  • 최신
    • 1
    • ···
    • 3
    • 4
    • 5
    • 6
  • 다음

정보

개발다이어리 블로그의 첫 페이지로 이동

개발다이어리

  • 개발다이어리의 첫 페이지로 이동

검색

메뉴

  • 홈
  • Github
  • 방명록

나의 외부 링크

카테고리

  • 분류 전체보기 (66)
    • Spring (19)
      • MVC (7)
      • Boot (3)
      • Core (8)
      • Security (1)
    • Java (1)
    • 네트워크 (7)
    • JPA (6)
    • IntelliJ (2)
    • Database (1)
      • h2 (1)
      • postgreSQL (0)
    • 토이 프로젝트 (5)
      • 여행일지작성 (5)
    • 에러모음 (7)
    • 테스트코드 (2)
    • Git (8)
    • Nginx (2)
    • AWS (1)
    • 책 리뷰 (1)
    • Kotlin (2)
    • 회고 (1)
      • 24년도 회고 (1)
    • API문서 (0)

최근 글

인기 글

댓글

공지사항

아카이브

태그

  • 네트워크 #TCP #IP #인터넷 통신
  • 연관관계 매핑
  • http 헤더
  • 단방향 매핑
  • 테스트코드 실행안됨
  • HTTP
  • HTTP상태코드
  • JPA

정보

ssung의 개발다이어리

개발다이어리

ssung

블로그 구독하기

  • 구독하기
  • RSS 피드

방문자

  • 전체 방문자
  • 오늘
  • 어제

티스토리

  • 티스토리 홈
  • 이 블로그 관리하기
  • 글쓰기
Powered by Tistory / Kakao. © ssung. Designed by Fraccino.

티스토리툴바