• 분류 전체보기 (160)
    • 개인프로젝트 (5)
      • 시연영상모음 (4)
      • 주저리주저리.. (1)
    • 자바스크립트이야기 (69)
      • ExtJS (30)
      • ExtJS 유의사항 (3)
      • HTML5 (1)
      • jQuery (17)
      • jQuery플러그인소개 (9)
      • jQuery UI 소개 (9)
    • 스프링연동하기 (23)
      • spring3 mvc 설정 (4)
      • spring3 mybatis 설정 (4)
      • spring3 기타설정 (11)
      • ibatis and mybatis (4)
    • DB (26)
      • MySQL vs MS-SQL vs O.. (5)
      • MySQL (10)
      • MSSQL (5)
      • Oracle (6)
    • 서버에웹환경구축하기 (13)
      • 1.VirtualBox+CentOS .. (5)
      • 2.JAVA(JDK) 설치 (1)
      • 3.Apache+Tomcat 설치 (3)
      • 4,SVN Server 설치 (1)
      • 5.마리아DB(MariaDB) 설치 (2)
      • 6.몽고DB(MongoDB)설치 (1)
    • 샘플소스 (14)
      • 샘플소스(JAVA) (7)
      • 샘플소스(JSTL) (4)
      • 샘플소스(jQuery/스크립트) (3)
    • 에디터연동 (5)
      • NAVER-스마트에디터 (4)
      • DAUM-다음에디터 (1)
    • 블로그팁 (3)
    • 디지털이야기 (2)
댓글
스프링연동하기
23
/108
2014. 7. 22. 18:46
스프링3(Spring3)MVC 연동 (3) - 서버값 웹페이지로 전송하기

지난 글에는 클라이언트에서 html form 값을 서버로 전송하였다면 이번 포스팅에는 서버값을 

웹페이지로 넘겨보도록 하겠음.


지난시간과 마찬가지로 HelloWorld 클래스에 컨트롤러를 추가로 해보도록하겠다.


우선 컨트롤러 코드는 다음과 같다.


@RequestMapping("/response")
public String response(Model model){
	model.addAttribute("value1", "값넘기기1");
	model.addAttribute("value2", "값넘기기2");
	return "response";
}


이어서 response.jsp 파일을 view 디렉토리에 생성하도록 하고 body 태그내에 

다음과 같이 작성해주자


값 1 : ${value1 }
<br/>
값 2 : ${value2 }

서버 컨트롤러에서 model객체를 이용하여 addAttribute를 해주었는데 value1/value2라는 key값을

이용하여 jsp 페이지에 EL태그를 사용하면 다음과 같이 화면에 key값의 value가 출력되는것을 

확인할 수 있을것이다.



잘 나오는고만~~ 하트3


지금까지 request /response에 대하여 알아보았다.





슈퍼맨슈퍼맨슈퍼맨



도움이 되셨다면 공감클릭! 궁금하신점은 댓글!!

저작자표시 (새창열림)

'스프링연동하기 > spring3 mvc 설정' 카테고리의 다른 글

스프링3(Spring3) MVC 연동 (4) - 서버에 파일전송  (0) 2014.07.22
스프링3(Spring3) MVC 연동 (2) - 폼값 전송 + 인코딩 설정  (7) 2014.07.22
스프링3(Spring3) MVC 연동 (1) - STS 다운로드 및 헬로월드 출력하기  (6) 2014.07.22
/107
2014. 7. 22. 17:07
스프링3(Spring3) MVC 연동 (2) - 폼값 전송 + 인코딩 설정

이번시간에는 


클라이언트 -> 서버로 값 전달하기를 다루어 보도록 하겠다.


우리는 보통 클라이언트 -> 서버로 값들을 전달하였을때 

request.getParameter("파라미터명")으로 값전달을 했었을 것이다.


스프링에서 위와 같은 방식으로도 값을 받아도 동일하게 받을 수 있지만

만약 여러 값을 받을경우에 model 클래스를 하나 생성해서 그안에다가 변수 선언 + getter / setter을 정의해주는 방법으로도 값을 서버에서 

받을 수 있을 것이다.


우선은 테스트를 위하여 기본 html 폼화면을 출력하는 컨트롤러+jsp페이지와 값 전달을 위한 request컨트롤러 하나를 만들어 보도록 하겠다.


