JSON 8

93일차(2)/Android App(57) : mp3 파일 재생 예제 / 로그인 기능 구현

- 이전에 웹으로 만든 재생페이지를 안드로이드로 만들기! - webview로 띄울 수도 있지만 안드로이드 native를 사용해서 만들어볼 것이다. MainActivity (전체) package com.example.step23mp3player; import android.app.NotificationChannel; import android.app.NotificationManager; import android.content.ComponentName; import android.content.Context; import android.content.Intent; import android.content.ServiceConnection; import android.content.SharedPreferenc..

국비교육(22-23) 2023.02.21

82일차(1)/Android App(44) : 로그아웃 기능 구현

82일차(1)/Android App(44) : 로그아웃 기능 구현 - 로그인 기능 코드 리뷰 AndroidController - logincheck 요청에서 Map 요청 - Map을 responsebody로 요청하면 { } 이렇게 json 문자열로 응답된다. - session을 사용해서 저장된 id가 없으면 isLogin이라는 키 값으로 값을 담아준다. - 저장된 id가 있으면 true와 아이디를 담아준다. - 클라이언트가 웹브라우저가 아니고 안드로이드 앱이므로! json으로 응답한다. [ 웹서버가 json으로 응답하는 case ] 1. 웹브라우저에서 ajax 요청을 해올 때 2. 모바일 App에서 http 요청을 해올 때 1. 웹브라우저에서 ajax 요청을 해올 때 {"isLogin":true} 이런 ..

국비교육(22-23) 2023.02.06

78일차(1)/Android App(41) : Http POST방식 요청하기(4) - JSONArray 활용

78일차(1)/Android App(41) : Http POST방식 요청하기(4) - JSONArray 활용 - 이전 예제 코드리뷰 AsyncTask - 앱을 run하면 onCreate가 순식간에 실행되었다가 종료되면서 앱이 활성화된다. - 이후 여기에 등록한 리스너(전송버튼)를 누르면 어떤 객체로 실행의 흐름이 들어온다. - 위의 파란색 스레드도 UI 스레드이다. 앱이 처음에 활성화될때 사용된 스레드와 같은 스레드이다. - UI는 이 메인스레드 안에서만 업데이트할 수 있다. - 진행에 시간이 소요되는 불확실한 작업을 한다면? -> 원칙적으로 메인스레드에서는 하면 안된다. - 일반적으로 메인 스레드는 사용자의 입력에 반응해서 빠르게 반응해야 하는데, 그러지 못하기때문에... 그런 작업은 새 스레드에서 해..

국비교육(22-23) 2023.01.30

77일차(2)/Android App(38) : Http POST방식 요청하기(1)

77일차(2)/Android App(38) : Http POST방식 요청하기(1) - 새 모듈 생성 step17httprequest acitivity_main.xml - 웹서버는 html 형식의 문자를 출력해준다. - http 요청을 java 코드로 할 수 있을까? 어떻게 해야할까? → 웹브라우저에 java 코드로 직접 http요청을 할 수 있다. → 이 http요청을 통해 나중에 xml 이나 json 문자열을 받아올 것이다. → 이것을 안드로이드로 파싱해서 안드로이드 UI에 출력되도록 할 예정이다. - 웹서버 연동을 위한 준비작업! - 웹 서버에서 나오는 이런 브라우저의 코드를 java 코드를 사용해서 읽어오겠다! AndroidManifest - 인터넷 사용 허가를 위해서는 이렇게 2개의 설정이 필요 ..

국비교육(22-23) 2023.01.27

53일차(1)/Spring(12) : ajax 요청 JSON으로 응답하기, 파일 업로드 처리

53일차(1)/Spring(12) : ajax 요청 JSON으로 응답하기, 파일 업로드 처리 - updateform 요청/메소드 작성 - update 요청/메소드 작성 - spring에서 json으로 응답하는 방법 실습 - 파일 업로드 메소드 작성(ajax 요청 처리) - 서버를 시작하면 가장 기본으로 응답되는 페이지.(home) - 처음 프로젝트를 서버로 열면 이 경로로 요청해주지만, 이렇게 직접 요청할 수는 없다. (WEB-INF는 클라이언트에게 공개되지 않음. 직접 입력하면 이동되지 않는다) - context 경로의 최상위 경로를 요청하게 되면 home.jsp로 forward 이동이 되어서 이동한다. - 물리적인 위치는 webapp 안쪽이라고 생각하면 된다. - 저 문자열은 포워드 이동할 위치를 가..

국비교육(22-23) 2022.12.21

48일차(1)/React(14) : SPA(Single Page Application) 예제(2)

48일차(3)/React(14) : SPA(Single Page Application) 예제(2) - React로 Single Page App 만들기. - 대표적인 SPA 사이트는 gmail 이 있다. SPA는 한번 로딩되면 틀은 그대로이고 내용 창만 바뀔 뿐이다. - gmail은 같은 페이지안의 주소를 # 로 표시한다. - 이런 방식은 웹페이지가 아니라 앱을 사용하는 것 같은 느낌을 준다. - 이런 방식으로 만들려면 반드시 프레임워크의 도움을 받아야 한다.(Vue, React, Angular, ...) - 순수 js로 만들려면 미쳐버린다... 코딩의 자유도도 너무 높아서 유지보수가 어렵다. - 반면 gmarket 등 일반 웹페이지는 다른 링크를 누르면 전체 페이지가 새로고침 된다. - 여기서 페이지 소..

국비교육(22-23) 2022.12.14

36일차(2)/jsp(24) : 회원가입시 유효성 검증(validation) 기능 구현

*회원가입시 입력값에 대한 유효성 검증 - 중복 아이디 확인 기능 구현 - 비밀번호 확인시, 동일한 비밀번호를 넣었는지 확인하는 기능 구현 - 이메일을 양식에 맞추어 작성했는지 확인하는 기능 구현 *bootstrap 홈페이지- docs - form - validation : 링크 - 사용자가 폼 입력시 입력한 값이 사용 가능한지 불가능한지 여부에 따라 보이는 방식을 다르게 해주는 CSS가 있다. (유효성 검증) /users/ 회원 가입 폼입니다. 아이디 사용할 수 있습니다. 사용할 수 없는 아이디입니다. 비밀번호 비밀번호를 확인하세요. 비밀번호 확인 이메일 이메일 형식에 맞게 입력하세요. 회원가입 - bootstrap의 내용을 참고하여 class="is-valid" 추가 - 위와 같이 해당 input 요..

국비교육(22-23) 2022.11.28

34일차(2)/jsp(20) : 회원 프로필 이미지 등록, 수정 기능 구현

34일차(2)/jsp(20) : 회원 프로필 이미지 등록, 수정 기능 구현 - 어떤 이미지를 업로드한다면, 파일이 실제 업로드되는 폴더는 /upload 가 아니다 - /webapp/upload/kim1.png 라는 이미지파일이 업로드된다면 DB에는 /upload/kim1.png 을 저장하고 해당 이미지를 출력할때는 DB에 저장된 /upload/kim1.png를 불러와서 형식으로 이미지를 출력하는 것이다. - 파일을 업로드하면 저장된 파일 경로를 알 수 있다. 그 경로를 통해 DB에 이미지를 저장하 고, 그 경로에서 불러와서 src에 출력하는 것이다. - upload는 webapp아래에 있어서 클라이언트가 요청을 통해서 접근 가능한 폴더이다. - DB칼럼에 경로 값을 저장해두고, ajax로 이미지를 업로드..

국비교육(22-23) 2022.11.25