작성자 : 코로세

작성자 : 코로세

' IOT 기반 응용 SW과정 > Group Studying' 카테고리의 다른 글

2-3. 정렬  (0) 2016.06.17
2-2. 쿠키와 세션  (0) 2016.06.17
7. 입출력 및 네트워크  (0) 2016.06.17
6. 컬렉션 프레임워크  (0) 2016.06.17
5. 쓰레드  (0) 2016.06.17

 


   디펜던시 설정        
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
    <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>
    </dependencies>
</project>
cs


◎ web.xml에 dispatchServlet을 서블릿으로 등록 *.do에 대해서 처리하도록 서블릿매핑 설정

◎ dispatcherServlet이 사용할 스프링 설정하일 생성

◎ controller패키지에 대해서 컴포넌트 스캔

◎ internalResouceViewResolver등록(prefix는 jsp파을들을 모아놓을 폴더경로, suffix는 jsp파일들의 확장자로)


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
<?xml version="1.0" encoding="UTF-8"?>

 
    <servlet>
        <servlet-name>dispatcher</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/dispatcher-servlet.xml</param-value>
        </init-param>

        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>*.do</url-pattern>
    </servlet-mapping>
 
</web-app>
cs


1
2
3
4
5
6
7
8
9
10
11
12
13


    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="jsp/"></property>
        <property name="suffix" value=".jsp"></property>
    </bean>
</beans>
 
cs


- 루트컨테이너 등록하고 사용하기

1. web.xml에 컨텍스트 로더 리스너를 등록

1
2
3
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListner</listener-class>
    </listener>
cs


2. /WEB-INF/applicationContext.xml이름으로 스프링 설정 파일 작성

1
2
3
4
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/applicationContext.xml</param-value>
    </context-param>
cs


dataSource, sqlSessionFactory, mapperFactoryBean(Dao), service클래스들(컴포넌트스캔), 트랜잭션매니저

dispatcher-servlet.xml 서블릿 컨테이너 <- mvc구성요소들, 컨트롤러(컴포넌트스캔), 뷰리졸버,,,,


