intellij

Spring/Spring icia 50일차

IntelliJ Project - 게시판 만들기 페이징 처리

1. 페이징할때의 규칙 만약 100개의 게시글이 있는데 한번에 100개의 게시글이 보여진다면 매우 비효율적일 것이다. 그러므로 페이징 처리를 해야 한다. 만약 총 게시글의 수가 55개라면 한페이지당 10개씩 보여져야 할 때 페이지 수는 6개여야 할 것이다. 페이지의 끝 번호를 알기 위해선 총 게시글의 수를 알아야 한다. 먄악 총 게시글의 수가 155개라면 다음 버튼으로 다음 페이지를 이용해야 할 것이다. 시작 페이지의 번호가 1이 아니라면 이전 버튼이 필요할 것이다. 만약 총 게시글의 수가 255개라면 현재 페이지의 번호가 1~10이면 시작 번호는 1이어야 할 것이고 현재 페이지의 번호가 11~20이면 시작 번호는 11이어야 할 것이고 현재 페이지의 번호가 21~26이면 시작 번호는 21이어야 할 것이다..

Spring/Spring icia 49일차

IntelliJ AJAX 코드리뷰 , AJAX란 ?

1. AJAX ( Asynchronous JavaScript and XML ) 이란? AJAX를 사용하려면 일단 라이브러리에 JQuery를 추가해야 한다. 본인은 3.6.1 버전을 사용하였다. 웹페이지에서 비동기적으로 서버와 데이터를 주고받는 기술이다. 기본적으로 JavaScript와 XML을 이용하여 데이터를 전송하며 최근에는 JSON , HTML 등 다양한 형식의 데이털르 지원하고 있다. AJAX를 사용하면 전체 페이지를 다시 로딩하지 않고도 서버로부터 데이터를 가져와서 웹페이지의 일부분만 갱신하거나 , 사용자 입력을 받아서 동적으로 서버와 상호작용할 수 있다. 이러한 기능은 사용자 경험을 향상하고 서버의 부하를 줄이는 등의 장점을 가지고 있다. 2. AJAX의 사용법 XMLHttpRequest 객체..

Spring/Spring icia 48일차

IntelliJ @RequestBody @ResponseBody

1. 사용처 Spring에서 비동기 처리를 하는 경우 @RequestBody와 @ResponseBody를 사용한다. 2. 클라이언트와 서버의 비동기 통신처리 웹에서 이루어지는 데이터 통신은 클라이언트(Client)와 서버(Server)간에서 이루어지는데 , 예를 들어 로그인 버튼을 누르면 입력한 아이디와 비밀번호 값이 서버로 넘어가 판단을 요청(Request)한다. 그러면 서버에서 이를 판단해 로그인을 허용할 것인지 결정을 한 후 클라이언트에 응답(Response)을 해준다. 즉 , 클라이언트에서 서버로 통신하는 메시지를 요청 메시지라고 하고 , 서버에서 클라이언트로 통신하는 메시지를 응답 메시지라고 한다. 비동기 통신이란 화면전환 ( F5 , Refresh 등 ) 없이 이루어지는 동작을 말하는데 , 비..

Spring/Spring icia 47일차

IntelliJ session이란?