연동 소스는 이전 시간에 생성했던 프로젝트에 이어서 작성하기로 하겠음.


1. 기본 폼화면(컨트롤러명 : /form, jsp 파일명 : form.jsp)


기존소스인 HelloWorld 클래스에 다음과 같은 컨트롤러를 맵핑해주도록 하자


@RequestMapping("/form")
public String form(){
	return "form";
}

이어서 WEB-INF -> view 디렉토리에 form.jsp를 생성해주고 다음과 같이 코드를 작성해보도록 

하자


<form action="/request" method="post">
	제목 : <input type="text" name="title"/>
	<br/>
	내용 : <textarea rows="10" cols="50" name="content"></textarea>
	<br/>
	<input type="submit" value="서버전달"/>
</form>


submit버튼 클릭시, 소스내에 form안에 정의한 값들을 받기위해  form action의 값인 /request명으로 컨트롤러 맵핑해주도록 하자


2. 클라이언트 -> 서버로 값 확인하기 위한 컨트롤러

* 두가지 방식으로 예를 들 수 있겠다. 

   일반적인 request.getparameter로 값 전달 받는방법과 model 클래스 생성하여 폼의 name

   명칭으로 맞춰주는 방식이 있다.


1) request.getParameter로 값 전달받기

@RequestMapping("/request")
public void request(HttpServletRequest request){
	System.out.println("제목:"+request.getParameter("title"));
	System.out.println("내용:"+request.getParameter("content"));		
}


2) model 클래스생성하여 값 전달받기

현재 com.spring.web패키지내에 model 패키지를 생성해준후 생성 패키지에 Model.java 클래스를 생성 후 다음과 같이 선언을 해주도록 하겠다.


 - RequestModel.java - 

package com.spring.web.model;

public class RequestModel {
	private String title;
	private String content;
	public String getTitle() {
		return title;
	}
	public void setTitle(String title) {
		this.title = title;
	}
	public String getContent() {
		return content;
	}
	public void setContent(String content) {
		this.content = content;
	}
}


다음 기존 /request  맵핑된 컨트롤러를 약간 수정해보도록 하자

@RequestMapping("/request")
public void request(RequestModel model){
	System.out.println("제목:"+model.getTitle());
	System.out.println("내용:"+model.getContent());
		
}


본인의 경우 실행시, 화면이 깨졌다.





인코딩설정이 안맞아서 그런거 같다.


이클립스 및 web.xml 인코딩 설정을 해주도록 하자


* 이클립스 인코딩 설정











* 스프링 인코딩 설정


web.xml 의 servlet-mapping 다음태그에 추가해보도록 하자

<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>



다시 실행해보도록 하자 




한글값까지 정상적으로 넘어왔다.

이번시간에는 클라이언트의 값을 서버로 전달하였다면, 

다음포스팅에는 서버값을 클라이언트로 전달해보도록 하겠다.





슈퍼맨슈퍼맨슈퍼맨



도움이 되셨다면 공감클릭! 궁금하신점은 댓글!!

저작자표시 (새창열림)

'스프링연동하기 > spring3 mvc 설정' 카테고리의 다른 글

스프링3(Spring3) MVC 연동 (4) - 서버에 파일전송  (0) 2014.07.22
스프링3(Spring3)MVC 연동 (3) - 서버값 웹페이지로 전송하기  (0) 2014.07.22
스프링3(Spring3) MVC 연동 (1) - STS 다운로드 및 헬로월드 출력하기  (6) 2014.07.22
/106
2014. 7. 22. 11:40
스프링3(Spring3) MVC 연동 (1) - STS 다운로드 및 헬로월드 출력하기

4일동안 휴가를 다녀오는 바람에 그동안 밀렸던 포스팅이나 해야겄다~


Spring에선느 제공하는 STS 를 이용하여 스프링 기본설정부터 DB설정등 다양한 설정을 다루어 

보도록 하겠음.. 하트3


확장자가 없는 restful 방식으로 진행 하도록 하겠음. ㅎㅎ 

보통 spring 진행하면 .do로 작업하는데 요놈이 거슬림 -_- ...



우선 툴을 다운로드 받도록 하자


다운로드 URL - http://spring.io/tools



SPRING TOOL SUITE의 DOWNLOAD STS로 STS툴을 다운로드 받도록 하자

