학생 정보 관리 웹
필요한 페이지
모든 학생 리스트를 보여주는 페이지
학생정보를 입력해서 학생을 데이터베이스에 추가할 수 있는 페이지
학생정보중 일부를 변경해서 데이터베이스 정보를 수정할 수 있는 페이지
필요 요청
- studentList.do : 학생리스트 보여주는 페이지를 요청
- deleteStudent.do : 파라미터로 넘어온 학생을 삭제해주는 요청 -> 요청 처리 후 studentList.do로 리다이렉트
- addStudentForm.do : 학생 추가 페이지를 요청
- addStudent.do : 학생 추가 작업을 처리 요청 -> 요청 처리 후 studentList.do로 리다이렉트
- modifyStudentForm.do : 학생 수정페이지를 요청
- modifyStudent.do : 학생 수정 작업을 처리 요청
필요 기능
- 학생 리스트 데이터를 얻어오는 기능
- 학생 데이터 한개를 지우는 기능
- 학생 데이터 한개를 추가하는 기능
- 학생 데이터 한개를 수정하는 기능
필요 데이터베이스 쿼리
- 학생 리스트 조회 쿼리
- 학생 레코드 추가 쿼리 insert into student values ~~~~
- 학생 레코드 삭제 쿼리
- 학생 레코드 수정 쿼리
1. web 프로젝트 생성 (web.xml 체크) // maven 설정
2. 디펜던시 설정
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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>4.1.6.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>4.1.6.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>4.1.6.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>4.1.6.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>4.1.6.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop</artifactId> <version>4.1.6.RELEASE</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.2.8</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>1.2.2</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.38</version> </dependency> <dependency> <groupId>jstl</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> </dependencies> | cs |
* web.xml에 dispatcherServlet 등록과 루트 컨테이너를 위한 리스너등록,
한글처리를 위한 필터등록 <- 스프링 MVC한글처리하기
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 | <servlet-mapping> <servlet-name>dispatcher</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/applicationContext.xml</param-value> </context-param> <filter> <filter-name>encodingFilter</filter-name> <filter-class> org.springframework.web.filter.CharacterEncodingFilter </filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> </filter> <filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> | cs |
* 등록한 dispatch 서블릿이 사용할 스프링 컨테이너 설정파일 생성,
contextLoaderListener에 의해 생성될 루트컨테이너가 사용할 스프링 컨테이너 설정파일 생성
* 구조생성
* controller구현 클래스가 있는 controller패키지 컴포넌트 스캔
HandlerMapping, ViewResolver중에 필요한객체들 빈으로 등록
Namespaces - context 체크
1 2 3 4 5 | <context:component-scan base-package="controller"></context:component-scan> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="jsp/"></property> <property name="suffix" value=".jsp"></property> </bean> |
* dataSource 빈 등록, sqlSessionFactory 빈 등록, IstudentDao 인터페이스를 MapperFactoryBean을 통해 매퍼 객체 빈 등록
service 구현클래스가 있는 service패키지 component-scan
Namespaces - context 체크
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | <context:component-scan base-package="service"></context:component-scan> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="com.mysql.jdbc.Driver"></property> <property name="url" value="jdbc:mysql://localhost/데이터베이스이름"></property> <property name="username" value="아이디"></property> <property name="password" value="비밀번호"></property> </bean> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource"></property> <property name="mapperLocations" value="classpath*:dao/mapper/**/*.xml"></property>
</bean> <bean id="studentDao" class="org.mybatis.spring.mapper.MapperFactoryBean"> <property name="sqlSessionFactory" ref="sqlSessionFactory"></property> <property name="mapperInterface" value="dao.IStudentDao"></property> </bean> |
' IOT 기반 응용 SW과정 > Web Programing' 카테고리의 다른 글
Day67 네이버 API (0) | 2016.06.23 |
---|---|
Day66 Spring-student // 스프링 인터셉터 (0) | 2016.06.22 |
Day64 (0) | 2016.06.20 |
Day63 Spring-member (0) | 2016.06.17 |
Day62 Spring MVC (0) | 2016.06.16 |