분류 전체보기 102

8. ThymeLeaf의 fragment기능 이용하기

현재 사이트는 html이 총 세개가 존재한다. 세개면 많은 수는 아니지만 html내에서 공통되는 영역이 상당하기 때문에 해당 영역을 수정하기위해서는 많은 공수가 들어간다. html개수가 많아질수록 일이 늘어나기때문에 ThymeLeaf가 제공하는 fragment 기술을 사용하여 공통영역을 따로 관리하자. index.html, generic.html, elements.html에는 총 다섯가지의 공통영역이 존재한다. 페이지의 메타정보, css를 나타내기위한 header 로고와 메뉴버튼을 그리기 위한 header 메뉴목록을 그리기 위한 nav contact me를 위한 footer script를 include하기위한 footer -> javascript를 footer에 위치하면 html렌더링이 더 빠르다고 한다..

[코드트리]정렬된 숫자 위치 알아내기

양의 정수를 원소로 갖는 길이가 N인 수열이 입력으로 주어졌을 때, 이 수열을 오름차순으로 정렬 했을 때 각각의 위치에 있던 원소가 어느 위치로 이동하는지 출력하는 코드를 작성해보세요. 입력 형식 첫째 줄에는 수열의 길이를 나타내는 양의 정수 N이 주어지고, 둘째 줄에는 N개의 양의 정수인 원소가 빈칸을 사이에 두고 주어집니다. 숫자가 중복되어 주어질 수 있습니다. 1 ≤ N ≤ 1,000 1 ≤ 수열의 원소 ≤ 1,000,000 출력 형식 이 수열을 정렬했을 때 각각의 위치에 있던 원소가 어느 위치로 이동하는지를 공백을 사이에 두고 출력하는 코드를 작성해보세요. 동일한 원소의 경우, 먼저 입력으로 주어진 원소가 더 앞으로 와야 합니다. 입출력 예제 예제1 입력 : 7 3 1 6 2 7 30 1 출력 4..

7. Spring Boot 메시지/국제화 기능 이용하기

Spring Boot에서 메시지기능이란 쉽게말해 하드코딩을 방지하는 기술이다. 물론 어딘가에는 해당 텍스트를 저장해야겠지만 하드코딩을 방지함으로 메시지 일괄변경이나 언어가 바뀔때 쉽게 대응할 수 있다. 재직중인 회사에서는 메시지를 DB테이블로 따로 관리하여 어디서든 가져오는데,, 난 사실 그게 더 익숙해서 좋다. index.html을 메시지를 사용해 한글화 해보자. Spring Boot에서 메시지를 사용하는 방법은 다음과 같다. 1. /resources 하위 디렉토리에 messages.properties 생성 2.application.properties에 해당 파일을 등록한다. 3. index.html에서 해당 메시지를 끌어다 사용한다. ThymeLeaf를 사용하려면 해당 html파일의 html태그에 아..

6. DB 설계하기(MariaDB)

리눅스에 MariaDB를 설치했다. 시작 명령어 : sudo service mariadb start 상태 명령어 : sudo service mariadb status DB툴은 DBeaver를 사용할것이다. 설계를 해야하는데,, 일단 머릿속으로 대충 생각나는건 다음과 같다 사용자 테이블 : T_USER USERID LOGINID PASSWORD EMAIL PHONE ADDRESS SEX 게시판 테이블 : T_BOARD BID TITLE CONTENT REGISTERID REGISTDATE UPDATERID UPDATEDATE DELETEYN VIEWCOUNT 첨부파일 테이블 : T_BOARDATTACH BID ATTACHID FILENAME PATH 댓글 테이블 : T_COMMENT CID BID TITL..

5. IntelliJ와 GitHub연동하기

프로젝트를 나가면 줄곧 SVN만 사용해왔는데, 학부생때 사용했던 git의 사용법이 잘 기억나지 않아 고민한 결과 이번 프로젝트 형상관리 툴을 git을사용해서 진행할 예정이다. git을 사용하기 위해선 Git Bash를 먼저 설치해야한다. 귀찮으니까 링크 참조 https://goddaehee.tistory.com/216 [Git (1)] 윈도우 10 Git 설치 하기 [Git (1)] 윈도우 10 Git 설치 하기 안녕하세요. 갓대희 입니다. 이번 포스팅은 [ Window 10 Git 설치 방법 ] 입니다. : ) 1. Git 설치 Git은 패키지를 설치하거나 별도의 인스톨러로 설치할 수 있다. 혹시라도 goddaehee.tistory.com 1.IntelliJ를 실행해 ctrl + alt + s를 입력해..

