본문 바로가기

Spring Boot20

JPA repository.save is Null (NullPointerException) - feat. @RunWith & @SpringBootTest & @DataJpaTest JPA로 save 를 작성해보던 도중 @Autowired private UserRepository userRepository; @Test public void create(){ System.out.println(userRepository); User user = new User(); user.setAccount("TestUser01"); user.setEmail("TestUser01@gmail.com"); user.setPhoneNumber("010-1111-1111"); user.setCreatedAt(LocalDateTime.now()); user.setCreatedBy("admin"); System.out.println(user); User newUser = userRepository.save(us.. 2019. 11. 13.
스프링부트 Rest API Post 방식 호출하기 - (2) (1)탄 포스팅에서 작성한 소스코드를 살짝 바꿔봤다. 기존 소스 코드 파일을 한 줄씩 읽은 리스트에 한 줄씩 저장 리스트에서 user_id를 한 개씩 꺼내서 post 방식으로 전송 개선 소스 코드 파일을 한 번에 읽어서 리스트에 저장 추가, 삭제에 좋은 큐에 담아 100개씩 꺼내면서 5초 휴식 데이터가 엄청 많은 경우 100줄 정도 씩 끊어서 큐에 저장하여 api 호출도 100개씩 5초 간격으로 하려고 했으나, api가 그렇게 구현되어 있지않아서 하지 못했다. api를 마음대로 수정할 수 있는 권한이 있었다면 수정도 해봤을텐데 아쉽다. package com.fakesinsa.fakesinsaboot; import jdk.nashorn.internal.parser.JSONParser; import org... 2019. 10. 24.
스프링부트 Rest API Post 방식 호출하기 - (1) 올해 결제내역이 있는 회원들의 현재 보유한 잔액, 쿠폰 잔여량을 조회해 달라는 요청이 들어왔다. 조회에필요한 테이블을 찾다보니 무려 6개..! 쿼리는 바로 포기ㅎ 문득 각 회원별로 로그인 할 때 보유 잔액을 api 호출을 사용해 구현이 되어있다는 것이 생각났다. api 가이드를보니 로그인 user_id를 파라미터로 던지면 끝이었다 이렇게 간단할 수가?!?! 첫 시도 HttpHeaders headers = new HttpHeaders(); headers.setContentType(MediaType.APPLICATION_JSON); RestTemplate restTemplate = new RestTemplate(); String url = "api url"; MultiValueMap map= new Link.. 2019. 10. 23.
마이크로 서비스 구축 - (1) 마이크로 서비스 구축 - (1) 스프링 부트 어플리케이션 부팅: BootStrap 클래스 작성 스프링 부트 어플리케이션을 시작하고 초기화하는데 사용하는 Spring Bootstrap 클래스 마이크로서비스에서 호출할 수 있는 Http 엔드포인트를 노출하는 Spring Controller 클래스 //스프링 부트 프레임워크에 이 클래스가 프로젝트의 부트스트랩 클래스라고 지시한다. @SpringBootApplication public class Application{ public static void main(String[] args){ //스프링 부트 서비스를 시작하기 위해 호출한다. SpringApplication.run(Application.class, args); } } @SpringBootApplica.. 2019. 9. 28.
마이크로서비스 @PathVariable, @RestController, @EnableEurekaClient, @ HystrixCommand, @EnableCircuitBreaker 요즘들어 스프링 부트에 관심이 많아졌다. 워낙 업무에 레거시한 소스들을 많이 보다보니 더욱 더 최신 소스를 갈망하는 것 같다... 스프링 부트로 프로젝트를 해보거나, 뭔가 제대로 만들어본 적이 없어서 이참에 공부를 하여 클론 코딩을 해보려 한다. 그러기 위해서 부트를 제대로 공부해보자. 지인이 추천해준 스프링 마이크로서비스 코딩 공작소라는 책을 구매해 공부 할 예정이다. 스프링 부트를 공부하면서 REST작성 방법도 같이 공부 할 예정이다. 또한 책 이름에 맞게 나는 마이크로서비스를 위한 구현 방식을 공부하고, 그에 대한 코드 작성법을 공부 할 것이다. 스프링 부트를 사용한 전형적인 HELLO WORLD 예제 @SpringBootApplication //스프링 부트 서비스의 진입점을 지정 @RestCont.. 2019. 8. 31.
스프링부트 parameterType alias 지정하기 소스코드 SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean(); sqlSessionFactoryBean.setDataSource(dataSource); //아래 두줄 추가 sqlSessionFactoryBean.setVfs(SpringBootVFS.class); sqlSessionFactoryBean.setTypeAliasesPackage ("DTO/VO 클래스가 있는 패키지 경로"); 기존의 Config 클래스에 위의 두줄을 추가해주기만하면 끝이다. 추가 후 Mybatis의 xml 파일로 가서 ParameterType에 클래스 명을 그대로 사용할 수 있다. 여기서 나오는 VFS는 Virtual File System의 약자로 .. 2019. 5. 27.