본문 바로가기

전체 글357

[도서] 코드로 배우는 스프링 웹 프로젝트(개정판) 코드로 배우는 스프링 웹 프로젝트 자바 개발자로 대부분의 웹 프로젝트는 스프링 프레임워크로 개발을 했지만정작 '스프링'이 뭔지 잘 모르고 있었던건 아닐까 하는 생각이 들었다.도서관에서 한 달을 살면서 여러 권의 스프링 관련 책들을 봤지만...사실 내용이 너무 어려워 잘 모르겠거나, '이게 일하면서 쓰였던가?' 라고 생각되는 책들을 많이 보았다.하지만 모든 책이 초보인 내 수준에 안맞았던건 아니다.이 책, '코드로 배우는 스프링 웹 프로젝트'는 정말 내 수준에 딱 맞았고, 설명이 잘 되어 있었다.결국 도서관에서 계속 빌려 보다 내돈으로 구입한 첫 스프링 책이 되었다.(난 책에 필요한 부분에 줄을 긋거나 메모를 하고, 페이지를 접거나, 테이프를 붙여 찾기 편하게 표시를 해놓기 때문에 구입을 해야 했다.)그런.. 2018. 12. 23.
[도서] 작은 책방, 우리 책 쫌 팝니다! 작은 책방, 우리 책 쫌 팝니다. 최근 반년 정도는 일 관련된 책 말고, 다른 종류의 책들은 거의 읽을 시간이 없었는데,잠시 먹고사는 일에서 벗어나 그냥 손이 가는 대로 집어든 책을 읽었다.'그동안 열심히 공부했다(?)' 라는 내 스스로에게 내리는 작은 보상이랄까? '작은 책방, 우리 책 쫌 빱니다(백창화, 김병록 지음)은 동네 서점이 거의 전멸해 가는 요즘 시기에 용감하게 동네 서점을 오픈한용감한 사람들의 이야기이다.(이 책 말고 동일한 제목의 책이 하나 더 있었다.사실 두 책의 저자가 동일하다. 이번 책은 이전 책의 후속판 정도라고 생각할 수 있겠다.) 대형 서점과 온라인 서점의 약진 속에 많은 동네 서점들이 문을 닫고 있다.그리고 전자책까지 등장해 계속 종이책의 입지가 줄어 들고 있다.게다가 전자책.. 2018. 12. 21.
[JAVA/Spring] MAC OS, STS 에서 lombok 설정하기 스프링으로 웹 개발을 하다보면 VO나 DTO에서 getter/setter 등과 같은의미 없는 작업에 많은 시간을 빼앗기는 경우가 있습니다.이번 포스팅에서는 이 작업을 도와줄 lombok 사용법에 대해서 정리해 보려고 합니다. 1. lombok 다운로드 우선 아래의 위치에서 lombok 파일을 다운로드 받아야 합니다.파일은 jar 형식으로 묶여 있습니다. lombok 다운로드 : https://projectlombok.org/download 다운로드 페이지 화면 캡쳐 2. lombok 설치 lombok는 jar 파일이지만 일반적인 자바 라이브러리 파일과는 다르게 '설치' 라는 과정을 거쳐야 합니다.다운로드 받은 폴더로 이동하여 아래의 명령어로 lombok를 설치해 줍니다. java -jar lombok.j.. 2018. 11. 27.
[JAVA/Spring] 체크 박스의 값을 목록(리스트)에 같이 보여 주기 이번 포스팅은 체크박스로 체크한 데이터 들을 게시판 목록(리스트)에 하나하나 뿌려주기 위해서 고민했던 내용에 대해 적어 보려고 합니다.카드형으로 리스트를 출력해 줘야 하는데카드 안에 각 게시물의 체크박스 데이터를 아이콘으로 같이 출력해 주는 내용입니다. 우선 내용을 정리해 보면게시판 목록(리스트)에 체크박스에 선택된 값들을 출력을 해야한다. 이때 그냥 체크값을 출력하면 사용자들은 모르기 때문에 그 값에 해당하는 적당한 값을 표시해 줘야 한다.문제는체크 박스로 체크한 데이터들은 각각의 컬럼에 저장되는 것이 아니라 하나의 컬럼에 쉼표(,)를 구분자로 해서 저장된다.화면에 뿌려 주려면 각 값들을 모두 분리해서 각각 변수에 담아야 한다. 체크값은 각 글마다 몇개가 선택되어 있는지 알 수 없으므로 일반 변수에 담.. 2018. 11. 10.
[Java/Spring] 설정파일 관리 이번 포스팅에서는 스프링 프로젝트의 설정파일을 용도에 맞게 몇 가지로 구분하는 작업을 하려고 합니다. 우선 STS Meven 프로젝트로 스프링 MVC 프로젝트를 생성하게 되면기본적으로 아래 그림과 같은 디렉토리 구조를 가지게 됩니다.(전 프로젝트 이름을 'sample02' 라고 하였습니다.) 우선 알고 있어야 할 부분이 있는데대체로 서버 운영에 필요한 스프링 관련 설정(DB, 보안등)은 root-context.xml 에서 처리하고화면과 관련된 설정은 servlet-context.xml 에서 설정을 하게 됩니다. 서버를 운영할때는 필요한 여러 가지 요소들 중에대표적인 것들이 데이터베이터 접속, 보안 설정 등입니다. 프로젝트의 규모가 작다면 이것들을 모두 root-context.xml에 담아 관리할 수 있겠.. 2018. 10. 29.
[HTML,CSS] div안에 스크롤바를 달고 이벤트 버튼 넣기 이번 포스팅에서는 몇 일동안 골치를 아프게 했던 것에대해 정리해 보려고 합니다. div 안에 스크롤 바를 설치하고,div 영역 안쪽... 우측 하단에 위치가 고정된 버튼(floating button : 플로팅버튼)을 만드는 것입니다. 우선가장 먼저 해야 할 것은 div 안에 스크롤 바를 만들어 내는 것이 겠지요 스크롤 바를 만드는것은 생각보다 간단합니다.CSS 속성중 overflow 속성을 주면 됩니다. 이렇게 하면 스크롤이 생성됩니다.위 같은 경우는 가로,세로 모든 스크롤이 생기는 경우이지만경우에 따라서 세로만 만들거나, 가로만 만들어야 할 필요도 있습니다.그럴때는 overflow-x 나 overflow-y 속성을 이용합니다. 그럼 이제 드디어 버튼을 div 영역 안쪽에 달아볼 차례 입니다. (이 부분.. 2018. 10. 23.
[JAVA/Spring] maven 라이브러리 다운로드 경로 수정 방법 이번 포스팅에서는 maven을 사용할 경우 다운로드 받아지는 라이브러리의 경로를 설정하는 방법에 대해 적어보겠습니다. 프로젝트가 매번 같은 버전의 라이버러리나 같은 종류의 라이브러리를 사용하지 않아서각 프로젝트별로 사용하는 라이브러리를 관리해 줘야 할 필요가 있습니다. 이때 maven의 기본 다운로드 경로는 '사용자 계정 / .m2' 디렉토리 입니다. 따라서 프로젝트와 같이 묶어서 관리를 하려면 이 설정을 변경해야 할 필요가 있습니다. 1. 우선 앞으로 사용할 라이브러리의 경로를 생성합니다. 프로젝트 폴더 안에 라이브러리 폴더를 별도로 만들어 두면 관리하기 편합니다. 2. 생성한 디렉토리 아래 settings.xml 이라는 파일을 만들고 아래의 내용을 복사해 넣습니다. 이때 다운로드 받을 경로를 이 파일.. 2018. 10. 17.
[JAVA/Spring] The import javax.annotation.Resource cannot be resolved Spring로 개발을 하다 보면 @Resource 를 많이 사용하게 됩니다.이번 포스팅에서는 신규 프로젝트를 생성하여 개발 할 때,많이 접하게 되는 'The import javax.annotation.Resource cannot be resolved' 에러 처리방법에 대해정리해 보려고 합니다. 이 에러를 해결하는 방법은 크게 2가지 방법이 있습니다. 모두 pom.xml 을 수정해서 해결 할 수 있는데 한 가지는 dependency 를 추가해 주는 것이고다른 한 가지는 plugin 을 추가해 주는 방식입니다. 우선 첫 번째 방법은 pom.xml 에 아래의 구문을 추가해 줍니다. javax.annotationjavax.annotation-api1.3.1 위 구문을 추가한 후, pom.xml 파일을 저장한 후.. 2018. 10. 3.
[JAVA/Spring] 외부 js 및 css 파일 사용방법 웹 프로젝트에서 화면을 만들다 보면 외부의 자원(js, css 등)을 가져다 쓰게 되는 경우가 많이 발생하게 되죠.간단한 화면에서 조차 외부 파일들을 사용하는 경우가 상당히 많습니다. 이번에는 그런 파일들을 삽입하는 가장 기본적인(?) 방법에 대해 정리해 봅니다.(프로젝트 별로 외부 파일을 저장하는 위치나 설정하는 방법은 조금 상이 할 수 있습니다.) 우선 설정이 제대로 되어 있지 않을때 STS 콘솔창에서 확인 할 수 있는 에러를 확인해 봅시다. WARN : org.springframework.web.servlet.PageNotFound - No mapping found for HTTP request with URI [/js/jquery-3.3.1.min.js] in DispatcherServlet wi.. 2018. 10. 2.
빌어먹을 페이스북 아오... 계정정리 차원에서 탈퇴를 하고다시 가입하려고 하는데 3달째 처리가 안된다. 안하고 만다. 페이스북!! 2018. 9. 11.
[JAVA/Spring] @Value annotation 이번 포스팅 에서는 @Value 어노테이션을 정리해 봅니다. 프로젝트가 커지다 보면 공통으로 사용하는 값을 별도로 관리를 하게 되는데이런 값들을 쉽게 가져다 쓰기 위해 사용합니다.쉽게 생각해서, 공통 값들을 정의해 놓은 파일에 접근하여원하는 데이터를 읽어와 사용한다고 생각하면 됩니다. 이렇게 관리를 하는 이유는 관리를 쉽게 하기 위해서 입니다. 사용법은 간단합니다. 우선 아래의 코드를 봅시다. class ValueSample() { @Value("#{WORK.LOCATION}")String JOB; public ValueSample() {// TODO}} 클래스의 프로퍼티 설정 부분에 @Value 어노테이션을 사용한 것을 볼 수 있습니다.위 코드의 의미는프로퍼티 파일에서 WORK의 LOCATION 값을 .. 2018. 7. 29.
[Javascript/JQuery] SelectBox change 이벤트 SelectBox 의 change 이벤트 관련 내용을 정리해 본다. 1. change 이벤트 만들기 $("#SelectBoxID").change( function() {//TODO}); 2. bind 를 이용해 change 이벤트를 붙이기 $("#SelectBoxID").bind( "change", function() {//TODO}); 3. on을 이용해 change 이벤트 만들기 $("#SelectBoxID").on( "change", function() {//TODO}); 2018. 7. 26.