본문 바로가기

프로그래밍/웹 프로그래밍12

최신 웹개발 환경 구글 트랜드를 보면 다음이 짱임 몽고디비, 레디스익스프레스노드제이에스앵귤러제이에스 이 MEAN 세트가 좋음.전부 json으로 통신이 가능 노드js의 장점 - 싱글 스레드를 core개수만큼 만듬npm에 엄청난 라이브러리가 개발됨베이팔, 우버, 링크드인 등에서 노드제이스를 사용함중국은 바이두 푸시가 좋음. 그릭 노드 js가 1/3의 분량으로 개발이 가능함. 또한 레스트 풀 + json 형태임.자바스크립트가 실제로는 c++로 변환되어 사용됨.속도가 빠르겠네. 전부 비동기 콜백 방식이라 락이 안걸림. nginx = 노드제이에스와 유사한 구조임.이게 아파치보다 훨씬 빠름 스프링=자바보다 속도도 훨 더 낫다네. --몽고디비 : 마스터 슬레이브 구조가 매우 쉬움샤딩, 데이터 분할 저장도 매우 쉽게 구현가능함. 자동으.. 2015. 8. 12.
RESTFUL API 철학 : HTTP 헤더에 이미 필요한 기능들이 다 포함되어있으니까, HTTP 헤더를 최대한 사용하자. 기존에는 표준으로 정해진 웹 통신 규약이 없었다. 이를 표준화 시키기위한 시도가 바로 REST API.REST API 는 엄격한 규약이 아니고, 개발 방법론이자 개발 철학이다. 규칙들1. Stateless, 인증에 있어서 세션과 쿠기를 쓰지 않는다. 대신에 토큰을 사용한다.2. Cacheable, 원래의 http처럼 캐쉬를 쓸 수 있다.3. Client-Server, 클라이언트 서버 모델4. Layered System, 분산 서버를 사용. 세션을 쓰면 이부분을 구현하기가 힘듬(ex)페이스북 서드파티 로그인 같은것을 구현해내기 어려움) 그래서 토큰이 중요하다.5. Code on Demand(선택적), 다양.. 2014. 7. 22.
[톰캣] 리눅스 톰캣 재시작 cd tomcat/bin/ 이동하면 tomcat 실행 파일이 존재합니다. ./shutdown.sh 2014. 5. 18.
[HTML] onsubmit onsubmit 을 이용해 폼체크를 하신후 submit을 하실거면 onsubmit="return formck();" 이렇게 해주셔야 onsubmit에서 true일시 submit을 false 일시 submit을 안날리게되요 ㅋ[출처] [javascript]form에서 onsubmit return false가 먹히지 않을때 에러 해결|작성자 써니 http://les2575.blog.me/70158666668 onsubmit의 의미 -> submit버튼을 누르기전에 특정 일을 처리하며, true일때만 submit을한다 2014. 5. 18.
세션 한글 정보 처리 http://blog.naver.com/gdrtlee?Redirect=Log&logNo=100131252789 보는것 처럼, post로 전송하고 서블릿에서는 req.setCharacterEncoding("utf8");resp.setContentType("text/html; charset=utf8");JSP에서는 (기능은 똑같음) 2014. 5. 13.
세션과 쿠키 세션과 쿠키 둘다 안드로이드 프리퍼런스처럼 key값과 내용물을 묶어서 보관하는 것.다만 쿠키는 웹브라우저에 저장, 세션은 웹서버쪽에 저장함.사용법도 거의 유사함. 쿠키는 보안이 필요 없는 데이터를 저장하는게 좋고, 세션은 보안이 중요한 데이터를 저장하는게 좋음. 그리고 세션은 같은 웹디렉토리안에있는 웹컴포넌트끼리는 데이터공유가 가능. 쿠키는 웹브라우저 및 기타 다른프로그램에서도 접근가능. http://rooney-textcube.blogspot.kr/2009/08/jsp-%EC%84%B8%EC%85%98%EC%9D%84-%EC%9D%B4%EC%9A%A9%ED%95%B4%EC%84%9C-%EB%A1%9C%EA%B7%B8%EC%9D%B8%EC%83%81%ED%83%9C-%EC%9C%A0%EC%A7%80.html 2014. 5. 7.
JSP 와 서블릿에서의 클래스 멤버 변수 servlet의 경우는 WAS가 기동시 servlet 인스턴스 하나만 생성하여 모든 worker thread가 공용으로 사용하기 때문에 위와 같은 현상이 발생합니다. 전역변수(정확히는 클래스의 member 변수) 역시 인스턴스 별로 관리가 되기 때문에 위 코드는, wait 수행 전 worker thread들이 str 변수 값을 계속 덮어쓰기 때문에 발생하는 현상입니다. JSP 같은 경우는 기본적으로 servlet과 같이 취급되나, JSP 파일 내에 기술된 기본적인 모든 변수들이 local 변수로 취급되므로 상대적으로 servlet보다는 안전합니다. 그러므로 servlet 사용시 전역변수 및 member 변수는 모든 요청이 공통으로 사용해야 하는 read only 성격의 데이터만을 사용하는 것이 안전하며,.. 2014. 5. 6.
HTML 레퍼런스 # Youtube iframe 삽입 시 가운데 정렬하기 https://stackoverflow.com/questions/8366957/how-to-center-an-iframe-horizontally http://www.w3schools.com/tags/default.asp - div 태그란음.. 웹표준이 중요해지면서 출력하는 모든 태그를 통합해버린 녀석이 div인듯.원래는 레이어?같은 용도였으나, 그림도넣고 글도넣고 테이블처럼 할수도있고 무궁무진한듯.http://gskool.tistory.com/43http://xxwony.egloos.com/55671http://www.everdevel.com/kr/main/main.php - Table / thead tbody tfoothttp://blog.nave.. 2014. 5. 6.
자바스크립트, 함수의 다양한기능 함수 포인터도 됨. http://installed.tistory.com/entry/6-%ED%95%A8%EC%88%98-%EC%9D%B5%EB%AA%85%EC%9D%98-%ED%95%A8%EC%88%98-%EC%84%A0%EC%96%B8%EC%A0%81%ED%95%A8%EC%88%98-%EA%B0%80%EB%B3%80%EC%9D%B8%EC%9E%90-%ED%95%A8%EC%88%98-%EB%93%B1-%EC%83%9D%EC%84%B1%EB%B2%95 window.onload : onstart 함수라고 보임. 최초 로드시 자동 실행http://darky.egloos.com/1191555 2014. 5. 6.
JSP,javascript 페이지 이동하기,타이머 사용하기 - JSP 페이지 이동1. pageContext.forward : 이녀석은 원래 웹서버가 내부 자원을 호출할 때 사용. 그래서 내부 데이터를 파라미터 객체로 공유가능함. 대신 외부 url접근 불가 2. response.sendRedirect : 웹브라우저에게 요청하여 외부에서 리다이렉팅. 따라서 밖에있는 웹서버 또한 접근이 가능. 단, 외부용인만큼 url인코딩으로 데이터를 넘겨야함. (그리고 원래 URL변경시 쓰던녀석이라 url흔적을 남기지 않음.) -경로/로 시작하면 URL을 처음부터 인식그렇지 않으면 현재위치에서 상대적인 URL로 인식 ex) /sp/dao/SignDao -> ULR 절대 경로 dao/SignDao -> 현재 위치에서 다음 경로를 덧붙임 getRealPath("파일명") : 해당파일의.. 2014. 5. 5.
자바스크립트 http://kimsee.tistory.com/115 자바스크립트 타임 아웃setTimeout(goUrl(url), sec); 2014. 5. 5.
[스프링 소개] STS, Maven, Git hub 요즈음 스프링으로 간단한 웹사이트를 개발하려고 공부중이다.무려 7만원 어치의 토비의 스프링을 1,2 권 모두 구입하였으나.. 다소 원론적, 이론적인 이야기가 너무 많아 재미가 없다. 꾹 참고 보려했으나 나는 실제로 경험해보고 부딪혀 보면서 무언가 배우는 스타일이라 맞지 않았다. 그래서 작년에 창업 할 때 동료 프로그래머가 만든 게임 운영툴 소스를 분석하여 공부를 하고 있는데, 너무 다양한 기술들이 적용되어 분석이 쉽지 않다. 로그인 관련된 부분을 아이에 Spring_security라는 녀석이 통째로 담당하더라.. 일단 나는 웹을 php이후로 거의 처음 해보는 지라 아주 초보적인 내용을 적어보겠다.Spring은 대한민국 전자 정부 표준 프레임워크이며, 실제로 자바기반의 웹 개발 프레임워크중 세계적으로 제일.. 2014. 4. 28.