공부기록

공부기록, 2021-08-11(수), 121일차

정형준 2021. 8. 11. 09:37

## JSP
```
public class Container {
private static List<ContainerComponent> containerComponents;

public static App app;

public static BeforeActionInterceptor beforeActionInterceptor;
public static NeedLoginInterceptor needLoginInterceptor;
public static NeedLogoutInterceptor needLogoutInterceptor;
public static NeedAdminInterceptor needAdminInterceptor;

public static ArticleRepository articleRepository;
public static ArticleService articleService;
public static UsrArticleController usrArticleController;

public static MemberRepository memberRepository;
public static MemberService memberService;
public static UsrMemberController usrMemberController;

public static UsrHomeController usrHomeController;

public static BoardRepository boardRepository;
public static BoardService boardService;

public static AdmHomeController admHomeController;

public static void init() {
containerComponents = new ArrayList<>();

app = addContainerComponent(new App());
memberRepository = addContainerComponent(new MemberRepository());
boardRepository = addContainerComponent(new BoardRepository());
articleRepository = addContainerComponent(new ArticleRepository());

memberService = addContainerComponent(new MemberService());
boardService = addContainerComponent(new BoardService());
articleService = addContainerComponent(new ArticleService());

beforeActionInterceptor = addContainerComponent(new BeforeActionInterceptor());
needLoginInterceptor = addContainerComponent(new NeedLoginInterceptor());
needLogoutInterceptor = addContainerComponent(new NeedLogoutInterceptor());
needAdminInterceptor = addContainerComponent(new NeedAdminInterceptor());

usrMemberController = addContainerComponent(new UsrMemberController());
usrArticleController = addContainerComponent(new UsrArticleController());
usrHomeController = addContainerComponent(new UsrHomeController());

admHomeController = addContainerComponent(new AdmHomeController());

for (ContainerComponent containerComponent : containerComponents) {
containerComponent.init();
}

}

private static <T> T addContainerComponent(ContainerComponent containerComponent) {
containerComponents.add(containerComponent);

return (T) containerComponent;
}
}
```

## 내가 모르는 것
- 전체적인 커뮤니티 구조

## 느낀점
- 구조를 아는것이 매우 중요하다고 본다.