4. html5up을 이용하여 HTML템플릿 적용하기

어느정도 형태가 갖춰진 HTML, CSS를 수정하고 커스터마이징은 여러번 해봤지만, 밑바닥부터 HTML과 CSS를 만들어 사용해본적은 없다. 그래서 어느정도 구성된 HTML템플릿을 다운받아 입맛에 맞게 커스터마이징 할 예정이다. https://html5up.net/ HTML5 UP Responsive HTML5 and CSS3 site templates designed by @ajlkn and released under the Creative Commons license. html5up.net 위 링크를 클릭하여 이동한다. 1.해당파일 전부를 workspace/src/main/resources/templates 하위에 붙여넣고. 서버를 재시작한다. 에러화면이 나온다. 그 이유는 resource의 정적파일..

3. IntelliJ환경에서 jar 빌드 및 배포

프로젝트를 다운로드 받았고, 이제 IntelliJ에서 jar를 빌드하고 Linux환경에서 배포해보겠다. 1.IntelliJ를 실행후 Open버튼을 클릭하여 다운로드받은 프로젝트의 build.gradle을 더블클릭한다. 2. src > main > java > com > project > ProjectApplication.java 우클릭 > Run 클릭. 프로젝트 경로명과 Application명은 프로젝트마다 상이하다. *Tomcat의 기본포트는 8080이지만, 하지만 Spring MVC인강에서 8080를 사용하기 때문에 개인 프로젝트는 9090로 변경 ->application.properties에 server.port:9090항목을 작성한다. 3.IntelliJ화면 오른쪽 Gradle클릭 > projec..

자료구조 관련 모음

헷갈릴만한 자료구조 관련 데이터들을 정리하기 위한 모음집,, 1.객체정렬(나와 비교) 객체를 정렬하기 위해서는 해당 클래스를 Comparable 인터페이스를 구현해야한다. 는 해당객체. 그리고 Comparable인터페이스의 compareTo메소드를 override하여 구현하고 사용해야한다. 예) class People implements Comparable { String name; int height; int weight; public People(String name, int height, int weight) { this.name = name; this.height = height; this.weight = weight; } @Override public int compareTo(People peo..

Stream관련 모음

Java8부터 새로 추가된 Stream기능을 많이 사용해보지않아 업무중에나 코딩테스트 준비간에 애로사항이 많다.. 간단한 기능은 사용 가능하지만 복잡한것들은 아직 잘 사용하지 못하므로 일단 무작위로 작성후 추후에 정리할 예정 1. int[] arr -> Integer[] array로 변환 Integer[] array = Arrays.stream(arr).boxed().toArray(Integer[]::new); Arrays.stream(배열) -> 배열을 Stream으로 전환. .boxed() -> primitive Type을 Wrapper Type으로 변환해준다.(int -> Integer) toArray(Integer[]::new) Integer타입의 배열로 변환해준다. 2. .filter() Str..

2. start.spring.io 사용법

프로젝트를 시작하기 위해 프로젝트를 생성한다. Spring에서 제공하는 템플릿사이트가 있다. 1. 아래 링크로 들어간다 https://start.spring.io 2.첫화면 3. 프로젝트 문법, 언어, Spring Boot 버전 설정 Project는 Gradle빌드를 선택하고 Groovy문법을 선택한다. Language는 Java, Spring Boot버전은 김영한선생님 말씀이 괄호()가 없는 버전을 선택하라고 하셨다 Spring Boot 3버전부터는 Java17부터 지원하니 참고할것, 4.프로젝트 세부사항 설정 Group은 com, Artifact및 Name은 project로 입력하면 Package name은 자동으로 설정된다. 이때 중요한건 나는 WAS를 따로 구축하지 않고 Spring Boot 내장..