본문 바로가기

JAVA(STS)

[java] jsp, json 웹페이지에 데이터 값 띄우기 1 - getWriter() / 헤더 코드 포함

reference lesson > 서블릿 /JSP 생성 내용 연결하기 (추후 예정)

 

<getWriter().append() 매소드를 이용하여 특정 URL에 데이터를 담아보자>

- 서블릿을 지정하고, 해당 웹 페이지에 값을 출력해보자.

 

임의의 서블릿 값 : /json_selectAll.do

 

# 반드시 넣어야할 doGet헤더/doPost헤더 (doOption에 넣을 수도 있다)

 

<GET>

response.setHeader("Content-Type", "application/json;charset=utf-8"); //json타입 사용,

response.setHeader("Access-Control-Allow-Headers", "Content-Type");//헤더에 컨탠트 타입을 추가해줌

response.setHeader("Access-Control-Allow-Origin", "*"); //외부 사용자도 읽어올 있게 해줌

 

<POST>

request.setCharacterEncoding("utf-8"); // post방식으로 한글이 넘어오면 안깨지도록

>>get방식은 자동으로 깨지게 보정해주기 때문에 따로 작성하지 않아도 됨

 

 

#코드

package test.com;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

//서블릿 주소 설정
@WebServlet({"/json_selectAll.do"})
public class TestController extends HttpServlet {
	private static final long serialVersionUID = 1L;
       

    public TestController() {
        super();
    }
    
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

		response.setHeader("Content-Type", "application/json;charset=utf-8");
		response.setHeader("Access-Control-Allow-Headers", "Content-Type");
		response.setHeader("Access-Control-Allow-Origin", "*");
	
    		//모니터링을 위해 접속한 서블릿 주소 콘솔에 출력해줘. 
		String sPath = request.getServletPath();
		System.out.println("sPath:"+sPath);
		
        	//만약 서블릿 주소가 /json_selectAll.do이라면,
		if(sPath.compareTo("/json_selectAll.do")==0) {
			
           		//()안의 데이타를 웹 화면에 출력해줘
			response.getWriter().append(
					"[{\"num\":1, \"name\":\"kim1\",\"age\":11},"
					+ "{\"num\":2, \"name\":\"kim2\",\"age\":22},"
					+ "{\"num\":3, \"name\":\"kim3\",\"age\":33}]");
		}
	}


	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		doGet(request, response);
	}
}

 

 

#결과값

1. 값이 java 배열 형태"{ , , , }"로 잘 출력된 것을 확인할 수 있다.

 

 

next lesson > 2022.02.06 - [JAVA] - [java] jsp, json 웹페이지에 데이터 값 띄우기 2 - JSONArray / JSONObject 으로 배열 값 객체화