본문 바로가기

개발171

[JAVA/Spring] IntelliJ 를 Data Grip 처럼 사용하기 이 포스팅의 샘플 게시판 개발 환경은 MAC OS, STS, OpenJDK11 입니다. 게시물 검색 기능에 대한 포스팅은 아래와 같은 순서로 진행합니다.리스트 화면(index) 수정조건에 맞는 게시판 목록 조회 SQL 및 전체 게시글 수 SQL 수정총 개시글 개수 확인을 위한 BoardDAO, BoardService의 수정(메소드 추가)BoardController의 수정게시글을 읽어 오기 위한 BoardDAO, BoardService의 수정(getBoardList 메소드 수정)게시판 목록 화면(index) 수정 IntelliJ 를 Data Grip 처럼 사용하기 JetBrains 사의 제품중에 DataGrip 이라는 제품이 있습니다.유료이지만 다른 데이터베이스 툴 보다는 저렴한 편이라고 생각됩니다.Jet.. 2019. 3. 10.
Spring 블로그 만들기 - 11. properties 사용하기 이 포스팅의 샘플 게시판 개발 환경은 MAC OS, STS, OpenJDK11 입니다. properties 설정에 대한 포스팅은 아래와 같은 순서로 진행합니다.properties 파일 생성common-context.xml 파일 생성datasource-context.xml 파일 수정 블로그 만들기 - 11. properties 사용하기 프로젝트를 진행하다 보면 여러 가지 공통적으로 사용되는 속성값들이 있습니다.예를 들어 DB의 설정값이나, 어떤 특정 상태값을 나타내는 데이터들입니다.이번에는 DB 설정값을 별도로 관리 할 수 있도록 properties 파일로 분리하는 작업을 하도록 하려고 합니다. properties 파일 생성우선 DB관련된 속성값이므로 database-properties.xml 이라는 파일.. 2019. 3. 8.
[Python] Intellij에 Python plugin 설치하기(macOS) 이 포스팅의 개발 환경은 MAC OS, IntelliJ 입니다. 개발환경 셋팅 (IntelliJ + Python plugin, MAC OS) 보통 Python 개발은 Pycham을 사용해서 개발하지만 Intellij 에서도 가능합니다.IntelliJ 에서 Python을 개발 할 수 있도록 환경을 셋팅해 보도록 하겠습니다. IntelliJ를 실행하고 첫 화면에서 우측 하단에 있는 [Configure]를 클릭합니다. 팝업 메뉴에서 [Plugins]를 선택합니다. IntelliJ에서 제공하는 plugin 들이 상당히 많습니다. 검색창에 'python'을 입력해 조회를 하면 쉽게 찾을 수 있습니다.검색된 결과에서 'Python'을 찾아 [Install] 버튼을 클릭 합니다.설치가 다 되면 [Restart IDE.. 2019. 3. 6.
Spring 블로그 만들기 - 10. 게시물 검색(search) 이 포스팅의 샘플 게시판 개발 환경은 MAC OS, STS, OpenJDK11 입니다. 게시물 검색 기능에 대한 포스팅은 아래와 같은 순서로 진행합니다.리스트 화면(index) 수정조건에 맞는 게시판 목록 조회 SQL 및 전체 게시글 수 SQL 수정총 개시글 개수 확인을 위한 BoardDAO, BoardService의 수정(메소드 추가)BoardController의 수정게시글을 읽어 오기 위한 BoardDAO, BoardService의 수정(getBoardList 메소드 수정)게시판 목록 화면(index) 수정 블로그 만들기 - 10. 게시물 검색(search) 많은 게시물을 효율적으로 보여주기 위해서는 페이징 기술도 필요 하지만, 검색 기능도 반드시 필요 합니다. 게시판 화면(index) 수정게시물 검.. 2019. 3. 1.
Spring 블로그 만들기 - 9. 페이징(pagination) 이 포스팅의 샘플 게시판 개발 환경은 MAC OS, STS, OpenJDK11 입니다. 페이징 처리에 대한 포스팅은 아래와 같은 순서로 진행합니다.페이징 테스트를 위한 데이터 만들기Pagination 클래스 만들기게시판 목록 조회 SQL의 수정 및 전체 게시글 수 알아오기총 개시글 개수 확인을 위한 BoardDAO, BoardService의 수정(메소드 추가)BoardController의 수정게시글을 읽어 오기 위한 BoardDAO, BoardService의 수정(getBoardList 메소드 수정)게시판 목록 화면(index) 수정 블로그 만들기 - 9. 페이징(pagination) 게시물의 글이 많아 지면 그만큼 스크롤도 길어지지만 서버로 부터 읽어와야 하는 데이터의 양도 많아 지게 됩니다.따라서 페.. 2019. 2. 26.
Spring 블로그 만들기 - 8.트랜잭션 처리 이 포스팅의 샘플 게시판 개발 환경은 MAC OS, STS, OpenJDK11 입니다. 트랜잭션 처리에 대한 포스팅은 아래와 같은 순서로 진행합니다.트랜잭션 이란트랜잭션 설정 방법1 - 선언적 트랜잭션 설정트랜잭션 설정 방법2 - @Transactional 어노테이션 사용@Transactional 사용을 위한 Service 수정트랜잭션 테스트 블로그 만들기 - 8. 트랜잭션 처리 바로 이전 포스팅에서는 게시판 처리 시 발생할 수 있는 문제점에 대해 예외처리를 하는 였습니다.하지만 아직 처리하지 못한 중요한 문제점이 남아 있습니다.에러가 발생하여 에러 페이지로 이동한 후 다시 리스트 화면으로 돌아와 새로 고침을 해봅니다.그럼 해당 게시물의 조회수가 올라가는 것을 볼 수 있습니다.조회수를 올리고 의도적으로 .. 2019. 2. 22.
Spring 블로그 만들기 - 7. 예외 처리 이 포스팅의 샘플 게시판 개발 환경은 MAC OS, STS, OpenJDK11 입니다. 예외처리 포스팅은 아래와 같은 내용을 정리 하였습니다.Http Status 에 따른 예외처리(404 에러 예외처리)@ExceptionHandler을 이용한 예외처리@ControllerAdvice를 이용한 예외처리@ResponseStatus를 이용한 예외처리 블로그 만들기 - 7. 예외 처리 예외처리는 의도하지 않은 잘 못된 결과들에 대한 처리를 말합니다.예를 들어 URL 주소를 잘못 입력 했을 경우 아래 화면과 같은 문제가 발생합니다. 이런 종류의 에러 관련 페이지는 사이트를 방문 하는 사람들이 보게 된다면 그다지 좋지 않을 것입니다.따라서, 위와 같이 에러 문구를 그대로 출력하지 말고, 별도의 페이지를 만들어 안내를.. 2019. 2. 22.
Spring 블로그 만들기 - 6.수정 및 삭제 이 포스팅의 샘플 게시판 개발 환경은 MAC OS, STS, OpenJDK11 입니다. 게시판 수정 및 삭제는 아래와 같은 순서로 진행 합니다.상세내용 조회에 [수정] 버튼 이벤트 추가Constroller 수정 (게시글 수정)입력 화면의 수정데이터 저장을 위한 Controller 수정상세내용 조회에 [삭제] 버튼 이벤트 추가Service 수정 (게시글 삭제)Controller 수정 (게시글 삭제) 블로그 만들기 - 6. 수정 및 삭제 게시물의 수정 화면은 기존에 만들었던 입력 폼을 수정하여 진행할 예정입니다. 따라서 입력 폼에 대한 수정과 함께 많은 부분에서 변화를 줄 예정입니다.우선 이전 포스팅에서 버튼만 만들고 이벤트를 처리하지 않았던 [수정] 버튼의 이벤트 처리 부터 시작해 봅니다. 상세내용 조회에.. 2019. 2. 20.
[JAVA/Spring] SQL 로그 출력하기 이 포스팅의 샘플 게시판 개발 환경은 MAC OS, STS, OpenJDK11 입니다. SQL 로그 출력하기 의존성 추가 pom.xml 을 열어 아래의 내용을 추가합니다. org.bgee.log4jdbc-log4j2 log4jdbc-log4j2-jdbc4 1.16 데이터베이스 접속 설정 수정데이터베이스 접속 설정이 들어 있는 설정파일 (root-context.xml 또는 dataSource-context.xml)을 수정해야 합니다. 붉은 색 부분이 수정된 부분입니다. 정확히는 value의 일부분이 수정되었습니다. 수정된 내용은 아래와 같습니다. com.mysql.cj.jdbc.Driver -> net.sf.log4jdbc.sql.jdbcapi.DriverSpyjdbc:mysql://127.0.0.1:33.. 2019. 2. 19.
Spring 블로그 만들기 - 5.상세조회 화면 만들기 이 포스팅의 샘플 게시판 개발 환경은 MAC OS, STS, OpenJDK11 입니다. 게시판 글 상세조회 화면을 만들기 위해 이번 포스팅에서 진행할 내용입니다.게시판 리스트의 수정(클릭 이벤트)Service 수정하기(Boardservice)Controller 수정하기(BoardController)상세조회 화면 만들기(boardContent) 블로그 만들기 - 5. 상세조회 화면 만들기 게시판 리스트의 수정 (클릭 이벤트)이전 게시판 리스트 만들기 포스팅에서우리는 데이터베이스에 저장된 리스트를 출력 하는 작업을 했습니다.보통 게시판의 상세글을 조회 할때는 제목을 클릭하면 상세 페이지로 이동하게 되어 있습니다.저희 샘플 게시판에서도 동일한 방식으로 상세 내용을 조회 할 수 있도록 할 예정입니다.따라서 이전.. 2019. 2. 18.
Spring 블로그 만들기 - 4.글쓰기 화면 만들기 이 포스팅의 샘플 게시판 개발 환경은 MAC OS, STS, OpenJDK11 입니다. 게시판 글쓰기 화면을 만들기 위해 이번 포스팅에서 진행할 내용입니다.Service 수정하기(Boardservice)Controller 수정하기(BoardController)글쓰기 화면 만들기(boardForm)공통부분 나누기 블로그 만들기 - 4. 글쓰기 화면 만들기 Service 만들기(BoardService)게시판의 리스트를 불러오는 것과 마찬가지로 중간 연결 역활을 합니다.게시판 글쓰기폼 이동시에는 데이터베이스에 접속할 일이 없기 때문에게시판에 작성한 글을 저장 할때 호출할 Service 만 작성합니다.아직은 Service 단계에서 복잡한 기능을 수행하지 않습니다. BoardService.java 추가 내용pub.. 2019. 1. 21.
Spring 블로그 만들기 - 3. 게시판 리스트 화면 만들기 이 포스팅의 샘플 게시판 개발 환경은 MAC OS, STS, OpenJDK11 입니다. 게시판 리스트를 만들기 위해 이번 포스팅에서 진행할 내용입니다.Service 만들기(BoardService, BoardServiceImpl)Controller 만들기(BoardController)게시판 리스트 화면 만들기부트스트랩(Bootstrap)을 이용해 View 화면 꾸미기 블로그 만들기 - 3. 게시판 리스트 화면 만들기 이전 포스팅에서 DB 처리와 관련된 거의 모든 작업(DAO 및 Mapper)은 끝났습니다.따라서 이제 게시판을 목록을 조회하거나 상세내용을 조회하고, 수정/삭제 하는 등의 비즈니스 로직과 관련된 부분을 처리할 차례 입니다. Service 를 만들기 전에 MVC 모델에서 기본적으로 프로그램이 어.. 2019. 1. 18.