inblog logo
|
Uni
    JSPJAVAJSONJavaScript

    자바의 객체표현 JSON

    JAVA,JSON,JavaScript
    홍윤's avatar
    홍윤
    Aug 13, 2024
    자바의 객체표현 JSON
    자바의 객체표현 JSON
    notion image
    notion image
    notion image
    자바 형식으로 표현 한 것을 JSON이라고 한다.
    자바스크립트 객체
    let user2 ={ name:"Khan" , age:50};
    만들고
    let str = JSON.stringify(user); undefined str '{"name":"James","age":20}'
    이게 문자열로 만드는 법
    et jstr = '{"name": "홍길동","age":32}'; undefined jstr; '{"name": "홍길동","age":32}' let jobj = JSON.parse(jstr); undefined jobj; {name: '홍길동', age: 32} jobj.name; '홍길동'
    feedback!!!!
    <%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Insert title here</title>
    </head>
    <body>
    <button onclick="loadDoc()" id="btn">실행</button>
    <div id="demo"></div>
    <script>
    const btn = document.querySelector("#btn");
    btn.addEventListener("click", loadDoc);
    function loadDoc() {
    const xhttp = new XMLHttpRequest();
    xhttp.onload = function() {
    let json = this.responseText;
    let obj = JSON.parse(json);
    document.getElementById("demo").innerHTML = obj.name+"<br>" + obj.age+ "<br>" + obj.tel;
    }
    //xhttp.open("GET", "feedback?name=Kane&age=20&tel=010-1111-1111", true);
    xhttp.open("POST","feedback",true);
    xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    xhttp.send("name=Hue&age=20&tel=010-2222-3333"); //post방식으로 할거면 send()안에 뭐를 넣어줘야한다.
    }
    </script>
    </body>
    </html>
    servelt
    package servlet;
    import java.io.IOException; import java.io.PrintWriter;
    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.JSONObject;
    import Test.UserBean;
    @WebServlet("/feedback") public class FeedBackServelt extends HttpServlet { private static final long serialVersionUID = 1L;
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html; charset=UTF-8"); request.setCharacterEncoding("UTF-8"); PrintWriter out = response.getWriter(); String name = request.getParameter("name"); int age = Integer.parseInt(request.getParameter("age")); String tel = request.getParameter("tel"); UserBean user = new UserBean(name, age, tel); JSONObject jobj = new JSONObject(user); out.print(jobj); // out.print("Love_for_die"); //out.print("{\\"name\\":\\"James\\",\\"age\\":20}"); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html; charset=UTF-8"); request.setCharacterEncoding("UTF-8"); PrintWriter out = response.getWriter(); String name = request.getParameter("name"); int age = Integer.parseInt(request.getParameter("age")); String tel = request.getParameter("tel"); UserBean user = new UserBean(name, age, tel); JSONObject jobj = new JSONObject(user); out.print(jobj); }
    }
     
    JSONSERvlet
    <%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Insert title here</title>
    </head>
    <body>
    <button onclick="loadDoc()" id="btn">실행</button>
    <hr>
    <div id="demo"></div>
    <script>
    const btn = document.querySelector("#btn");
    btn.addEventListener("click", loadDoc);
    function loadDoc() {
    const xhttp = new XMLHttpRequest();
    let user = {
    name : "Hong",
    age : 32,
    tel : "010-3333-4444"
    }
    let juser = JSON.stringify(user);
    xhttp.onload = function() {
    // let json = this.responseText;
    // let obj = JSON.parse(json);
    document.getElementById("demo").innerHTML = this.responseText; //"이름:" + obj.name
    // + "|" + "나이:" + obj.age + "|" + "전화번호:" + obj.tel;
    }
    xhttp.open("POST", "FeedBackJson", true);
    xhttp.setRequestHeader("Content-type", "application/json");
    xhttp.send(juser);
    }
    </script>
    </body>
    </html>
    feedbackJSONServlet
    package servlet;
    import java.io.BufferedReader; import java.io.IOException; import java.io.PrintWriter;
    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.JSONObject;
    import DAO.UserDao; import Test.UserBean;
    @WebServlet("/FeedBackJson") public class FeedBackJsonServelt extends HttpServlet { private static final long serialVersionUID = 1L;
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html; charset=UTF-8"); request.setCharacterEncoding("UTF-8"); JSONObject user02 = new JSONObject(new UserBean("Ann", 27, "010-1111-1111")); PrintWriter out = response.getWriter(); out.print(user02); // out.print("{\\"name\\":\\"Ann\\",\\"age\\":27}"); // "{name":"Ann","age":27,"tel":"010-1111-1111"}" } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html; charset=UTF-8"); request.setCharacterEncoding("UTF-8");
    // JSONObject user02 = new JSONObject(new UserBean("Ann", 27, "010-1111-1111")); // out.print(user02);
    PrintWriter out = response.getWriter(); BufferedReader br = request.getReader(); String jstr = br.readLine(); JSONObject jobj = new JSONObject(jstr); String name = (String) jobj.get("name"); Integer age = (Integer) jobj.get("age"); String tel = (String) jobj.get("tel"); UserBean user = new UserBean(name, age, tel); UserDao dao = new UserDao(); int result = dao.inserta(user); if (result == 1) { out.print("success!!!"); } else { out.print("실패"); } }
    }
    Share article

    Uni

    RSS·Powered by Inblog