이클립스와 같은 툴이라서 이클립스를 사용했었더라면 익숙한 화면일 것이다.


다운로드가 완료되었다면 압축해제!오케이 

(현재최신버전인 3.6.0 으로 진행)


sts-bundle -> sts-X.X.X.RELEASE -> STS 실행



[실 행 화 면]




[프로젝트 진행할 워크스페이스폴더 지정]




워크스페이스까지 지정 후, 프로젝트를 생성한다 

우클릭하여 New -> Spring Project




Spring Project를 생성하고자 한다면 프로젝트명을 입력하고 Select Spring version을 선택

(본인은 현재 최종인 3.2.3선택) 후,

Simple Projects -> Simple Spring Web Maven 선택 후 Finish 클릭




프로젝트 생성완료시 다음과 같이 프로젝트가 생성되는것을 확인 할 수 있다.




그럼 이제 웹서버를 등록해야 해보자 

이클립스와 동일하기 Servers -> 마우스 우클릭후, 

New -> Server  클릭




본인은 Tomcat 7.0으로 설정을 잡도록 하겠음




톰캣 설치 디렉토리 지정하고 JRE까지 설정 후 Finish를 해보도록 하자




아마 다음과 같이 프로젝트 추가가 되지 않을 수 있을 것이다.

이럴경우 다음화면처럼 Update Project를 해주도록 하자




[톰캣에 프로젝트 추가 안될시, 해결방법]






위 화면처럼 진행을 하면 다음 화면처럼 프로젝트 추가가 가능할것이다.



 

Finish!!


프로젝트 -> src -> main -> webapp -> mvc-config.xml xml파일이 존재한다.


해당 소스를 보면 


<context:component-scan
            base-package="org.springframework.samples.web"/>

주석으로 막혀 있는데 이부분을 풀고 base-package값을 본인이 작업하고자 하는 패키지에 맞춰서 작성하도록 하자

본인은 다음과 같이 설정을 하였다.


<context:component-scan base-package="com.spring.web"/>

그리고 위와같은 base-package 영역과 동일하게 패키지를 만들어 준다음, 추가로 controller라는 패키지를 하단에 추가한 후,

HelloWorld라는 클래스를 하나 생성하였다. 


생성한 HelloWorld 클래스내에 다음과 같이 코드를 작성하였다.


package com.spring.web.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class HelloWorldController {

	@RequestMapping("/helloWorld")
	public String helloWorld(){
		System.out.println("HelloWorld 콘솔내용");
		return "helloWorld";
	}
}

return값으로 넘겨준 문자열은 jsp 페이지를 의미한다. 

return "helloWorld" 를 주었으므로

helloWorld.jsp 를 하나 생성하도록 하자


jsp 생성경로는 src -> main -> webapp -> WEB-INF -> view안에다 생성해주면 되겠음.


생성된 jsp 내에 body 태그에 다음코드를 추가해보도록 하자


<H2>HELLO WORLD!!</H2>

코드는 작성이 완료 되었다.


본인은 프로젝트 명을 url에 작성하기 귀찮으므로 프로젝트명과 동일한 위치에 존재하는 Servers 폴더내에 본인이 추가한 웹서버디렉토리 내에 server.xml을 보면 거의 맨하단 context docbase= 어쩌구라는 태그가 존재한다.

거기서 path 값을 "/"변경해주었다.


<Context docBase="spring_study" path="/" reloadable="true" source="org.eclipse.jst.jee.server:spring_study"/>


이제 홈페이지 URL에 다음과 같이 호출을 해보았다


http://localhost:자신의웹서버포트/helloWorld


를 준다음의 동작화면이다.





이로써 spring의 mvc의 기본적인 hello world를 웹에 뽑아보았다.






슈퍼맨슈퍼맨슈퍼맨



도움이 되셨다면 공감클릭! 궁금하신점은 댓글!!

저작자표시 (새창열림)

'스프링연동하기 > spring3 mvc 설정' 카테고리의 다른 글

스프링3(Spring3) MVC 연동 (4) - 서버에 파일전송  (0) 2014.07.22
스프링3(Spring3)MVC 연동 (3) - 서버값 웹페이지로 전송하기  (0) 2014.07.22
스프링3(Spring3) MVC 연동 (2) - 폼값 전송 + 인코딩 설정  (7) 2014.07.22
이전 1 2 3 4 5 다음

티스토리툴바