분류 전체보기

    [svg] SVG viewBox를 알아보자

    [svg] SVG viewBox를 알아보자

    목차 SVG란 viewBox란 의미 기본 예시 위치 조정 예시 확대, 축소 예시 SVG란 SVG에 대해서 간단하게 알아보자. SVG란 Scalable Vector Graphics의 약자로 확장 가능한 벡터 그래픽, 다시 말해 크기를 확대하거나 축소할 수 있는, 수학적 함수를 이용해 도형이나 선을 그려서 표현한 그래픽이라고 할 수 있다. 여기서 수학적 함수를 이용해 도형이나 선을 그려서 표현한이라는 의미는 우리가 수학 시간에 배웠던 좌표평선 위의 그려져 있는 그래프 정도로 이해할 수 있다. SVG는 이런 방식을 차용함으로써, 우리가 흔히 알고 있는 jpg, png, gif와 다르게 확대해도 선명도가 떨어지지 않는다. 또한, 도형이나 선으로 구성되어 있어 파일의 용량이 상대적으로 작다. 하지만 svg를 구성..

    Thymeleaf Fragment (Fragment 나누기)

    Thymeleaf Fragment (Fragment 나누기)

    Fragment로 레이아웃을 나누고 각 페이지에서 공통으로 사용되는 Fragment로 파라미터를 넘길수도 있다. Thymeleaf Fragment - 1 : Fragment를 나누기 Thymeleaf Fragment - 2 : 파라미터 전달, 사용하기 Thymeleaf Fragment 나누기 개발환경은 Springboot + Thymeleaf를 사용하여 프로젝트를 만들었고 프로젝트에서 Thymeleaf를 사용하기위해 Thymeleaf 의존성 주입, Web을 사용하기 위해 Spring-boot-starter-web 의존성을 주입받았다. org.springframework.boot spring-boot-starter-thymeleaf org.springframework.boot spring-boot-star..

    [ mysql ] Event scheduler(하루에 한번 mysql에 작동하고 싶을때)

    [ mysql ] Event scheduler(하루에 한번 mysql에 작동하고 싶을때)

    서론 - 국방 데이터를 가지고 퀴즈 사이트를 만드는데 매일마다 문제를 뿌려주기위해서 mysql에 하루에 한번씩 문제를 업데이트 해주어야하는데 어떻게하다가 코드로 하는 것 보다 배포된 db에서 매일 생성해줄 수 있는 것이 mysql에 있다고 하여서 사용하였다. 설정 eventscheduler를 사용하기위해서 설정을 해주어야한다. 조회하면 SHOW VARIABLES LIKE 'event%' 확인하면 이렇게 조회 할 수 있는데 OFF로 돼어있는데 ON으로 바꾸어준다. SET GLOBAL event_scheduler = ON; 확인하면 이렇게 조회 할 수 있는데 OFF로 돼어있는데 ON으로 바꾸어준다. 사용방법( Main) 특정 시간부터 시작 CREATE EVENT write_event_name ON SCHED..

    GIt pull error

    GIt pull error

    가끔 가다 git에서 작업한거를 pull 할때 에러가 뜬다 문제 git을 사용하다보면 여러 변경내역이 생기게 됩니다. 예를 들면 내 로컬에서 변경된 내역을 아직 commit을 하지 않은 상태로 pull을 하게 되면, 충돌이 발생하게 되어 초보자에게는 난감한 상황이 됩니다. 이런 경우에 git stash 명령어를 사용하시면 편리합니다. $ git add . git stash : 스테이시로 안전하게 보관 $ git stash $ git pull origin branch name

    Spring이란?

    Spring이란?

    1. 스프링(Spring)이란? 1.1 스프링의 개념 Spring Logo Spring은 무엇일까요? 스프링은 자바 기반의 웹 어플리케이션을 만들 수 있는 프레임워크입니다. spring.io 사이트에서 확인하면 스프링 프레임워크는 현대 자바 기반의 엔터프라이즈 어플리케이션을 위한 프로그래밍 및 Configuration Model 제공한다라고 언급하고 있습니다. Python을 이용한 Django, Ruby를 이용한 Ruby on Rails, Javascript를 이용한 Node.js 기반의 웹 서버 개발과 같이 Java 개발자들은 Spring을 사용하여 웹 서비스를 만들 수 있습니다. Spring 은 수많은 국내 기업과 해외 기업에서 매우 많은 서비스를 만들 때 사용되고 있습니다. 자바 백엔드 개발자는 웹..

    스프링(Spring)에서 자주 사용하는 Annotation 개념 및 예제 정리

    1. Annotation이란? Spring에서는 Annotation을 많이 사용합니다. Annotation의 역할은 아래와 같습니다. 관련 설명은 스프링 빈(Spring Bean)이란? 개념 정리 링크를 참조해주세요. JAVA에서 Annotation 이라는 기능이 있습니다. 사전상으로는 주석의 의미이지만 Java 에서는 주석 이상의 기능을 가지고 있습니다. Annotation은 자바 소스 코드에 추가하여 사용할 수 있는 메타데이터의 일종입니다. 소스코드에 추가하면 단순 주석의 기능을 하는 것이 아니라 특별한 기능을 사용할 수 있습니다. Annotation은 클래스와 메서드에 추가하여 다양한 기능을 부여하는 역할을 합니다. Annotation을 활용하여 Spring Framework는 해당 클래스가 어떤 ..

    DAO, DTO, VO 란?

    DAO, DTO, VO 란?

    spring을 사용하다보면 DTO, DAO, VO에 대한 용어에 대하여 많이 접하게 됩니다. 해당 개념에 대하여 간단하게 정리해보았습니다. DAO(Data Access Object) DAO(Data Access Object) 는 데이터베이스의 data에 접근하기 위한 객체입니다. DataBase에 접근 하기 위한 로직 & 비지니스 로직을 분리하기 위해 사용합니다. - Database 접근을 위한 객체이다. - Data 삽입(INSERT), 수정(UPDATE), 삭제(DELETE), 조회(SELECT)를 조작/수행한다. - 보통 DB와 연결할 Connection까지 설정하는 경우가 많다. DTO DTO(Data Transfer Object) 는 계층 간 데이터 교환을 하기 위해 사용하는 객체로, DTO는 ..

    [Spring Boot] 프로젝트 구조 알아보기

    [Spring Boot] 프로젝트 구조 알아보기

    spring boot로 게시판을 만들다가 구현 위주로 작업을 하고 있는데 왜, 어떻게 돌아 가는지 궁금해서 구조를 알아보고자 한다. 1. src/main/java 디렉토리 (제일 중요) 한 블로그에서 명확하게 정리해준 것 같아 참고용으로 먼저 제시합니다. 컨트롤러 : @Controller (프레젠테이션 레이어, 웹 요청과 응답을 처리함) 로직 처리 : @Service (서비스 레이어, 내부에서 자바 로직을 처리함) 외부I/O 처리 : @Repository (퍼시스턴스 레이어, DB나 파일같은 외부 I/O 작업을 처리함) Controller 위 사진은 웹 서버가 클라이언트와 소통할 때 어떤 로직을 거쳐서 정보가 전달이 되는지에 대한 그림입니다. 가장 위쪽에 보면 front-end에서 들어오는 클라이언트 측..

    [intellij] Error: Java: invalid target release: 11 - IntelliJ IDEA

    [intellij] Error: Java: invalid target release: 11 - IntelliJ IDEA

    intellij 에서 작업을 하다가 git에서 작업한 것들을 땡겨와서 작업을 하다가 안돼서 clone을 해서 다시 작업을 하는데 기본 설정을 다시하다가 문제가 생겼다. 이 문제는 컴파일 설정이 잘못되어 있어서 발생한 문제이다. 해결 : 컴파일 버전을 버전을 바꾸어 준다. File->Project Structure->Modules ->> Language level to 8 ( my maven project was set to 1.8 java) File -> Settings -> Build, Execution, Deployment -> Compiler -> Java Compiler -> 8 also there 이 문제를 해결하기 위해 파일 -> 프로젝트 구조 -> 모듈 ->> 언어 수준을 10으로 변경했습니..

    GitHub 프로젝트 가져오기 [pull, fetch, clone]

    GitHub 프로젝트 가져오기 [pull, fetch, clone]

    깃허브 원격저장소에 있는 프로젝트를 로컬저장소로 가져오는 방법은 3가지가 있다.1. git push2. git fetch3. git clone이 처럼 한대의 컴퓨터가 아닌 여러 대의 컴퓨터에서 원격저장소의 내용을 그대로 가져오는 방법을 설명하겠습니다.아직 깃허브 저장소를 만들지 않은 사람이라면 아래 포스팅을 참고! 💣 git pull = git fetch + git mergepull과 fetch의 차이점은 병합을 하냐 안 하냐의 차이다.1. git pull ?원격저장소에 있는 프로젝트의 변경사항을 그대로 로컬저장소에 옮겨와 자동으로 병합팀 단위로 사용하는 계정이 아닌 개인적으로 깃허브를 사용하는 사람들이라면 git pull 명령어를 가장 많이 사용할 것이다."변경 사항을 가져옴과 동시에 자동으로 병합이..