인코딩 설정하기

  • 이 블로그의 글은 JAVA DB 엔지니어링 과정 수업을 위해 작성된 글입니다.

  • 이미지로 인해 글이 길어질 수 있습니다.

  1. web.xml 파일 수정

  2. STS 인코딩 설정

  3. jsp 파일 인코딩 설정

  4. GitHub에 커밋 후 push

web.xml 파일 수정

  • src/main/webapp/WEB-INF/web.xml 파일 클릭 > Source 클릭 후 아래 코드를 추가

<filter>
   <filter-name>encoding</filter-name>
<filter-class>
org.springframework.web.filter.CharacterEncodingFilter
</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
   </init-param>
</filter>
   
<filter-mapping>
<filter-name>encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>



STS Workspace 인코딩 설정

  • 메뉴 Window > Preferences 클릭


  • General > Workspace 클릭 >Text file encoding> Other에서 UTF-8 설정 후 Apply



jsp 파일 인코딩 설정

  • src > main > webapp > WEB-INF > views > home.jsp 파일 제일 상단에 아래 코드를 추가 후 서버 실행

  • <%@ page language="java" contentType="text/html; charset=UTF-8"
       pageEncoding="UTF-8"%>


GitHub에 커밋 후 push

  • GitKraken 실행

  • 변경사항 선택 후 Stage all changes 클릭


  • 커밋 내용 입력 후 커밋 클릭


  • push 클릭



스프링 프로젝트 시작하기

  • 이 블로그의 글은 JAVA DB 엔지니어링 과정 수업을 위해 작성된 글입니다.

  • 이미지로 인해 글이 길어질 수 있습니다.

  1. github에 저장소 생성하기

  2. 내 PC에 저장소 클론하기

  3. 스프링 프로젝트 생성하기

  4. 프로젝트 실행하기

github에 저장소 생성하기


  • 저장소 이름 입력

  • 링크 복사



내 PC에 저장소 클론하기

  • GitKraken 실행

  • 메뉴 File > Clone Repo 클릭

  • Clone > GitHub.com > 저장소 선택 후 Browse 클릭


  • PC에 연결한 폴더를 선택 후 폴더선택 클릭


  • Clone the repo! 클릭


  • Open Now 클릭 > Initialize 클릭


  • Push 클릭 > Submit 클릭



스프링 프로젝트 생성하기

  • STS 실행

  • File > New > Spring Legacy Project 클릭


  • Use default location 클릭 해제 후 Browse... 클릭


  • 클론을 통해 생성된 폴더 선택


  • 프로젝트명 기입 후 Spring MVC Project 선택 후 Next 클릭, Yes 클릭(STS 실행 후 처음만 뜸)


  • 프로젝트 패키지명 기입 후 Finish 클릭: kr.green.spring


프로젝트 실행하기

  • 프로젝트 우클릭 > Run As > Run on Server 선택


  • Finish 클릭


  • 액세스 허용 클릭(방화벽 설정에 따라 안 뜰수도 있으며, 한번 설정하면 이후에 뜨지 않음)


  • 실행 결과

GitHub에 Push하기

  • GitKraken 실행

  • .gitignore파일 생성

    • 아무파일이나 우클릭 > ignore > 'ignore 파일명 클릭'


    • ignore 클릭

  • .gitignore파일 클릭 > Edit this file 클릭 후 다음 코드 추가

  • # Created by https://www.gitignore.io/api/java,java-web
    # Edit at https://www.gitignore.io/?templates=java,java-web

    ### Java ###
    # Compiled class file
    *.class

    # Log file
    *.log

    # BlueJ files
    *.ctxt

    # Mobile Tools for Java (J2ME)
    .mtj.tmp/

    # Package Files #
    *.jar
    *.war
    *.nar
    *.ear
    *.zip
    *.tar.gz
    *.rar

    # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
    hs_err_pid*

    ### Java-Web ###
    ## ignoring target file
    target/

    # End of https://www.gitignore.io/api/java,java-web
  • Stage File 클릭 > Save and stage 클릭


  • 커밋 내용 작성 후 커밋 클릭


  • Stage all changes 클릭하여 커밋내용 작성 후 커밋


  • Push클릭하여 온라인 저장소에 저장



수고하셨습니다.!!!


변수

학습 목표

  1. 변수를 선언할 수 있다.

  2. 콘솔에 변수값을 출력하고 입력 받을 수 있다.

표준 출력 함수 : printf

  • 문자열을 콘솔창에 출력하는 함수로 stdio.h 파일안에 있다.

    • 문자열은 쌍따옴표("") 안에 있는 문자들이 문자열이다.

    • 문자는 따옴표('')안에 있는 문자 1개가 문자이다.

  • 기본 사용 예시

    #include <stdio.h>
    int main(){
       printf("Hello world\n");
       return 0;
    }
  • printf함수로 변수값을 출력하기 위해선 서식문자가 필요하다.

    • 대표적인 서식 문자 종류

      서식문자자료형비고
      %c문자문자 출력
      %dint정수 출력
      %lldlong long정수
      %ffloat실수 출력
      %lfdouble실수 출력
      %schar 배열, 문자열문자열 출력
    • 문자열 안에 있는 서식문자 갯수 만큼 문자열 뒤에 ,와 값(상수 또는 변수 또는 식)이 와야 한다.

    • 예시


      #include <stdio.h>
      int main(){
         int num = 10, num2 = 20;
         char op = '/';
         double res = 0.5;
         //%.2lf는 소수점 둘째자리까지 출력
         //서식문자가 4개이므로 ,값이 4개 와야 한다.
         printf("%d %c %d = %.2lf\n",num1, op, num2, res);
         //출력 결과
         //10 / 20 = 0.50
         return 0;
      }

