Spring 110

[Android] "Module was compiled with an incompatible version of Kotlin. The binary version of its metadata is 1.5.1, expected version is 1.1.16" 오류 및 해결법

이 오류 또한 안드로이드 개발을 하면서 가장 많이 발생하는 오류 중에 하나이다. stackoverfolw에 구글링해보면 이 방법이 직방이다. build.gradle에 가서 ext.kotlin_version을 1.6.0으로 업그레이드시켜준다. 그다음 sync now를 누르면 완료! 여기서는 The binary version of its metadata is 1.5.1, expected version is 1.1.16" 이라고 되어있지만 숫자가 달라도 이 방법으로 해결 할 수 있다. 해결!

[Android] Can't determine type for tag '<macro name="m3_comp_bottom_app_bar_container_color">?attr/colorSurface</macro>' 오류 해결법

구루 어드바이저를 하면서 많이 나타나는 오류 중 하나이다. 주로 이런 형식으로 뜨는데 stack overflow에서 찾아보면 쉽게 해결 할 수 있다. 근데 이 문제를 해결하면 뒤에 다른 오류들이 또 있다는게 문제. build.gradle에 들어가서 material: 1.7.0으로 되어있는 문장을 찾아라 버전을 1.6.0으로 낮춰주고 수정했으니 sync now 눌러준다. 해결!

2.6 쿼리 메서드(Query Methods)기능과 @Query

JpaRepository 의 마지막으로 살펴볼 기능은 쿼리 메서드라는 기능과 JPQL이라고 불리는 객체지향쿼리에 대한 기능입니다. 앞의 예제에서 아쉬운 점은 다양한 검색 조건에 대한 부분입니다. Spring Data JPA의 경우에는, 이러한 처리를 위해서 다음과 같은 방법을 제공합니다. - 쿼리 메서드 : 메서드 이름 자체가 쿼리의 구문으로 처리되는 기능 - @Query : SQL과 유사하게 엔티티 클래스의 정보를 이용해서 쿼리를 작성하는 기능 - Querydsl등의 동적 쿼리 처리 기능 2.6.1 쿼리 메서드 쿼리 메서드는 말 그대로 '메서드의 이름 자체가 질의문'이 되는 흥미로운 기능입니다. 쿼리 메서드은 주로 'findBy나 getBy'로 시작하고 사용하는 키워드에 따라서 파라미터 개수가 결정됩니..

2.5 페이징/ 정렬 처리하기

페이징 처리와 정렬은 전통적으로 SQL을 공부하는데 반드시 필요한 부분입니다. JPA는 내부적으로 이런 처리를 'Dialect'라는 존재를 이용해서 처리합니다. JPA가 이처럼 실제 데이터베이스에서 사용하는 SQL의 처리를 자동으로 하기 때문에 개발자들은 SQL이 아닌 API의 객체와 메서드를 사용하는 형태로 페이징 처리를 할 수 있게 됩니다. Spring Data JPA에서 페이징 처리와 정렬은 특이하게도 findAll()이라는 메서드를 사용합니다. 한가지 주의할 점은 리턴타입을 Page 타입으로 지정하는 경우에는 반드시 파라미터를 Pageable 타입을 이용해야한다는 점입니다. 2.5.1 Pageable 인터페이스 페이지 처리를 위한 가장 중요한 존재는 org.springframework.data.d..

2.4.3 JpaRepository 인터페이스

테스트 코드를 통한 CRUD 연습 JpaRepository의 경우 다음과 같은 메소드를 활용합니다. - insert 작업 : save - select 작업 : findById, getOne - update 작업 : save - delete 작업 : deleteById, delete 특이한 점은 insert와 update 둘 다 save 사용 등록작업 테스트 등록작업 테스트는 한번에 여러개의 엔티티 객체를 저장하도록 작성합니다. 100개의 새로운 Memo 객체를 생성하고, MemoRepository를 이용해서 이를 insert하는 것입니다. 테스트가 실행되는 과정에는 JPA의 구현체인 Hibernate가 발생하는 insert구문을 확인할 수 있음 100개의 데이터가 들어감 조회작업 테스트 수정작업 테스트 ..

2.4 엔티티 클래스와 JpaRepository ~

