일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 스프링 핵심 원리
- SpringBoot
- Spring Boot
- springdatajpa
- AOP
- transaction
- Android
- kotlin
- JDBC
- pointcut
- JPQL
- http
- 스프링
- 그리디
- 인프런
- 스프링 핵심 기능
- spring
- java
- 자바
- Thymeleaf
- 김영한
- 알고리즘
- jpa
- Proxy
- Greedy
- Exception
- Servlet
- db
- 백준
- QueryDSL
- Today
- Total
목록handler (4)
개발자되기 프로젝트
보통 앱은 메인 화면에서 back button을 두 번 연속으로 누르면 종료된다. onBackPressed() 메서드를 overriding해서 구현할 수 있다. - 앱 종료: finish() 호출 - Handler: MainThread가 아닌 별도 Thread에서 처리. 특정 시간 후 MainThread로 넘겨서 처리. class MainActivity : AppCompatActivity() { private var isDoublePressed = false override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) } override f..
1. Splash Screen - 스플래시 스크린은 앱 구동시 보여주는 화면임. 2. Handler Main thread가 있고 별도의 Thread가 있다고 해보자. 만약 두 thread가 동시에 textView의 setText를 실행한다고 가정하자. - MainThread: setText("from Main") - BThread: setText("from B") 이렇게 동시에 시도하면 문제가 발생한다. 따라서 MainThread가 아닌 Thread는 Handler를 사용한다. Handler의 역할은 MainThread로 다른 Thread의 message를 전달하는 것이다. 즉 위와 같은 경우는 BThread가 setText("from B")라는 내용을 message에 담아 Handler를 통해 MAin..
V5는 V3, V4 Controller 모두 대응이 가능하도록 작성해보자. FrontControllerV5에 ControllerV4도 추가해보자. 1. ControllerV4HandlerAdapter ControllerV4는 process() 실행 후 String viewName을 return한다. MyHandlerAdapter 인터페이스는 기본적으로 handler()에서 controller의 process()를 호출하고 ModelView를 반환. 따라서 Adapter에서 ModelView를 반환해야 하기 때문에 ControllerV4를 위한 Adapter는 별도로 ModelView생성필요. public class ControllerV4HandlerAdapter implements MyHandlerAda..
누구는 v4, 누구는 v3로 개발하고 싶으면 어떡하지? 1. Adapter 패턴 지금까지 우리가 개발한 프론트 컨트롤러는 한가지 방식의 컨트롤러 인터페이스만 사용할 수 있다. ControllerV3 , ControllerV4 는 완전히 다른 인터페이스이다. 따라서 호환이 불가능하다. 마치 v3는 110v이고, v4는 220v 전기 콘센트 같은 것이다. 이럴 때 사용하는 것이 바로 어댑터이다. 어댑터 패턴을 사용해서 프론트 컨트롤러가 다양한 방식의 컨트롤러를 처리할 수 있도록 변경해보자. 2. V5 구조 핸들러 어댑터: 중간에 어댑터 역할을 하는 어댑터가 추가되었는데 이름이 핸들러 어댑터이다. 여기서 어댑터 역할을 해주는 덕분에 다양한 종류의 컨트롤러를 호출할 수 있다. 핸들러: 컨트롤러의 이름을 더 넓은..