T.김동식
pro30
각 단계에서
기록하고 싶었던것들
30.1 기존 소스 코드 변경하기
인터셉터 설정
인터셉터는 한번 작성해 놓으면 변경하지 않고 다른 프로젝트에서도 사용할 수 있음.
30.2 마이바티스 관련 XML 설정하기
typeAliases
typeAlias type경로 alias별명
DB 조회 결과를 내가 커스텀한 객체(DAO)로 가져오고 싶은 경우
간편하게 가져올 수 있도록 패키지에 대한 별명을 지정함.
<configuration>
<typeAliases>
<typeAlias type="com.myspring.pro30.member.vo.MemberVO" alias="memberVO" />
<typeAlias type="com.myspring.pro30.board.vo.ArticleVO" alias="articleVO" />
<typeAlias type="com.myspring.pro30.board.vo.ImageVO" alias="imageVO" />
</typeAliases>
</configuration>
resultMap type
위에서 지정된 별명들은 mapper폴더안의 파일들에서 사용됨.
resultMap
- id sql문을 담은 select이 resultMap 가져올 형식별명
- type typeAliases별명
result
- property속성
- column데이터 column이름
30.3 타일즈 설정하기
tiles
tiles-definitions
definition name이름과 template경로 extends상속할 definition name
put-attribute name이름과 value경로
<tiles-definitions>
<definition name="baseLayout" template="/WEB-INF/views/common/layout.jsp">
<put-attribute name="title" value="" />
<put-attribute name="header" value="/WEB-INF/views/common/header.jsp" />
<put-attribute name="side" value="/WEB-INF/views/common/side.jsp" />
<put-attribute name="body" value="" />
<put-attribute name="footer" value="/WEB-INF/views/common/footer.jsp" />
</definition>
<definition name="main" extends="baseLayout">
<put-attribute name="title" value="메인페이지" />
<put-attribute name="body" value="/WEB-INF/views/main.jsp" />
</definition>
</<tiles-definitions>
30.4 게시판 목록 표시하기
board/listArticles.do로 요청시
인터셉터에서 전달된 뷰네임을 가져와
articlesList글 정보 조회한것을 가져와
바인딩 후 ModelAndView로 jsp에 전달함.
@Override
@RequestMapping(value= "/board/listArticles.do", method = {RequestMethod.GET, RequestMethod.POST})
public ModelAndView listArticles(HttpServletRequest request, HttpServletResponse response) throws Exception {
String viewName = (String)request.getAttribute("viewName");
List articlesList = boardService.listArticles();
ModelAndView mav = new ModelAndView(viewName);
mav.addObject("articlesList", articlesList);
return mav;
}
List articlesList = boardService.listArticles();
boardService에서는 boardDAO.selectAllArticlesList()를 실행하는데,
애너테이션으로 @Service("boardService")임을 알리고
컨트롤러에서
@Autowired
private BoardService boardService;
애너테이션으로 연결함.
Spring MVC에서 @Autowired와 같은 애너테이션 기능을 사용하는 방법
@Autowired 애너테이션을 사용하는 빈을 자동으로 등록
pom.xml설정
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.3.13.RELEASE</version>
</dependency>
servlet-context.xml
@Autowired 애너테이션을 사용하는 빈(Bean)을 자동으로 검색할 수 있다.
base-package 속성은 스프링이 자동으로 검색해야 하는 패키지를 지정
<beans>
<context:component-scan base-package="com.myspring.pro30" />
...
</beans>
위의 내용은 mvc프로젝트 만들었을때 자동으로 추가된다.
빅데이터
파일럿 환경관리
3대의 리눅스 가상 머신에서 다수의 빅데이터 소프트웨어를 구성하기 때문에 무겁고 복잡하다.
파일럿 프로젝트와 관련된 작업을 시작/종료할때 다음과 같은 절차를 밟아야 안정적인 환경을 유지한다.
1. 가상머신 1, 2, 3 실행
2. putty로 접속후 service cloudera-scm-server status;
3. 크롬 브라우저에서 http://server01.hadoop.com:7180
서버 import
네트워크설정 및 실행
도구 - 햄버거버튼 - 네트워크 - 속성 - 주소입력 및 실행
host 파일 메모장 관리자권한으로 실행 후 추가
C:\Windows\System32\drivers\etc
putty로 실행
아래 빨간색으로 표시된 영역에 ip주소 - 별명 - save누르면 저장할 수 있다.
cm 구동완료됐는지 확인
service cloudera-scm-server status;
크롬브라우저로 접속
http://server01.hadoop.com:7180
로그인