분류 전체보기 269

[jpa] 영속성컨텍스트1

JPA의 개념에 대해 익숙지 않아 인강을 들으면서 정리를 진행하고 있습니다. 하지만 낯선 개념들이 많아 개인적으로 정리하고 이해하려고 하지만 잘못 이해하고 정리한 부분들이 존재할 수 있다고 생각됩니다. 만약 잘못된 부분이 있다면 언제든지 댓글 남겨 주시면 바로 반영하도록 하겠습니다. Words 영속성: "entity"를 연구저장하는 환경 EntityManager.persist(entity) 앞에 이야기한 persist는 사실 db에 insert를 직접 시키는 쿼리문이 아니라고 합니다. persist를 통해 특정한 중간 공간에 저장하고 commit 시에 실제 insert가 이루어 집니다. 준영속, 삭제 // 회원 엔터티를 영속성 컨텍스트에서 분리, 준영속 상태 em.detach(user); // 객체를 삭..

CS 2021.12.07

[Windows]윈도우 시간 동기화(부팅시 윈도우 시간이 자동동기화가 안될 시)

윈도우 포맷 이후 설정을 다르게 해줬는지 윈도우 부팅 시 매번 시간을 수동으로 동기화 시켜 주어야 하더군요. 그래서 방법을 찾아 보았습니다. 부팅 시 윈도우 시간 자동 동기화 하기 service.msc 실행 (windows + R) windows Time 실행. 시작유형 _자동_으로 변경 Windows키 + R -> services.msc 로 서비스 실행 -> Windows Time 찾아 실행 수동 -> 자동으로 변경 이렇게 설정하면 윈도우 재부팅 시 시간이 자동으로 잡히는 것을 볼 수 있습니다.

OS/Windows 2021.12.06

# [JPA] JPQL의 기본적 정의와 간단한 사용법

앞서 한 내용에서는 기본적인 crud에 대해 알게 되었습니다 하지만 JPA를 사용하여 조건을 붙여 사용할 경우 어떻게 진행할까요? 이때 JPA에서 제공하는 언어가 JPQL입니다. JPQL이란? SQL을 추상화한 객체 지향 쿼리 언어로 테이블이 아닌 객체를 대상으로 검색하는 객체 지향 쿼리 입니다. 왜? JPA 를 사용하면 엔터티 객체를 중심으로 개발을 합니다. 이때 검색 쿼리가 문제가 됩니다. 모든 데이터를 객체로 변환해서 검색하는 것은 불가능하기 때문입니다. 따라서 application이 필요한 데이터만 DB에서 불러오려면 결국 검색 조건이 포함된 SQL이 필요합니다. 특징 SQL을 추상화해서 특정 데이터베이스 SQL에 의존하지 않습니다. JPQL을 한마디로 정의하면 객체 지향 SQL 입니다. SQL과..

CS 2021.11.30

[JPA] jpa 기본 및 간단하게 사용해보기

JPA 기초와 매핑 @Entity : JPA가 관리할 객체라는것을 알려줍니다(class 위에 선언) @Id : DB PK와 매핑 할 필드를 지칭합니다(field 위에 선언) EntityManager EntityManagerFactory: application 로딩 시점에 딱 하나만 존재해야합니다. EntityManger: transaction 마다 생성해 주어야 합니다. persistence.xml hibernate option 설정 은 아래와 같이 sql을 보여주게 하는 설정입니다. Hibernate: /* insert hellojpa.User */ insert into User (name, id) values (?, ?) 은 가독성을 위해 들여쓰기 및 줄바꿈 등을 해서 보여주게 하는 옵션입니다. 은 ..

CS 2021.11.26

[JPA] jpa 프로젝트 생성 시 유의사항

intro 인프런의 김영한님의 강의를 듣는 중 정리하면서 체크해야할 부분들이 많아 따로 강의 과정 중 필요한 부분들을 정리해 보기로 했습니다. 잘못된 부분이나 보충할 부분이 있다면 언제든지 댓글로 남겨주시면 최대한 빨리 반영하도록 하겠습니다. project 생성하기 dependency 설정 hibernate의 어떤 버전을 사용해야할까? h2 버전은? hibernate 버전 설정 프로젝트를 생성한 후 hibernate의 버전을 설정하려면 본인이 사용하고 있는 spirngBoot의 버전을 알고 있어야 합니다. spring.io -> Projects -> 해당하는 버전의 Reference Doc. 를 클릭하여 해당 버전의 document를 확인해 봅니다. 그 후 a single HTML page를 클릭해서 한..

