Day22

두윤기·2023년 1월 30일
0
post-custom-banner

과제

> 실수 및 미숙했던 부분

  1. REGEX
    • 어려움을 많이 겪었던 부분
    • [a-z]{3, 10} 띄어쓰기 사용 X
    • 최대길이 설정, 최소 길이는 {x,} 형태로 쓰지만 최대 길이는 최소 길이도 지정해야 한다.
    • [] escape

> 풀이

  • 긍정탐색 REGEXP_LIKE(TARGET,'[A-Z]+')
  • DEFAULT
    • 사용자로부터 입력받는 항목이 아닌 경우 default로 처리하면 insert sql에서 생략가능하다.

maven

> build

  • source file을 컴퓨터에서 실행할 수 있는 독립 소프트웨어 가공물로 변환하는 과정 또는 그에 대한 결과물

build tool

  • 프로젝트 생성, 테스트 빌드, 배포 등의 작업을 위한 전용 프로그램
  • 빠른기간동안 계속해서 늘어나는 라이브러리 추가, 프로젝트를 진행하며 라이브러리의 버전 동기화의 어려움 해소
  • Ant -> Maven -> Gradle

> Maven

  • java용 project 관리도구
  • project의 전체적인 life cycle을 관리하는 도구
    • 프로젝트의 작성, 컴파일, 페트스 등 프로젝트 라이프사이클에 포함되는 각 테스트 지원
  • Maven은 중앙 저장소를 통한 자동 의존성 관리를 중앙 저장소(아파치재단에서 운영 관리)는 라이브러리를 공유하는 파일 서버라고 볼 수 있고, 메이븐은 자기 회사만의 중앙 저장소를 구축할수도 있다.
  • 간단한 설정을 통한 배포 관리 가능

pom.xml

  • 필요한 라이브러리를 pom.xml에 정의해 놓으면 내가 사용할 라이브러리 뿐만 아니라 해당 라이브러리가 작동하는데에 필요한 다른 라이브러리들까지 관리하여 네트워크를 통해서 자동으로 다운
	<!-- Maven model 정보 -->
	<modelVersion>4.0.0</modelVersion>
	<!-- spring 정보 -->
	<parent></parent>
	<!-- Project 정보-->
	<groupId>com.kh</groupId>
	<artifactId>spring02</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<packaging>war</packaging>
	<name>spring02</name>
	<description>Demo project for Spring Boot</description>
	<!-- project 변수선언 -->
	<properties>
		<java.version>17</java.version>
	</properties>
	<!-- 사용할 library 정보 -->
	<dependencies>
		<dependency>
		</dependency>
	</dependencies>

life cycle

  • framework이기에 동작 방식이 정해져있고, 미리 정의하고 있는 빌드 순서. 이를 라이프사이클(Lifecycle)이라 한다

> build framework

maven project

  • 명명 규칙
    groupId: 회사(brand) a.b, groupId는 unique 해야 한다.
    artiface: 프로젝트(application)
    com.google.map

iei.or.kr - test -> kr.or.iei.test

  • version 명명 규칙
    x.y.z
    • x Major(주) 하위 버전과 호환되지 않는 update가 발생하는 경우
    • y Minor(부) 하위 버전과 호환되며 기능이 추가된 경우
    • z Patch(수) 하위 버전과 호환되며 버그 fix

library 추가, 관리(XML)

  • Tag

  • java 설정

  • library 추가

    • maven repository에 검색
    • 합리적인 library 선택(짝퉁, 지원여부)
    • pom.xml 파일의

spring boot

> spring framework

  • 특정 목적을 달성하기 위한 모든 도구의 모음
  • spring Legacy / Spring boot
  • resources/application.properties
    • 주석 사용 # key = value
    • server.port=8888
    • 띄어쓰기 X
  • jdk 설정(correto로)
  • 실행 Spring Boot Dashboard

문제: 프로젝트 생성

  • GroupId: com.kh
  • Artifact Id: spring02
  • Name: spring02quiz
  • dependencies: spring-web, spring-devtools

프로젝트 생성 및 port 변경(8888) 후 실행한 뒤 깃허브에

Controller

주소에 parameter 받는 법

http://localhost:8080/age?key=value&key=value

profile
programmerD
post-custom-banner

0개의 댓글