일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Invalid bound statement (not found)
- 김영한JPA
- DB방언
- 캐쉬가능
- HTTPMESSAGE
- 데이터베이스 방언
- JPA
- 매핑정보가없는필드
- 네이버로그인API
- @Table
- ERROR TYPE : org.apache.ibatis.binding.BindingException
- fixedDelay
- http
- gitreset
- 자바ORM표준프로그래밍
- 네이버 연결된 서비스
- initialDelay
- org.apache.ibatis.binding.BindingException
- gitrevert
- HTTP3
- 무상태프로토콜
- Git
- Transaction not successfully started
- KAKAOLOGINAPI
- SpringBoot
- hibernate.dialect
- RFC723x
- @Entity
- anyMatch
- 멱등활용
- Today
- Total
목록IT (131)
twocowsong
아래와 같이 회원 객체가 있다고 생각해보자. public class Member { private String memberId; private String name; ... } 회원 객체 기반으로 DB관리할 목적으로 회원용 DAO를 만들어 보자 public class MemberDao { public Member find(String memberId) {...} } 그러면 보통 다음 순서로 개발을 진행이 될것입니다. 1. 회원 조회용 SQL 작성 -> SELECT MEMBER_ID, NAME FROM MEMBER M WHERE MEMBER_ID = ? 2. JDBC API를 사용해서 SQL을 실행 - ResultsSet rs = stmt.executeQuery(sql); 3. 조회 결과를 Member 객..
한줄이라도 줄이고싶다면 당신은 개발자입니다! public class Dish { private String name; private boolean sale; private int price; private Type type; public enum Type{MEAT, FISH, OTHER} } Dish클래스입니다. 음식의 이름, 판매여부, 가격, 타입을 가지고있습니다. List menu = Arrays.asList( new Dish("salmon", true, 430, Dish.Type.FISH), new Dish("rice", true, 500, Dish.Type.OTHER), new Dish("french", true, 600, Dish.Type.MEAT), new Dish("pork", true, 8..
Spring을 사용하다보면 스프링 컨테이너가 의존 관계 주입을 대신 해주기때문에 개발자는 스프링에서 할당된 객체를 손쉽게 사용하며 싱글톤도 보장이 되어 자원에 효율적입니다. 제어 역전은 개발자가 직접 객체를 생성하지않고 스프링에게 권한을 맡기면서 사람이 아닌 스프링에게 권한이 넘어가며 그부분을 제어의 역전이라고합니다. 객체를 사용할때 저희에게 친숙한 어노테이션들이 있습니다. @Autowired 와 Lombok에 @RequiredArgsConstructor 입니다. 의존성 주입 @Autowired : 필드주입 - 상황의 타입에 맞게 IoC컨테이너 안에 존재하는 Bean을 자동으로 주입해주게 됩니다. - 빈을 생성한 후에 주입하려는 빈을 찾아 주입합니다. - 필드를 final로 선언할 수 없습니다. @Req..
프로그램 개발중 만약 각 메소드마다 시작 시간, 종료시간, 걸린시간을 출력하기위해서는 어떻게 해야할까요? 모든 메소드 호출마다 try문으로 감싸서 하는방법도있겠지만.. 시간과 고통이 엄청나겠죠. 이럴때 AOP를 이용하여 공통처리를하게된다면 빠른방법으로 처리할수있습니다. org.springframework spring-aspects 5.3.16 pom.xml에 dependency를 추가합니다. /** * AOP - 시작, 종료 공통 로직 */ @Component @Aspect @Slf4j public class TraceAop { /** * 모든 패키지에 적용되는 시작, 종료 공통 로직 * 시작시간 , 종료시간 출력 */ @Around("execution(* com.twocow.song..*(..))") ..
Merge : 2개의 브랜치를 병합시켜 새로운 커밋 1건을 발생시키면서 내용을 합치는 것 Rebase : 옮기고자 하는 브랜치(A)와 붙이려는 메인 브랜치 (main) 2개가 있을경우 A 브랜치의 모든 커밋건들을 main 브랜치에 붙여버리는것 차이점 : 히스토리(내역)이 다르게 노출된다. Merge를 하여 브랜치를 합치는경우 브랜치가 메인브랜치로 합쳐진걸 확인할수있다. 평범한 그래프처럼보이지만 Rebase로 병합하면 히스토리 를 남기지않으며 타 브랜치 커밋건들이 메인 브랜치의 커밋들처럼 보인다.
그림처럼 총4번의 커밋으로 이루어진 프로젝트가 있습니다. - First commit : 최초 커밋 - A file Create : A파일 생성 - B file Create : B파일 생성 - A file Delete , C file Create : A파일 삭제, C파일 생성 reset 현재 지점에서 reset을 하게되면 해당지점으로 돌아가게됩니다. git bash를 통하여 git log를 입력하게되면 commit 옆 해당지점 값 입니다. git log 해당 지점 값을 입력하여 돌아갈수있습니다. git reset --hard 주소값 B file Create 지점으로 리셋을 하게되면 마지막으로 작업했던 A file Delete , C file Create 작업전으로 이동하게됩니다. 즉 A파일은 다시 생성되고..
1. 네이버에서 로그인후 내정보를 클릭해주세요. 2. 보안설정탭을 클릭해주세요. 3. 보안설정탭에서 화면 맨아래에 서비스 관리를 클릭해주세요. 4. 연결 해지를 원하는 컨텐츠를 찾은 뒤 철회하기를 눌러주세요. 확인! 끗!
웹 환경 - Java, SpringBoot 순서 1. 네이버 개발자에서 애플리케이션 등록 https://developers.naver.com/main/ NAVER Developers 네이버 오픈 API들을 활용해 개발자들이 다양한 애플리케이션을 개발할 수 있도록 API 가이드와 SDK를 제공합니다. 제공중인 오픈 API에는 네이버 로그인, 검색, 단축URL, 캡차를 비롯 기계번역, 음 developers.naver.com 2. SDK 설정 및 화면 셋팅 (네이버의 경우 버튼 이미지를 호출하는방식이 다른 SNS와 다릅니다.) 3. 서버에서 API를 통한 AccessToken 검증 1. 네이버 개발자에서 애플리케이션 등록 1번 바로가기를 통해 네이버 개발자에서 로그인을 해주세요. 그 후 애플리케이션 등록 화..