Spring

java api

서버 개발

  • Framework : 개발을 표준화시킬 수 있다. (프로그램의 유지 보수가 쉬워진다 , 개발이 편해진다.)
  • 전자정부 프레임워크 표준

웹서버 프로그램 :

Client Server

사용자 – request –> 서버

​ <– response –>

1) Spring MVC Project:

​ package 명을 3단계로 주어야 함.

2) 프로젝트 명 facet에서 java버전 바꿔

3) WAS 설정 (tomcat)

jsp : java server page : 클라이언트에 보여줄 페이지를 서버쪽에서 만드

  • html + java의 로직을 넣은 것.

  • 동적으로 생성도니 페이지 (logic 평가-> html의 텍스트로 변환)

    jasper라는 클래스가 해석하고 위를 해줌.

  • <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
    <%@ page session="false" %>
    지시자.
    
  • home.jsp => home.java => home.class => (html)같이 변환 => 소켓을 통해 통신
  1. 컨트롤러를 만드는 것이 가장 처음 작업 (.java 파일) : 사용자로부터 요청이 들어오면 요청을 받는 클래스 : Controller 라고 부른다. @Controller 애노테이션이 있어야 콘트롤러다!

Spring

  • DI(Dependency Injection) : container => DI, Life Cycle 관리

  • 느슨한 결합 (결합을 강하지 않게 하는 것이 중요) (class a가 바뀌면 그걸 사용하느 ㄴb가 바뀌고 … 이렇게 연쇄적으로 바뀐다.)

    • Friend f = new Friend(); –>결합을 강하게 하는 것이다.
  • 환경설정 방법 : 크게 세가지 maven, java configuration 로 직접, annotation @

  • 느슨한 결합

    1) class보다 interface를 사용하는 것이 좋다.

    2) 코드 내에서 객체를 생성하는 행위를 지양하는게 좋다.

    3) 트랜잭션 관리 중요하다.

    class Myclass {

    //이렇게 선언만 해놓고, 외부에서 데이터를 받는 것이 좋다.

    class MyClass{
        Friend f;
        public MyClass(Friend f){
            this.f = f; //스프링이 객체를 생성해 가지고 있어서 요청이 들어오면 던져준다.
        }
    }
    

    }

새 프로젝트 만들었으면

1) java version 을 설정해야한다. (faucet 이랑

pom.xml에서 java version 고쳐줌)

spring framework 에서는 4.3.6 로 바꿔준다.

2) 환경설정

pom.xml : Maven 으로 dependencies를 관리하는 파일

C:\Users\21500.m2\repository\org\springframework\spring-context

여기에 있다.

web.xml

servelet- context.xml

root-context.xml

tomcat 바로 뒷단에 dispatcherServelet.java가 있다. 이것은 모든 요청을 받는 문지기 역할을 한다. 그리고 이사람이 뭘 요청했냐에 따라서 controller 쪽에 옮긴다.

“send1?username=홍길동&userage=34”

// 요청 같은 거

client 가 서버쪽으로 데이터를 보낼때는 parameter를 통해서 데이터를 보낸다.

서버쪽에서 클라이언트 쪽으로 데이터를 보낼 때는 model이라는 객체에 넣어서 보내면 된다.

model이 클래스의 객체를 보내게 해준다. key 와 value의 값으로 넣으면 된다.

model.addAttribute(“”,””)

방명록 짜기

요청의 종류

/ => 첫 요청 (index.jsp)

list => 글 목록 :

write => 글 작성 폼을 줘라 (get으로 요청) –> 데이터가 넘어갈 게 ㅂㄹ 없어서 그냥 get으로 요청

write => 글을 올려줘라 (post로 요청) –> 데이터가 넘어갈게 많아서

write 함수 이름은 같지만, 방식이 다르므로 다른 것으로 인식한다.

jsp 에서 들어온 데이터, tomcat이 먼저 받고, 이걸 spring 으로 넘기면서 controller로 넘기는데, 같은 이름이 없으면 그 객체 안의 setter 같은이름 찾아봐서 넣는다.그래서 그 객체의 setter가 자동으로 호출이 된다.

원래 response 에 담아서 응답을 보냈는데, spring 측에서 보안상 문제가 있는 것 같다고 model 객체를 만들어 준것이다.

model.addAttribute(“key”,value);

===

오라클이랑 스프링이랑 연결하기 위해서 주소가 필요하다.

네트워크 상에서 데이터 주고받고 하려면 주소 기본적으로 세개가 필요하다.

  1. 불변의 주소 : 컴터에 네트웍 카드라는게 나와있다. MAC Address

    1. ipconfig -all (dos 명령어)
      

    여기에 물리적 주소에 나와있다. 이게 컴퓨터 네트워크 카드의 하드웨어적 주소.

    1.

  2. IP 주소 : 소프트웨어적인 주소 (IPv4 : 255.255.255.255), IPv6

  3. 127.0.0.1 == localhost (도메인)

  4. 포트번호 : (1 ~ 65535)

    http 는 80 포트를 쓴다.

    우리 톰캣은 http://localhost:8089 일케 쓰자나 http 는 굳이 포트 번호 ㅇ나 붙여도 80포트를 쓰는 것이다.

    tomcat => server.xml에 가면, connector 그기에 정보가 있다. port 번호가 적혀있다.

    8080은 다른 프로그램이 가동되어서 안됨.. 배포할 때 포트를 바꿔준다.

    모든 객체는 사용하려면 new를 해야한다.!!

    @Controller ==> Spring 이 알아서 객체 생성해줌!! ==> 약결합이 가능


© 2018. All rights reserved.

Powered by Hydejack v8.5.2