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 으로 배열 값 객체화
'JAVA(STS)' 카테고리의 다른 글
[java] 대용량 문자열 처리 객체 StringBuilder() (대용량 문자열 합체시 유용한 객체)와 복합 연산자 "+=" 속도 비교 (0) | 2022.02.05 |
---|---|
[java] java network, 특정 URL로부터 정보를 얻어오는 방법 1 - 접근/읽어오기 (0) | 2022.02.05 |
[java] 클래스(class), 객체(object), 인스턴스(instance)의 개념 간단 정리 (0) | 2022.02.05 |
[SQL] CRUD 기본 문장(insert, update, delete, selectOne, selectAll, searchList)_java, jdbc (0) | 2022.02.03 |
[java] 오류 문장 의미 모으기 (0) | 2022.02.03 |