실습을 통해서 실제 Spring Data Jpa를 어떤 방식으로 사용하게 되는 지 알아볼 필요가 있다. Spring Data Jpa가 개발에 필요한 것은 단지 두 종류의 코드만으로 가능합니다. - JPA를 통해서 관리하게 되는 객체(이하 엔티티객체)를 위한 엔티티 클래스 - 엔티티 객체들을 처리하는 기능을 가진 Repository 이 중에서 Repository는 Spring Data Jpa에서 제공하는 인터페이스로 설계하는데, 개발자 입장에서는 단순히 인터페이스를 하나 정의하는 작업만으로도 충분합니다. 실습을 위해서 먼저 Java에서 객체를 생성하기 위한 엔티티 클래스를 정의합니다. 2.4.1 엔티티 클래스 작성 Memo 클래스는 엔티티클래스로 마치 데이터 베이스의 테이블과 같은 구조를 작성합니다. @E..

[AndroidStudio] Failed to resolve: com.github......오류

구루 어드바이저를 하는 중에 질문이 들어왔다. 안드로이드로 팀프로젝트를 하는 학생들에게 유용할 것 같아서, 나중에 써먹을 수 있을 것 같아서 포스팅한다. 상황: 한 팀원이 깃허브 코드를 가져다 썼음 implementaion 'com.github.....' 이런 식으로 build gradle에 추가해주고 사용 그 코드를 다른 팀원들과 공유하기 위해 깃허브에 코드를 올림 그 올린 코드를 다른 팀원이 그 코드를 가져왔으나 빨간줄이 뜨고 오류 발생 해결방법 : 구글링 끝에 찾았음 build.gradle을 다음과 같이 수정하고 syncnow를 클릭 해결!

02 Maria 데이터베이스와 Spring Data JPA 2.2~

2.2 Spring Data JPA를 이용하는 프로젝트의 생성 프로젝트 생성했더니 다음과 같은 오류 발생 참고로 생성시 gradle-grooby 선택 https://velog.io/@kokojihye/Spring-Boot-%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8-%EC%83%9D%EC%84%B1 Spring Boot: 프로젝트 생성 섹션1.프로젝트 환경설정: 프로젝트 생성 velog.io Build Successful 떴다. 2.2.1 데이터베이스를 위한 스프링 부트 설정 이건 또 뭐임 https://binux.tistory.com/92 Intellij - error: invalid source release: 17 오류 Java 17이 LTS로 공개되었고, Spring boot..

2023-01-18_오늘의 모각코 성취도 30

오늘의 모각코 정리 - 인프런 스프링입문 - 코드로 배우는 스프링부트, 웹MVC, DB접근 기술 목표 : 섹션6, 섹션7 완강!! 달성 : 섹션6 중 한 강 지속적인 허리 통증, 11시부터 구루 어드바이저 일 때문에 많이 못했다. 오늘 까지 섹션 6 남은 한 강 clear하는 게 목표 내일은 섹션 7을 들은 후 완강 후 한 번 다시 이 강의를 천천히 복습 후 '코드로 배우는 스프린 부트 웹 프로젝트' 책으로 공부할 예정이다. - Do it! 알고리즘 코딩테스트 자바편 책 _30일 완성 목표 ㅣ 03 자료구조 중에서 03-1 배열과 리스트, 03-2 구간합 달성 : 이클립스와 깃헙 연동 시도 실패 세상에 쉬운거 하나 없네.. 우어어.... 어서 연동을 하고 싶은데 쉽지 않다 오늘까지 연동 하는 것이 목표

2023-01-13_오늘의 모각코 성취도 20

오늘의 모각코 정리 - 인프런 스프링입문 - 코드로 배우는 스프링부트, 웹MVC, DB접근 기술 목표 : 섹션 3, 섹션4, 섹션5 달성 : 섹션 3 중 회원서비스 개발 완료, 회원서비스 테스트 듣는 중 오늘 컨디션 난조 + 구루 어드바이저 일로 인해서 시간을 많이 못 냈다. 오늘 섹션3까지는 다 끝내는 것이 목표 내일 섹션4, 섹션5, 섹션6 4. 스프링 빈과 의존관계 5. 회원관리예제 - 웹 MVC개발 6. 스프링 DB접근 기술 - 프로그래머스 코테 풀이 _ 코딩테스트 고득점 kit 당연히 한 문제도 못풀었다... 내일은 꼭 스택/큐 문제를 풀 예정이다. 코테 책 어제 구매했는데 아직 안왔다. 오면 진짜 열심히 해야지