Spring

    JAVA - 기존에 하던 서블릿 Spring에서 더 간편하게 해보기

    JAVA - 기존에 하던 서블릿 Spring에서 더 간편하게 해보기

    DB에서 테이블 생성 > 토대로 BoardVO에 변수 생성 > 다오 역할을 수행 할 BoardMapper.java생성 (원래는 여기서 쿼리를 실행해도 되지만 쿼리가 길어지고 복잡해지는 경우 가독성이 극히 나빠질 수 있기 때문에 /프로젝트/src/main/resources밑에 도메인과 같은 뎁스로 파일을 생성해주고 그 밑에 쿼리를 받을 .xml을 만들어준다. BoardMapper.xml INSERT INTO TBL_BOARD(BNO, TITLE, CONTENT, WRITER) VALUES (SEQ_BOARD.NEXTVAL, #{title}, #{content}, #{writer}) SELECT SEQ_BOARD.NEXTVAL FROM DUAL INSERT INTO TBL_BOARD(BNO, TITLE, C..

    🤷‍♂️ 내가 만든 웹페이지  배포 🤷‍♂️   설레설레 설레임🤑

    🤷‍♂️ 내가 만든 웹페이지 배포 🤷‍♂️ 설레설레 설레임🤑

    먼저 배포할 프로젝트에 대해 war파일을 생성한다. 아래 Export source files 체크 필수! - 체크하지 않으면 소스코드 없이 파일이 생성됨. 지정한 위치에 war파일 생성된 것 복사 후 원격서버의 해당위치에 붙여넣기 해당 경로에 server.xml에 접속정보 추가 이후 tomcat 재부팅 원격 서버에서 확인 (+ css파일들 가져오지 않은 경우엔 깨질 수 있음.) - nginx 추가 이후 nginx재시작 cloudflare에 도메인 잘 추가되었는지 확인 tomcat 서버 재시작 확인 완료! (+적용되는데 시간이 걸릴 수 있으니 바로 안된다고 당황말고 여유를 갖고 기다려주기! )

    spring - Failed to load ApplicationContext 에러해결

    spring - Failed to load ApplicationContext 에러해결

    - 테스트 코드 실행 시에 이런 오류를 본 적이 있을 것이다. 로그를 읽어보면 No qualifying bean of type 'org.springframework.security.crypto.password.PasswordEncoder' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {} 사용 가능한 'org.springframework.security.crypto.password.PasswordEncoder' 유형의 자격 있는 빈이 없습니다. autowire 후보로 자격이 있는 빈이 하나 이상 있어야 합니다. 라는 뜻이므로 빈을 추가해준다. 테스트 성공!

    spring - 테스트코드 UNREAD 발생! 발생!

    spring - 테스트코드 UNREAD 발생! 발생!

    CRUD를 구현하는 도중 댓글 목록을 가져오는 테스트코드를 실행했는데 다른 컬럼값은 잘가져오지만 content값만 unread가 나왔다. 확인 순서 1. DB 테이블 생성시에 지정해준 변수명이 spring domainVO에서 지정해준 변수명과 같은지 확인 (대소문자는 구분하지않음. "_" 과 같은 스네이크 표기법은 인식하므로 확인!) 2. 1번과 같은 확인을 했는데도 이상이 없는 경우가 바로 나의 경우였는데 이유를 찾아보니 spring 상에서 DB데이터타입 중 CLOB타입과 관련된 오류가 있었다는 것! - 해결방법 메서드 쿼리를 작성한 ReplyMapperTests.xml에서 resultMap을 통해 컬럼명과 변수를 맵핑하는 정보를 추가. 이때, resultMap의 type에 기존에 지정했던 result..

    Spring - DB 게시글 데이터 불러보기

    Spring - DB 게시글 데이터 불러보기

    먼저 db와의 연결테스트를 해야한다. db에 테이블을 생성해주고, src/main/java에 com.dullinsub.domain패키지 아래 - BoardVO 클래스 생성 package com.dullinsub.domain; import java.util.Date; import org.apache.ibatis.type.Alias; import lombok.Data; @Data @Alias("board") // .xml resultType 이름 변경가능 public class BoardVO { private Long bno; private String title; private String content; private String writer; private Date regDate; private Dat..

    프링프링 스프링 상큼한 오류 - 실행 시에 자동종료되는 오류가 뜬다!

    프링프링 스프링 상큼한 오류 - 실행 시에 자동종료되는 오류가 뜬다!

    정말 빈번한 오류가 발생하는 요 프링프링 스프링자식 이번엔 생전 보지못한 오류로 날 찾아왔다. 실행을 하면 자동으로 종료가 되버리고 두 가지의 에러 메세지와 함께 확인을 누르면 sts.ini 파일과 비슷하게 생긴 내용이 뜬다. 해결방법 1. sts-bundle 안에 STS.ini라는 메모장파일을 연다. a. javaw.exe 파일이 메모장에 적혀진 주소와 동일한 위치에 있는지부터 확인 -vm C:\Program Files\Java\jdk1.8.0_202\bin\javaw.exe b. 메모리 크기를 최대로 낮추어 저장하고 다시 실행해본다. xms > 128m 으로, xmx > 256m 으로 변경. c. 롬복파일 설치구문에 공백이나 문자가 잘못들어가있는게 없는지 확인한다. -javaagent:C:\Users..

    Spring - DB연동  >> DB에 있는 데이터 가져와서 웹으로 출력

    Spring - DB연동 >> DB에 있는 데이터 가져와서 웹으로 출력

    2022.04.05 - [Spring] - 프링프링 - 스프링을 이용한 현재시간출력 feat.서블릿 프링프링 - 스프링을 이용한 현재시간출력 feat.서블릿 자바에서 서블릿을 이용해 웹 브라우저로 결과를 확인했었는데, 훨씬 단축된 작업과정과 좀 더 편리하게 스프링에서 해당 예제를 통해 결과를 확인해보았다. 1. Spring regacy project > Spring MVC Project dys-r.tistory.com 첨부된 게시글과 똑같은 방식으로 스프링프로젝트를 생성해준다. 시작 이전에 DB에 시험용 데이터를 담은 테이블을 생성한다. - Board.java package cloud.dullinsub.webtest.domain; import org.springframework.stereotype.Com..

    프링프링 - 스프링을 이용한  현재시간출력 feat.서블릿

    프링프링 - 스프링을 이용한 현재시간출력 feat.서블릿

    자바에서 서블릿을 이용해 웹 브라우저로 결과를 확인했었는데, 훨씬 단축된 작업과정과 좀 더 편리하게 스프링에서 해당 예제를 통해 결과를 확인해보았다. 1. Spring regacy project > Spring MVC Project > (next) > > 이름 명명 > www.dullinsub.cloud인 경우엔 > cloud.dullinsub.webtest > 3번째 자리에 오는 webtest 이름으로 실행될 것임. - src/main/java에 HomeController.java 클래스가 만들어져 있을것이다. - 이곳이 웹으로 결과를 출력해줄 서블릿 역할을 하는 곳이다. - 서블릿에 정보를 보내줄 jsp파일도 만들어져 있다. - 실행 시 출력을 잘되있는걸 확인했지만 숫자가 깨져있다. - jsp로 다시..

    스프링(Spring) 빌드 이후 오류발생! - (ex.라이브러리 추가 이후  오류발생!)

    스프링(Spring) 빌드 이후 오류발생! - (ex.라이브러리 추가 이후 오류발생!)

    스프링을 이용하다 프로젝트 생성 혹은 사용 도중에 빌드가 완료되고 나서 빨강피를 많이 흘리는 경우가 종종 있다. 필자의 경우 라이브러리 추가 이후에 오류가 발생했지만, 이를 해결하는 방법으로 빌드 이후 생기는 오류들을 대부분 해결했다. 바로 방법을 살펴보자. - 에러발생 - 오류가 발생한 프로젝트 1. 우클릭 > maven > update project > Force Update of Snapshots/Releases 체크 후에 ok를 누른다. 이는 빌드를 새로 다시 하게끔 하는것인데 경미한 에러들은 이 방법으로 해결이 될 것이다. 단축키로는 Alt + F5 가 있다.

    ApplicationContext(애노테이션 기반 스프링 설정 XML파일) - C, P

    ApplicationContext(애노테이션 기반 스프링 설정 XML파일) - C, P

    .xml파일에서 Namespaces에서 C(class)와 P(property)체크 새로운 문장이 생긴것을 확인 이랬던 코드가 // setter injection 2000 p:amount 를 사용하면 이렇게 요약 가능! 이랬던 코드가 // constructor injection 2000 c:amount를 사용하면 이렇게 요약 가능!