Daily coding
Spring : Spring Framework 본문
Day 2 : Spring
1. 다이나믹 웹 프로젝트 생성
2. Project 우클릭 -> properties - configure - convert to Maven : 메이븐으로 만들기
3. pom.xml 의 dependencies 채워넣기
- Annotation : 맵퍼
- *.do : 컨트롤러로 무조건 간다는 뜻 ( url pattern 에서 /대신 .do
* Spring에 대한 의존성 : 뷰에서 넘어간 파라미터를 String 타입이 아니고 원래 형으로 변환해준다
(int로 넘기면 int, String으로 넘기면 String)
* Spring controller 함수의 파라미터를 Dto로 설정하면 알아서 form의 name과 매핑해서
DTO에 데이터를 넣어준다
* Spring으로 Ajax 사용하기
- Boot는 ajax기반
- Json을 넘겨줄 때 라이브러리 : Jackson
***** Ajax 통신을 위한 스프링 설정
1. dispatcherServlet : 다음 두가지를 추가한다
- <mvc:annotation-driven/ > : Ajax 주석문을 사용하는 것을 허가함
- mvc:default-servlet-handler : 스프링에서 처리할 수 없는 요청은 톰캣에 위임함
2. sendRedirect :
- controller에서 다른 controller로 보낼 때 사용
- 짐 없이 단순이동 하는 방식
- return "redirect:/home.do"
3. forward :
- 짐(데이터)을 가지고 이동함
- return "redirect:/home.do"
4. Ajax 컨트롤러
1) produces ="application/String; charset=utf-8"
- 한글 문자열을 보낼 때, requestMapping 하는 부분에 반드시 추가한다. (한글 깨짐 방지)
2) @ResponseBody :
- Ajax 통신일 때 반드시 추가해야하는 Annotation
* MyBatis
(따로받기) 버전 : 3.4.6 jar 파일 받아서 lib에 넣기
- Backend
: src에 mybatis 패키지 만들고 config.xml / MemberMapper.xml 추가 (mybatis 세팅용)
- MyBatis 설정 부분을 복붙해옴
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
- : 루트 태그, DB에서 데이터를 가지고 오기 위해서 설정
** 밑에 xml 코드 추가하기
oracle.jdbc.driver.OracleDriver"/>
MemberMapper에서 쿼리문 작성
MemberMapper.xml"/>
** MemberMapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
- mapper 안에는 실행할 쿼리문을 매핑해둔다
- 쿼리문은 대문자로, 데이터는 소문자로
- $: 자동적으로 숫자로 만들어 줌
- #: ' '를 자동적으로 붙여줌(String)
INSERT INTO MEMBERDTO(ID, PWD, EMAIL)
VALUES ( #{id},#{pwd},#{email} )
java.lang.String">
DELETE FROM MEMBERDTO
WHERE ID = {id}
* select
- 파라미터타입과 더불어 result타입을 정해주어야함
* view에서 받을 때 :
- selectOne: 하나만 받음
MemberDto sDto = session.selectOne("find",id);