((((((( 리스너, 필터 참고 // http://wiki.gurubee.net/pages/viewpage.action?pageId=26740229  )))))

 web.xml에 ContextLoaderListener클래스를 리스너로 등록하면, 

/WEB-INF/applicationContext.xml을 설정파일로해서 스프링 컨테이너를 하나 빌드하고, 

1
    <context:component-scan base-package="service"></context:component-scan>
cs

해당컨테이너를 모든 서블릿 컨테이너가 공유할 수 있도록 세팅함 

- 컨트롤러에서 파라미터 받기

- 컨트롤러에서 request, session, response등 기본객체 사용하기

- 컨트롤러에서 ModelAndView외에 다양한 반환유형


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
package controller;
 
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
 
import service.MemberService;
 
//서비스 주입받아서
//받은 리퀘스트를 처리하기에 필요한 서비스의 메소드를 호출해서 결과 획득
//결과 데이터랑 적절한 페이지 세팅해서 모덴앤뷰 리턴
 
@Controller
public class MemberController {
    @Autowired
    private MemberService service;
    
    @RequestMapping("test.do")
    public ModelAndView dummy(){
        ModelAndView mav = new ModelAndView();
        mav.addObject("msg",service.getData());
        mav.setViewName("test");
        return mav;
    }
    
}
//작성 후, service참조변수에 루트컨테이너에 등록되있는 MemberSerivce빈 객체를 주입
//test.do에서 서비스 객체의 getData함수호출의 결과를 싣고 test.jsp를 뷰 페이지로 지정
 
cs


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
package service;
 
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Service;
 
@Service
public class MemberService {
    public String getData(){
        return "What the Hell!";
        
        //작성후 루트컨테이너에 빈으로 등록
    }
}
//@Component : 이 에노테이션이 달려있는 클래스는 컴포턴트 스캔에 의해서 빈으로 등록이 됨
// 그때의 빈의 아이디는 클래스 첫글자 소문자
 
//@Controller, @Service, @Repository
//->모두 @Component의 아들들, 그러므로 얘네들도 컴포넌트스캔에 의해 빈 등록 됨
cs





' IOT 기반 응용 SW과정 > Web Programing' 카테고리의 다른 글

Day65 Spring-student  (0) 2016.06.21
Day64  (0) 2016.06.20
Day62 Spring MVC  (0) 2016.06.16
Day61  (0) 2016.06.15
Day60 Spring-AOP  (0) 2016.06.14

FTP(File Transfer Protocol)는 원격 서버 사이에 파일을 교환하기 위한 TCP/IP 프로토콜

HTTP(Hyper Test Transfer Protocol)는 HTML 문서의 송수신을 위해 사용하는 프로토콜

-> 비연결(non connectionless) 지향형 통신 프로토콜, 비연결지향형 서비스의 단점을 극복하기 위해 쿠키 사용


쿠키(Cookie)

서버가 아닌 클라이언트 컴퓨터의 하드디스크에 사용자의 정보를 저장하기 때문에 

서버의 동작에 무릴르 주지 않으면서 사용자의 정보를 적절하게 사용할 수 있다.


1. 쿠키 객체를 생성

2. 쿠키에 속성 값을 설정

3. response 객체의 addCookie() 메소드를 호출하여 쿠키를 추가


 Cookie(java.lang.String name, java.lang.String value)

 Cookie info = new Cookie("testCookie", I am First Cookie!");


메소드 

설명 

 void setDomain(String)

 쿠키의 유효한 도메인을 설정 

 void setMaxAge(int)

 쿠키의 유효한 기간을 설정

 void setPath(String)

 쿠키의 유효한 디렉토리를 설정

 void setValue(String)

 쿠키의 값을 설정 




세션(Session)

* JSP(서버)에서만 접근 가능하므로 보안 유지에 강력

* 저장할 수 있는 데이터에 한계 X


' IOT 기반 응용 SW과정 > Web Programing' 카테고리의 다른 글

Day40 서블릿 등록  (0) 2016.05.13
Day39 컨트롤러, 서비스, DAO  (0) 2016.05.12
Day37 액션태그  (0) 2016.05.10
Day36 내장 객체의 영역, 액션태그  (0) 2016.05.09
Day35 JSP  (0) 2016.05.04

내장 객체의 영역

 영역

설명 

page 

 하나의 JSP 페이지를 처리할 때 사용되는 영역 

request

 하나의 요청을 처리할 때 사용되는 영역

session

 하나의 브라우저와 관련된 영역 

application 

 하나의 웹 애플리케이션과 관련된 영역 



액션태그

 태그의 종류

설명 

 <jsp : forward>

 다른 사이트로 이동할 때 사용, 페이지의 흐름을 제어할 때 사용 

 <jsp : include>

 정적 혹은 동적인 자원을 현재 페이지의 내용에 포함시킨다. 페이지를 모듈화할 때 사용 

 <jsp : param>

 <jsp : forward>, <jsp : include>, <jsp : plugin>과 같이 사용되어 파라  미터를 추가할 때 사용

 <jsp : usebean>

 빈(bean)을 생성하고 사용하기 위한 환경을 정의하는 액션 태그 

 <jsp : setProperty>

 액션은 빈에서 속성 값을 할당 

 <jsp : getProperty>

 액션은 빈에서 속성 값을 얻어올 때 사용 


' IOT 기반 응용 SW과정 > Web Programing' 카테고리의 다른 글

Day38 쿠키 & 세션  (0) 2016.05.11
Day37 액션태그  (0) 2016.05.10
Day35 JSP  (0) 2016.05.04
Day34 JSP 내장 객체  (0) 2016.05.03
Day33 Jsp  (0) 2016.05.02

+ Recent posts