일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
31 |
- Reflection
- 문자열
- CS
- 알고리즘
- proxy
- BOJ
- 자바
- MST
- 스프링 시큐리티
- Junit5
- redis
- 다이나믹 프록시
- OS
- 프록시
- 모던 자바 인 액션
- 약수
- 모던자바
- Spring
- 파이썬
- 최소 신장 트리
- java
- 운영체제
- 객체지향
- test
- spring security
- Deadlock
- 리플렉션
- 스프링
- Python
- 백준
- Today
- Total
목록Java&Spring (35)
Dev 달팽이 @_''

Java - 리플렉션(클래스 정보 수정 또는 실행) Class 인스턴스 만들기 Class.newInstance()는 deprecated 됐으므로 이제 부터는 생성자를 통하여 만들어야 함 //Class API를 통해서 인스턴스를 만드는 방법 Class bookClass = Class.forName("org.example.Book"); Constructor constructor = bookClass.getConstructor(String.class); Book book = (Book)constructor.newInstance("myBook"); System.out.println(book); 생성자로 인스턴스 만들기 Constructor.newInstance(params) Field에 접근하고 수정하는 방법 ..

Java - 리플렉션 API(클래스 정보 조회) 자바 리플렉션(Java Reflection) 리플렉션이란 객체를 통해 클래스의 정보를 분석해 내는 프로그램 기법 스프링에서 BeanFactory는 어플리케이션이 실행한 후 객체가 호출 될 당시 객체의 인스턴스를 사용 이 때 필요한 기술이 리플렉션 Class : https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html Class에 접근하는 방법 public class App { public static void main(String[] args) throws ClassNotFoundException { // 방법 1. 모든 클래스를 로딩 한 다음 Class의 인스턴스가 생김 // 타입.class로 접근할..

Java - 바이트코드 조작 모자에서 토끼를 꺼내는 마술 Moja.java public class Moja { public String pullOut(){ return ""; } } Masulsa.java public class Masulsa { public static void main(String[] args) { System.out.println(new Moja().pullOut()); } } Masulsa를 실행하면 아무것도 없는 빈 문자열이 출력될 것이다. 하지만 여기서 우리는 Rabbit 이라는 문자열을 출력하도록 바이트코드를 조작하려고 한다. 바이트코드 조작 라이브러리 ASM Javassist ByteBuddy 여기서 우리는 ByteBuddy를 사용한다. 바이트 버디를 사용하기 위하여 pom..

Java - 코드 커버리지 코드 커버리지(Code Coverage) 소프트웨어의 테스트를 논할 때 얼마나 테스트가 충분한가를 나타내는 지표 중 하나 말 그대로 코드가 얼마나 커버 되었는가를 판단, 테스트를 진행할 때, 코드 자체가 얼마나 실행되었는가 JaCoCo Java Code Coverage Tool pom.xml에 플러그인을 추가 org.jacoco jacoco-maven-plugin 0.8.4 prepare-agent report prepare-package report 이슈 사항. mvn이 설치되어 있지 않아서 오류가 발생 install pom.xml의 Build에 이 부분을 추가. 결과 target>site>facoco>index.html이 생성되고 이를 실행시켰을 때, 아래와 같이 나오면 성..