표준 입력 함수 : scanf

  • 콘솔에서 입력받은 값을 변수에 저장하는 함수로 stdio.h 파일안에 있다.

  • printf 함수는 문자열 안에 서식문자 수만큼 값이 와야 한다면 scanf는 서식문자 수만큼 주소가 와야 한다.

  • 주소 연산자 : &

  • 예시 - 한개씩 입력받는 예시

    #define _CRT_SECURE_NO_WARNINGS
    #include <stdio.h>
    int main(){
       int num;
       char op;
       double res;
       printf("정수를 입력하세요 : ");
       scanf("%d",&num);
       printf("문자를 입력하세요 : ");
       /*
       문자 입력 시, 문자 입력하기 전 다른 변수를 입력받았다면 %c앞에 공백 필수,
       안넣으면 엔터가 자동으로 %c를 통해 op에 저장
       */
       scanf(" %c",&op);
       printf("실수를 입력하세요 : ");
       scanf("%lf",&res);
       printf("num = %d, op = %c, res = %.2lf\n", num, op, res);
       return 0;
    }
  • 예시 - 여러개 입력받는 예시

    #define _CRT_SECURE_NO_WARNINGS
    #include <stdio.h>
    int main(){
       int num;
       char op;
       double res;
       printf("정수, 문자, 실수를 입력하세요 : ");
       scanf("%d %c %lf", &num, &op, &res);
       printf("num = %d, op = %c, res = %.2lf\n", num, op, res);
       return 0;
    }
  • scanf 사용 시 다음과 에러가 나오는 경우

    심각도 코드  설명  프로젝트    파일     비표시 오류(Suppression) 상태
    오류 C4996 'scanf': This function or variable may be unsafe.
    Consider using scanf_s instead. To disable deprecation,
    use _CRT_SECURE_NO_WARNINGS. See online help for details.
    • 원인 : 컴파일러 버전이 높아 scanf 대신 scanf_s함수를 사용하기를 권장

    • 해결방법

      • 방법1 : scanf_s 사용

      • 방법2: scanf를 사용하기 위해 다음 코드를 첫줄에 추가


        #define _CRT_SECURE_NO_WARNINGS


변수

학습 목표

  1. 변수를 선언할 수 있다.

  2. 콘솔에 변수값을 출력하고 입력 받을 수 있다.

변수

정의

  • 데이터를 저장하기 위한 물리적인 공간

변수 선언 방법

  • 문법

    자료형 변수명;
  • 예시

    int num1;              //정수형 변수 num1 선언
    int num2 = 10;      //정수형 변수 num2를 선언 후 10으로 초기화
    int num3 = 0x10//정수형 변수 num3을 선언 후 16진수 10으로 초기화(10진수로 16)
    int num4 = 010;   //정수형 변수 num4를 선언 후 8진수 10으로 초기화(10진수로 8)
    int num5 = 'A';     //정수형 변수 num5를 선언 후 A의 아스키 코드값 65로 초기화
    int num6 = 1.23;  //정수형 변수 num6를 선언 후 1로 초기화(0.23은 버려지며 경고가 뜸)
    char ch1 = 'A';      //문자형 변수 ch1를 선언 후 문자 A로 초기화
    char ch2 = 65;      //문자형 변수 ch2를 선언 후 아스키코드값 65에 해당하는 문자 A를 저장

자료형

  • 주요 자료형

    자료형크기(Byte)종류
    char1문자(정수)
    int4정수
    long long8정수
    float4실수
    double8실수
  • 정수형 자료형의 표현 범위

  • 실수형 자료형의 소수점 유효숫자

    • float : 7자리

    • double : 15자리

  • unsigned

    • 부호가 없는 이라는 의미로 정수형 변수 앞에 붙일 수 있으며 양수만 표현 가능

변수명 작성 규칙

  • 영어 대소문자, 숫자와 특수문자 일부만 사용 가능

    • 사용 가능 특수문자 : _ (언더바), $

    int _num; //가능
    int $num; //가능
    int #num; //에러
    int *num; //가능, 일반변수가 아닌 포인터 변수
  • 첫 글자는 숫자가 올수 없다

    int 1num;//에러
  • 대소문자를 구별한다.

    //다음 세 변수는 다 다른 변수이다.
    int num;
    int Num;
    int NUM;
  • 변수명 중간에는 공백을 입력할 수 없다.

    int nu m1;//에러
  • 중복된 변수를 선언할 수 없다.

    int num;
    int num;//에러 중복 선언
  • 변수명은 예약어를 사용할 수 없다.

    • 예약어는 컴파일러와 사용 방법이 약속된 단어

    • 사용 툴에 따라 다를 수 있지만 일반적으로 변수와 다른 색상을 가진다.

    int int;//에러 예약어 사용


+ Recent posts