JAVA
-
스프링 컨테이너에 등록된 모든 빈 조회JAVA/Spring(Springboot) 2021. 7. 17. 15:10
스프링 컨테이너에 등록된 모든 빈 및 사용자가 등록한 빈을 조회할 수 있다 우선 스프링 컨테이너를 생성해보자 AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext(AppConfig.class); 스프링 컨테이너에 등록된 모든 빈 출력 스프링 컨테이너에 등록된 모든 빈을 출력해보겠다 AppConfig에서 등록된 빈뿐만 아니라 스프링에서 기본으로 저장되어 있는 빈 객체도 있다 @Test @DisplayName("모든 빈 출력하기") void findAllBean() { String[] beanDefinitionNames = ac.getBeanDefinitionNames(); for(name : beanDefinitionN..
-
스프링 부트 사용해서 스프링 프로젝트 생성JAVA/Spring(Springboot) 2021. 7. 13. 20:35
스프링 부트를 사용해서 스프링 프로젝트를 간편하게 생성할 수 있다 우선 스프링 부트 스타터 페이지로 가자 https://start.spring.io 스프링 부트 스타터 페이지에서 Project : Gradle Language : Java Spring Boot : SNAPSHOT, M2로 표기된 건 정식 Release 버전이 아니기 때문에 이를 제외한 가장 최신 버전 선택 Group, Artifact 기입 Package name : Jar Java version : 본인 PC Java 버전에 맞게 선택 => GENERATE! 생성했다면 압축을 푼 후 InteliJ에서 New Project > 압축폴더에서 build.gradle 선택을 한다 그리고 InteliJ에서 File > Settings > Gradl..
-
[JPA] JPA 사용하기JAVA/Spring(Springboot) 2021. 7. 11. 16:45
JPA를 사용하면 DB쿼리를 작성하지 않아도 DB작업이 가능하다 JPA를 사용하기 위한 작업을 알아보자 1. build.gradle의 dependencies에 아래 코드를 추가한다 dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa' } 2. application.properties에 아래 코드를 추가한다 // jpa로 작성된 sql을 보여준다 spring.jpa.show-sql=true // DB에 table이 이미 생성되어 있기 때문에 ddl-auto는 꺼준다 spring.jpa.hibernate.ddl-auto=none 3. Repository에서 사용하면 된다 package hello.hellosp..
-
SpringBoot Class 단위 Test 시 초기화 작업JAVA/Spring(Springboot) 2021. 7. 3. 21:45
Class 단위로 Test 시 Test의 순서는 우선 순위를 보장할 수 없다 그러므로 데이터가 헷갈리지 않게 Test 각각을 끝낸 후 공동으로 사용하는 데이터는 초기화할 필요가 있다 각 Test 후 자동으로 실행하는 코드를 살펴보자 @AfterEach public void afterEach() { // ... 초기화할 코드 입력 } 위 코드에서 중요한건 @AfterEach 이다 함수의 이름은 사용자 지정이다
-
JAVA apache poi - PowerPoint 읽고 새로운 PowerPoint 생성JAVA 2021. 7. 2. 15:56
List shapes = slides.get(0).getShapes(); JAVA 에서 파워포인트를 읽고 원하는 컨텐츠만 뽑아서 다른 이름으로 저장하는 방법을 알아보겠다 우선 원본파일의 경로가 필요하다 String originalPath = "c:\\Users\\won\\hello.pptx"; 원본파일을 읽는다 XMLSlideShow originalPpt = new XMLSlideShow(new FileInputStream(originalPath)); ppt 슬라이드를 가져온다 List slides = originalPpt.getSlides(); 첫번째 슬라이드의 구성요소(Picture, Shape 등,,,)를 가져온다 List shapes = slides.get(0).getShapes(); 제거하고 싶..
-
Ramda Loop 돌면서 원하는 값 추출하기JAVA 2021. 7. 1. 22:49
ID 와 NAME 을 멤버변수로 가지는 Member 클래스가 있다 ID NAME public class Member() { public Sting id; public String name; } 그리고 ID 가 Key 이고 Member 들을 저장하는 HashMap 이 있다 public Map members = new HashMap(); Member 의 Name 를 가지고 members 에서 Member 를 찾는 Ramda 로직을 보겠다 String name = "감나무"; Member member = members.values().stream(). filter(member -> member.name.equals(name)).findAny().get(); members.values() 로 Map 에 담긴 객..
-
Spring boot cmd에서 빌드하고 서버 실행하기JAVA/Spring(Springboot) 2021. 6. 29. 22:18
Spring boot 에서 만든 프로젝트를 빌드하고 cmd 에서 서버를 실행시킬 수가 있다 우선 cmd 를 실행하고 프로젝트를 저장한 폴더까지 이동한다 이 폴더 구조가 나올때까지 이동하면 된다 cd 명령어를 통해 폴더를 이동한다 빌드를 하기 위해 위 폴더의 gradlew 파일을 실행시켜줘야 한다 gradlew build gradlew build 명령어를 입력하면 빌드가 시작되고 BUILD SUCCESSFUL 이 뜬다! dir 를 입력해 폴더 구조를 보면 build 라는 폴더가 있다 build 폴더로 이동하자 build 폴더 및 libs 폴더로 이동 후 구조를 살펴보면 빌드 된 jar 파일이 있다 파일 크기가 큰 hello-spring-0.0.1-SNAPSHOT.jar 를 java -jar 명령어로 실행시..
-
스프링부트 실행 시 로그인하라는 오류JAVA/Spring(Springboot) 2021. 6. 28. 21:22
스프링 부트 프로젝트를 생성하고 실행시 Console 창에 Err 와 함께 인터넷에서 localhost:8080 로 접속 시 로그인을 하라는 팝업창이 뜬다 취소를 누르니 권한이 없다는 메세지가 적힌 페이지가 나온다... Console 창을 보니 port 번호가 겹친다는 내용이 적혀 있었고 port 번호를 바꾸는 방법을 알아보았다 스프링 부트 port 바꾸는 방법 src > main > resources > application.properties 를 더블클릭 한다 그럼 빈화면이 나오는데 거기에 원하는 port 번호를 입력하면 된다 server.port=8090 localhost:8090 으로 다시 접속한 결과 원하는 페이지가 나왔다