ANDROID

json으로 안드로이드 에뮬 회원가입

장꾸꾸 2020. 12. 29. 16:47

 

 

 

**기존에 쓰던 Join.do(JoinService.java)에서 android로 response를 보내면 404 오류가 뜬다.

그건 원래 쓰던 constrollerAction이 response를 무조건 해당 페이지로 보내게 세팅되어 있기 때문에

그래서 Servlet을 하나 더 만들어줘야 한다. response에 JSON만 String으로 넣을거니까**

 

새로 만들어준 servlet 파일

package com.android.service;

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;

import org.json.simple.JSONArray;
import org.json.simple.JSONObject;

import com.login.dao.LoginDAO;
import com.login.dto.LoginDTO;


@WebServlet(name = "androidJoinServlet", urlPatterns = { "/androidJoin.do" })
public class androidJoinServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;

	@SuppressWarnings("unchecked")
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		request.setCharacterEncoding("UTF-8");
		////////////////////////////////////
		System.out.println("안드로이드 회원가입 service");
		////////////////////////////////////
		
		String id=request.getParameter("id");
		String pass=request.getParameter("join_pass");
		String name=request.getParameter("name");
		String phone=request.getParameter("phone");
		
		LoginDTO dto=new LoginDTO();
		dto.setMid(id);
		dto.setMpw(pass);
		dto.setMname(name);
		dto.setMphone(phone);
		
		// insert DB
		LoginDAO dao=new LoginDAO();
		
		// dao 성공 1, 실패 0
		int n=dao.registration(dto);
		request.setAttribute("n", n);
		
		JSONObject loginCk = new JSONObject();
		JSONArray arr = new JSONArray();
		if(n==1) {
			System.out.println("회원가입 성공");
			loginCk.put("result", "ok");
			
		}else {
			System.out.println("회원가입 실패");
			loginCk.put("result", "nk");
		}

		response.setContentType("application/x-json; charset=UTF-8");
		System.out.println(loginCk.toString());
		response.getWriter().print(loginCk.toString());

	}

}

 

안드로이드 파일(JoinActivity.java)은 경로를 다음과 같이 변경해준다.

 

 

데이터가 잘 들어가고 response가 JSON으로 들어오는 것을 확인