CS 2021.11.23

[javascript]Serialize시킬 시 주의할 점

의 데이터를 보내기 위해 serialize를 하는 과정에서 특정한 값들이 자꾸 빠져서 넘어가길래 오랜시간 삽질을 했습니다. 다음부터는 삽질을 하지 않기 위해 간략하게 오늘 한 삽질에 대해 정리하려고 합니다. Serialize 시 disabled는 적용이 되지 않음. 제목 그대로 .serializeObject()혹은serializeArray() 처럼 데이터를 직렬화 시킬 경우 해당 태그에 disabled 속성이 존재하면 serialize에 포함되지 않습니다. 만약 client쪽에서 값 출력이 잘 되는데 server쪽에서 값이 넘어오지 않는다면 serialize 시 값이 누락된 것을 의심해 보시는것을 추천합니다. 막상 작성하니 글이 상당히 짧네요. 저처럼 이렇게 쉬운 경우에 반나절을 허비하시지 않으시면 좋겠..

[Git]Git push 시 username과 userpass를 물어볼 시

예전에 한번 이런 경우가 발생해 검색 후 해결했었습니다. 그 때 당시에는 별 생각없이 해결하고 넘어갔었는데 또다시 이런 경우가 발생하여... 기록에 남기려고 합니다. 역시 기억력은 믿을게 못되나 봅니다. 상태 위의 사진처럼 git remote -v 명령어 입력 시 https:// 주소로 되어 있을 시 git push 할 경우 Username과 Userpass를 묻는것으로 확인됩니다. 따라서 ssh를 등록한 후 (git ssh 등록 링크) 아래처럼 해당 repository의 Clone -> SSH의 주소를 복사합니다. git remote 재설정하기 git remote set-url origin git@github.com:username/repo.git // 예시 git remote set-url origi..

Tools 2021.11.22

[전자정부]Egov(전자정부프레임)에서 ajax로 data 요청하기

Before we go 현재 egov 전자정부 프레임 워크 프로젝트를 진행중에 있습니다. 그러다 ajax로 data를 요청하여 값을 받기로 했는데 @ResponseBody를 주어 request를 보내면 String을 제외한 나머지 data들은 500error, 404error를 내보내더군요. 그래서 저처럼 삽질하지 말고 egov에서 보통 @ResponseBody 대신 사용하는 방법에 대해 간략하게 알아보려고 합니다. Egov(jsonView) 결과적으로 egov에서 지원하는 data return 방식은 type을 String으로 통일하고 return 값을 "jsonView"로 작성하면 ajax의 success에서 값을 성공적으로 받게 됩니다. Controller @Controller @RequestMap..

Framework 2021.11.18

[jQuery]< 1.6 or + prop() vs attr()

Before we go 예전에 prop()와 attr()을 사용함에 있어 존재하는 차이점에 대해서 찾아본 적이 있습니다. 그런데 이번에 다시 사용하려고 하니 기억이 안나더군요. 그래서 후에 또다시 기억이 나지 않을 때 다시 볼 수 있도록 간략하게 정리하려 합니다. 버전에 따른 사용법 차이 jquery 1.6 이전 ​ 1.6버전 이전에는 attr()을 사용합니다. 이 때에는 property와 attribute가 구분되지 않는 형태로 결과값이 제공되었다고 합니다. jquery 1.6 이후 ​ 1.6버전 이후부터는 attr()은 속성 그 자체의 값을 반환하고 있으며, prop()는 속성값을 명시적으로 찾아낼 수 있는 방법을 제공합니다. https://api.jquery.com/attr/ As of jQuery..

[intellij] <Error> Intellij Cannot resolve symbol 오류

[Error] IntelliJ Cannot resolve symbol Befor we go 잘 실행되던 intelliJ의 프로젝트가 갑자기 빨간줄들이 그이면서 "Cannot resolve symbol..." error를 토해내기 시작했습니다. rebuil 후 재시작을 해 보았지만 해결되지 않더군요. 그래서 이것 저것 검색하다 시도한 해결방법들을 작성해 보겠습니다. Solution 프로젝트를 rebuild 합니다. 상단의 Build -> Rebuild Project를 선택합니다. 그 후 재시작. 캐시를 비워줍니다. 상단의 File -> Invalidate Caches ... 를 클릭합니다. 그 후 아래 이미지와 같이 선택 후 실행해 줍니다. Gradle을 Refresh 해줍니다. 상단의 View -> To..

Tools 2021.11.12
728x90
반응형