1. Session 1 - 1 Session의 정의 망 환경에서 사용자 간 또는 컴퓨터 간의 대화를 위한 논리적 연결 프로세스들 사이에서 통신을 하기 위해 메시지 교환을 통해 서로를 인식한 이후부터 통신을 마칠 때까지의 기간 즉 , 일정 시간동안 같은 사용자 ( 브라우저 ) 로부터 들어오는 일련의 요구를 하나의 상태로 보고 그 상태를 일정하게 유지시키는 기술이다. 여기서 일정 시간이란 방문자가 웹 브라우저를 통해 웹 서버에 접속한 시점으로부터 웹 브라우저를 종료함으로써 연결을 끝내는 시점을 말하며 방문자가 웹서버에 접속해 있는 상태를 하나의 단위로 보고 세션으로 칭한다는 것이다. 2. HTTP Session이란 Session이란 서버가 해당 서버 ( 웹 ) 로 접근 ( Request ) 한 클라이언트 (..

Spring/Spring icia 46일차

IntelliJ Redirect

1. Redirect HTTP에서 redirect란 re(다시) + direct(지시하다)라는 뜻이다. www.test.com/page1 URL을 웹서버에 요청해서 서버는 HTTP 응답 메시지를 통해 www.test.com/page2로 로 다시 요청하라고 브라우저에게 다른 URL을 지시할 수 있다. HTTP redirect는 HTTP 표준으로 정의되어 있는데 최초 요정을 받는 웹서버는 HTTP 응답 상태 코드로 302를 보내고 응답 메시지 헤더 중 Location 값으로 리다이렉트 되어야 할 주소를 설정해 리턴한다. 브라우저 등의 웹 클라이언트는 HTTP 응답 메시지의 상태 코드가 302라는 것을 보고 리다이렉트라는 것을 인지하여 Location에 설정되어 있는 URL로 다시 재요청한다. 2. Redir..

Spring/Spring icia 44일차

IntelliJ와 MySQL 연동

create user user_springframework identified by "1234"; create database db_springframework; grant all privileges on db_springframework.* to user_springframework; root-context 복붙 데이터베이스 이름 수정 이름 value 수정 비밀번호 value 수정 에러 해결을 위해 resources에 mybatis-config.xml 파일 생성 후 배포파일에서 복붙 mapper 폴더 만든후에 book-mapper.xml 생성후 배포파일에서 복붙 create user user_springframework identified by "1234"; create database db_sprin..

Spring/Spring icia 44일차

Spring IntelliJ @Autowired @ModelAttribute

@Autowired 문법이란? 필요한 의존 객체의 타입에 해당하는 bean을 찾아서 주입하는 기능 Spring Container에 등록한 bean에게 의존 관계 주입이 필요할 때 ( DI = 의존성 주입 ) 을 도와주는 어노테이션 문법이다. Spring Container에 bean들을 모두 등록한 후에 의존성 주입 단계가 이루어지는데 이 때 @Autowired 어노테이션이 부여된 메소드가 실행되며 필요한 인스턴스를 주입한다. @Autowired은 생성자 , setter , field를 사용할 수 있다. 생성자 주입 방법 Constructor 생성자를 통해 의존 관계를 주입하는 방법이다. 객체가 생성될 때 딱 한번 호출되는 것이 보장된다. 의존관계가 변하지 않는 경우 필수 의존관계에 사용된다. 생성자가 하..

Spring/Spring icia 42일차

Spring IntelliJ 한글깨짐 해결법

IntelliJ에서 한글이 가끔 깨지는 경우가 있는데 VM options 에 -Dfile.encoding=UTF-8을 적어주면 해결된다.

Spring/Spring icia 42일차

Spring intelliJ Project 세팅법

IntelliJ Project를 실행해서 HelloWorld를 출력하는 것도 방법이 까다롭다. File > New > Project 선택 Generators에서 Maven Archetype 선택 Location에 프로젝트 만들 폴더 선택 JDK 선택 후 Create Name은 자유롭게 입력한다. Archetype은 maven-archetype-webapp 선택한다. 현재 창에서 열수있게 This Window를 선택한다. 서버를 열기 위해 Tomcat 을 다운로드해야 한다. 최신버전도 많지만 제일 대중적인 Tomcat 9를 다운로드할 것이다. 32-bit/64-bit Windows Service installer (pgp, sha512)를 클릭 기본 경로로 설정했다면 이곳인데 한번은 폴더로 들어가서 권한을..

Spring/Spring icia 41일차

Spring IntelliJ에 대해

1. IntelliJ란 Java 진영의 개발툴(IDE)에는 대표적으로 3가지가 있다. 이클립스 재단의 Eclipse JetBrains 사의 IntelliJ IDEA 썬 마이크로시스템에서 개발한 NetBeans 이클립스는 대부분 Plugins 형태로 많이 사용하고 있지만 IntelliJ는 IDE의 장점과 Visual Studio의 장점을 잘 섞어놓은 IDE라고 할 수 있다. 2. Eclipse가 있는데 IntelliJ를 사용하는 이유 1. 상당한 IDE의 안정성 이클립스를 사용하다보면 프로그램이 무겁고 플러그인 설치 충돌이 얼어나서 호환성에 문제가 생길 수도 있지만 IntelliJ를 사용하면 그런일은 매우 적다. 2. Java 개발 퍼포먼스 상승 IntelliJ에서는 편하게 VIsual Studio처럼 단..