본문 바로가기
반응형

전체 글124

[SPRING 시작-3] #INTERCEPTOR 사용법 (ECLIPSE+SPRING+MAVEN) / <INTERCEPTORS> 설정방법 **** Interceptor는 Controller가 요청되기 전에 수행된다. 이 점 을 이용하여, Controller 호출 전 공통 로직 처리나 인증 처리 등에 활용된다. 아래에 자세히 설명해놨다!! ***** 사진출처 : http://egloos.zum.com/springmvc/v/504151 (1) servlet.xml com.common.loggerTest의 package의 loggerInterceptor 클래스가 Dispatacher Servlet에 우선시하여 읽히게 된다는 의미. 모든 url 처리는 /** 로 작성하고, 특정 Controller만 처리하기 위해서는 등으로 추가적으로 기술하여 처리하면 된다. (2) LoggerInterceptor 의 preHandle postHandle 인터셉터.. 2019. 9. 9.
[SPRING 시작-2] # WEB.XML 설정엔 무엇이 있을까? (ECLIPSE+SPRING+MAVEN) (1) STS 에서 기본적으로 제공해주는 설정 파일 외에, 사용자가 직접 컨트롤 하는 XML파일을 지정해주는 역할을 한다. 에서 설정되어있는 root-context.xml은 모든 서블릿과 필터에서 사용되는 루트 스프링 컨테이너에 대한 설정이다. contextConfigLocation /WEB-INF/spring/root-context.xml (2) 스프링 설정 정보를 읽는다. org.springframework.web.context.ContextLoaderListener (3) spring에서는 DispatcherServlet이 모든 요청을 받고, 요청의 URL과 맵핑하는Controller에 위임된다. 서블릿(Servlet)이란 보통 자바에서 동적 웹 프로젝트를 개발할 때, 사용자의 요청과 응답을 처리해.. 2019. 9. 9.
DISPATCHERSERVLET 이란? / DISPATCHERSERVLET의 개념 / URL 패턴 사용방법 스프링의 웹 기술은 MVC 아키텍처를 근간으로 한다 1. MVC 구조란 ? MVC란 비즈니스 로직 처리를 하는 모델 M, 화면 출력 뷰 V, 제어 로직 담당인 컨트롤러 C 로 클라이언트의 요청을 처리하는 응답구조를 뜻한다. MVC 아키텍처는 보통 프론트 컨트롤러(front Controller) 패턴과 함께 사용한다. 2. 프론트 컨트롤러(FrontController) 역할 이 프론트 컨트롤러는 주로 제일 앞에서 서버로 들어오는 모든 요청을 받아서 처리한다. 또한, 공통처리 작업을 먼저 수행 한 후, 적절한 세부 컨트롤러로 작업을 위임해주고 예외가 발생할 때는 일괄된 방식으로 에러를 처리해준다. 스프링에서 제공하는 서블릿/MVC의 핵심은 DispatcherServlet이라는 프론트 컨트롤러가 있다. 이 D.. 2019. 9. 9.
나는 어떤 마음으로 소프트웨어를 만들어야 하는가 최근 필자는 산드로 만쿠소의 소프트웨어 장인이라는 책을 읽게 되었는데, 이 책을 읽으며 느낀 점이 많았기 때문에 이번 포스팅에서는 산드로 만쿠소가 이 책을 통해 이야기하고자 하는 것이 무엇인지와 그에 따른 필자의 생각을 한번 편하게 적어보려고 한다. 표지가 깔끔하니 이쁘장하다 산드로 만쿠소가 이 책에서 계속 해서 강조하고 있는 것은 제목 그대로 프로페셔널리즘이다. 저자는 책의 초반에서는 내가 개발자로써, 또는 기술 전문가로써 비전문가인 고객들에게 어떠한 만족을 줄 것인지 혹은 고객이 진짜로 나에게 원하는 것은 무엇인지와 같은 질문을 통해 소프트웨어를 개발하는 장인으로써의 태도를 이끌어 내려고 하고 있다. 그러다가 후반에는 고객들이 원하는 바를 충족시켜주기 위해 개발자로써 어떤 방법들을 사용할 수 있는지 .. 2019. 9. 9.
[JSP] 서블릿(Servlet)이란? 1. Servlet(서블릿) 서블릿을 한줄로 정의하자면 아래와 같이 정의할 수 있습니다. 웹프로그래밍에서 클라이언트의 요청을 처리하고 그 결과를 다시 클라이언트에게 전송하는 Servlet 클래스의 구현 규칙을 지킨 자바 프로그래밍 기술 간단히 말해서, 서블릿이란 자바를 사용하여 웹을 만들기 위해 필요한 기술입니다. 그런데 좀더 들어가서 설명하자면 클라이언트가 어떠한 요청을 하면 그에 대한 결과를 다시 전송해주어야 하는데, 이러한 역할을 하는 자바 프로그램입니다. 예를 들어, 어떠한 사용자가 로그인을 하려고 할 때. 사용자는 아이디와 비밀번호를 입력하고, 로그인 버튼을 누릅니다. 그때 서버는 클라이언트의 아이디와 비밀번호를 확인하고, 다음 페이지를 띄워주어야 하는데, 이러한 역할을 수행하는 것이 바로 서블.. 2019. 9. 9.
[Spring Framework][STS] STS 설치 에러 * 참고: http://stackoverflow.com/questions/25255834/eclipse-sts-welcome-dash-board-error-unable-to-see-welcome-dash-board Eclipse (STS) Welcome dash board error - Unable to see welcome dash board when I am trying start STS (Spring Tool Suite) I am getting this error: Plug-in "org.springsource.ide.eclipse.commons.gettingstarted" was unable to instantiate class "org.springsource.ide.eclipse. stackov.. 2019. 9. 9.
ROOT-CONTEXT.XML과 POM.XML을 같이 설정해보자 지금 현재의 root-context.xml 과 jdbc.properties 파일의 모습은 밑의 그림과 같을 것입니다. A. 현재 root-context.xml 파일 B. 현재 jdbc.properties 파일 위에 그림처럼 되었으면, 이젠 mybatis 사용을 위한 설정을 한번 해보도록 하지요. 1. root-context.xml 파일에 위의 코드를 추가해줍시다. 자 또 빨간줄이 쫙 그였죠? 라이브러리가 필요합니다. pom.xml에 밑에 두개를 추가해줍시다. (추가하는 방법은 7번째 수업에 나와있습니다.) 자 그럼 mybatis가 도대체 뭐냐? 'MyBatis 는 개발자가 지정한 SQL, 저장프로시저 그리고 몇가지 고급 매핑을 지원하는 퍼시스턴스 프레임워크이다. 기존에 jdbc connection, sq.. 2019. 9. 9.
@Annotation / 어노테이션 정리 관련 문서 http://docs.spring.io/spring/docs/current/spring-framework-reference/htmlsingle/ http://docs.spring.io/spring/docs 목차 @Component @Required @Autowired @Qualifier @Resource @Scope @PostConstruct @PreDestroy @Inject @Service @Repository @Controller @RequestMapping @RequestParam @SessionAttributes @RequestBody @ResponseBody @PathVariable 이 글은 스프링 2.x 기준으로 작성되었음. 사용빈도가 높은 어노테이션 위주로 정리. 목차에 없는 항.. 2019. 9. 9.
쌈닭 같은 상대의 공세를 잠재우는 기술 이번에는 상대의 말에 반론을 제기할 때 반드시 알아야 할 기본 법칙을 자세히 짚어보겠습니다. 맞대응이든 반론이든, 중요한 것은 능동적으로 대화를 이어나가는 자세입니다. 상대의 기세를 어떻게 누르고, 어떤 타이밍에 치고 나갈 것이냐에 승패가 달려 있다고 해도 과언이 아닙니다. 이는 이미 여러 심리학 연구를 통해 그 해답이 밝혀져있는데요. 지금부터 상대가 험한 말을 뱉지 못하게 하는 방법과 상대가 내 말을 순순히 받아들이게 만드는 방법을 살펴봅시다. 1. 무조건 '천천히' 말하라 우선, 기억해야 할 중요한 팁은 무조건 천천히 말하라는 겁니다. 인간이라면 누구나 자신도 모르는 사이 상대방이 이야기하는 속도에 자신을 맞추게 됩니다. 어디서 “불이야!”라는 외침이 들렸는데, 주위 사람들의 반응이 시큰둥하면 ‘응?.. 2019. 9. 9.
ajax 200에러 뜰 때 해결 방법 200 : SyntaxError: Unexpected Token 위와 같은 에러 발생 시 ajax 요청 했던 속성 값을 변경하면 된다. dataType : "json", json을 html로 바꿔서 해결. 2019. 9. 6.
[JSP]for input String 에러 처리 방법 List 2019. 9. 6.
jsp 파라미터 한글 깨짐 현상 해결 방법 get방식으로 script에서 loaction.replace나 location.href를 해주면 한글이 깨질 수 있다. 아래와 같이 해결해보도록 하자! GET 의 경우 1. Server 에서의 server.xml파일 설정하여 해결하기 Tomcat의 server.xml에 URIEncoding 옵션을 추가해 준다. 아파치를 연동하여 AJP를 사용할 경우 AJP connector에도 해당 옵션을 추가해 준다. 1 2 cs 탭안에 URIEncoding="UTF-8" 코드를 추가해준다. 이 역할은 URI가 넘어갈 때 기본인코딩을 설정해준다. 위와 같이 설정하면 따로 인코딩과 디코딩을하지 않아도 된다. (아직까지는.. ) 2. 인코딩해서 보내고 디코딩해서 받기 인코딩 1 2 3 4 5 6 7 $(document)... 2019. 9. 6.
윈도우 BATCH 파일 작성 팁 batch 파일 작성을 위한 최고의 설명 사이트 모음 1. http://ss64.com/ 2. http://www.dostips.com/DtTipsStringManipulation.php commandline을 리턴 결과로 받아서 쓰는 방식 1 : http://www.tomshardware.com/forum/230090-45-windows-batch-file-output-program-variable batch로 sleep 임의 구현 : http://hallang.tistory.com/248 참고 사이트 1 : http://cshap.tistory.com/entry/windows-%EB%B0%B0%EC%B9%98-%ED%8C%8C%EC%9D%BC-%EA%B8%B0%EB%B3%B8-%EB%AC%B8%EB%.. 2019. 9. 6.
Javascript Iterator 란 무엇인가? Javascript Iterator ECMA2015 문법이 추가되면서 javascript는 큰 변화를 겪어가는 중이다. 개발하는데 정말 유용한 개념들이 되었는데, 한꺼번에 많은 스펙들이 추가되면서 생각보다 조명받지 못한 개념들도 많다. 그 중에서 우리가 많이 사용하지만, 또 간과하기 쉬운 개념인 Iterator(반복자)에 대해 알아보도록 하자. for-of Iterator에 대해 이야기 하자마자 갑자기 for-of가 나온 것인지 의아할 것이다. 하지만for-of 가 그 무엇보다 Iterator와 매우 밀접한 연관을 지닌 문법인데 이제부터 차근차근 알아가 보도록 하자. for-of 가 생긴 배경에 대해 알아보기 위해서 약간 과거로 거슬러 올라가보도록 하자. ES5 시절, 자바스크립트에서 object 를 순.. 2019. 9. 6.
오라클 hint 모음 힌트의 사용법 {SELECT | INSERT | UPDATE | DELETE} /*+ hint [text] [hint [text]] ... */ 혹은 {SELECT | INSERT | UPDATE | DELETE} --+ hint [text] [hint [text]] ... - 이러한 힌트의 사용은 SQL 전체가 아닌 쓰여진 SQL 블럭에만 적용됩니다. 힌트의 종류 별 분류 Optimization Goals and Approaches ALL_ROWS 혹은 FIRST_ROWS CHOOSE RULE Acess Method Hints AND_EQUAL CLUSTER FULL HASH INDEX 혹은 NO_INDEX INDEX_ASC 혹은 INDEX_DESC INDEX_COMBINE INDEX_FFS ROWID.. 2019. 9. 6.
jsp form post 전송 시 한글 깨지는 현상 해결법 jsp $("#form").attr("action", "/aa/bbb").submit(); 전송 시 form에 있는 파라미터가 한글일 경우 보내면 깨진다. 해결법 web.xml에 encodingFilter org.springframework.web.filter.CharacterEncodingFilter encoding utf-8 encodingFilter /* 를 추가하면 post 전송 시 한글이 깨지지 않는다. 2019. 9. 6.
ASP 기본 문법 문자열 출력 변수와 문자열 출력 변수와 문자를 연결할때 &을 사용합니다. 배열 if문 리턴값이 없는 함수 Result: 리턴값이 있는 함수 함수명과 동일한 변수명에 리턴하고자 하는 값을 넣어 함수를 종료하면 됩니다. 페이지이동 설마 요즘세상에도 서버측에서 사용자 액션에 따른 DB작업 수행후 자바스크립트 location.href로 페이지 이동시키는분 안계시죠? 이스케이프 ASP에서 문자열을 출력할때 쌍따옴표를 쓰는데 출력할 문자열에 쌍따옴표가 포함되어 있을때는 쌍따옴표를 그 앞에 한번 더 써주시면 쌍따옴표가 한번만 정상적으로 출력됩니다. Response.Write "Raju told ""ASP is a better scripting language""" 위와 같은 문장을 출력하면 Raju told "ASP.. 2019. 9. 6.
JAVA 관련 기본 지식 OOP란 ? 데이터를 객체로 취급하여 프로그램에 반영한 것이며, 순차적으로 프로그램이 동작하는 기존의 것들과는 다르게 객체의 상호작용을 통해 프로그램이 동작하는 것을 말합니다. 캡슐화, 다형성, 상속 을 이용하여 코드 재사용을 증가시키고, 유지보수를 감소시키는 장점을 얻기 위해서 객체들을 연결 시켜 프로그래밍 하는 것 입니다. 자바의 메모리 영역(간단하게 설명) 1. 메서드 영역 : static 변수, 전역변수, 코드에서 사용되는 Class 정보 등이 올라간다.코드에서 사용되는 class들을 로더로 읽어 클래스별로 런타임 필드데이터, 메서드 데이터 등을 분류해 저장한다. 2. 스택(Stack) : 지역변수, 함수(메서드) 등이 할당되는 LIFO(Last In First Out) 방식의 메모리 3. 힙(H.. 2019. 9. 6.
소프트웨어 개발 방법론? 소프트웨어 개발 방법론 (Methodology, Method +Knowledge)란, 소프트웨어 개발에 필요한 반복적인 과정 (절차, 방법, 산출물, 기법, 도구) 을 체계적으로 정리한 것. 첫번째는 '구조적 방법론' 입니다. 구조적 방법론은 절차 중심의 소프트웨어 개발 방법론으로코드를 제한된 구조에서 생성하여 순차적으로 실행시키는 특징이 있습니다.알고리즘 단위인 순차(sequencing), 선택(selection), 반복(iteration)의 구조로코드를 표현하므로써 프로세스 단위로 문제를 해결하고, 코드 보안을 유지하며 유지보수를 용이하게 합니다. 폭포수 모형 [출처 : https://ko.wikipedia.org) 두번째는 '정보 공학적 방법론' 입니다. 1980년대에는 정보 시스템이 단순 업무 지.. 2019. 9. 6.
[번역] React를 본격적으로 하기 전 알면 좋은 6가지 Table of contents By default, setState triggers a re-render setState updates the local state asynchronously Component Lifecycle is important! Use componentWillReceiveProps Use React Developer Tools Use CRA(Create React App) 1. By default, setState triggers a re-render 기본적으로 setState 메소드는 해당 컴포넌트의 재렌더링(re-render)을 발생시킨다. 리액트의 기본 동작은 애플리케이션을 구성하고 있는 컴포넌트에서 발생하는 모든 변경사항에 대해서 다시 렌더링 하는 것이고 대부분의 경우 이.. 2019. 9. 6.
React.js란? 디자이너나 프론트엔드 개발자가 React.js 입문하는데 도움이 되는 글입니다. '최근 React.js라는 게 있던데 어떤거야?'라는 의문을 가지셨던 분들이 대상입니다. React..js란 React.js는 UI 파트(구성부분) 을 만들기 위한 라이브러리입니다. Facebook이 oos로 공개했습니다. React.js는 어떤 경우에 사용하는가? 예를 들면 아래처럼 id로 'dentaku'를 지정하면 '전자계산기 폼이 표시되고 버튼을 누르면 계산도 할 수 있다' 이런 부품을 만들고자 하는데 적합합니다. //sample.html ... 이미 전 세계의 개발자들이 React.js로 UI 파트를 열심히 만들고 있습니다. date Picker의 예 이하는 스크린샷입니다. 실제 조작은 ElementalUI의 사이트.. 2019. 9. 6.
반응형