전체 글 177

Spring) 로그인 동작 만들기(테스트 형태)

로그인 동작 전 준비 - MemberVO - DB에 유저테이블에 유저 한명 이상 - DB연결할 dataSource, SqlSessionFactory, SqlSessionTemplate 객체Bean. 1. MemberDAO에 추상메서드로 로그인 메서드 만들어놓기 public void loginMember(String userid, String userpw); 이렇게 직접 적는것 보다 vo객체를 사용하는 것이 좋다. 이렇게 따로 정보를 가져와서 처리하는 방법은 뒤에 5번에 적어보겠다. // 로그인 동작 public MemberVO loginMember(MemberVO vo); 2. 로그인 동작 sql문 생성 src/main/resource/mappers/memberMapper.xml select * from..

Back-end/Spring 2022.04.29

GIT) 다른 팀원이 올린 branch 내용 확인하기

1. branch 업데이트 git remote update 원격지에 바뀐 브랜치가 있으니 업데이트를 하면 [new branch]로 새로운 브랜치가 들어온다. 2. 업데이트가 잘 됐는지 확인 git branch -r : 원격 주소지의 브랜치 확인 git branch -a : 로컬&원격 주소지의 브랜치 확인 3. 해당 브랜치로 이동 commit과 push없이 확인만 하려면 아무 옵션없이 아래 명령어를 하면된다. git checkout [원격저장소의 branch이름] 이는 해당 브랜치의 내용을 로컬(내 컴퓨터)에서 테스트 하고싶을때 주로 사용한다. 안내 문구처럼 ‘detached HEAD’ 상태가 되어 You can look 해당 브랜치의 내용을 볼 수 있다. * 현재 어느 브랜치에 있는지 확인: git br..

Git 2022.04.29

Spring) Contoller 리턴 타입에 따른 매핑 방법

컨트롤러의 메서드의 리턴타입에 따라 페이지 이동 방법이 다르다. 리턴값이 없을때(void), 리턴타입이 String일때, 리다이렉트, 포워드 의 페이지 이동을 정리해보려 한다. 1. 리턴타입이 void일때 이전글에서 했던 대로 @RequestMapping("/주소") 괄호안에 적은 주소와 같은이름의 페이지를 매핑한다. @RequestMapping("/myPage") 로 하면 views/myPage.jsp 페이지를 호출. 2. 리턴타입이 String일때 형식 @RequestMapping("/doTest2") public String doTest02() { return "String리턴"; } @RequestMapping() 에는 /doTest2로 되어있지만 return된 문자열인 String리턴.jsp 페..

Back-end/Spring 2022.04.27

Spring) 스프링 Controller 개념과 페이지 연결(주소매핑)

1. 컨트롤러란? 스프링 프레임워크는 MVC패턴을 사용하고있고, 여기서 Controller는 화면(View)과 비즈니스 로직(Model)를 연결시키는 다리 역할을 한다. 쉽게 말하자면 화면에서 /aaa 로 가줘~ 하고 요청하면 주소를 받아들여 어디로 갈지 분석하고 맞는 길로 연결시켜주는 역할이다. Controller를 세부적으로 나누면 FrontController와 Controller로 나눌 수 있다. FrontController는 사용자의 모든 요청을 전달받는곳으로, 요청에따라 view페이지 또는 적절한 컨트롤러를 호출한다. 또한 원하는 작업을 수행한 결과를 가지고 다시 페이지를 이동한다. ▷ 작성하는 코드가 컨트롤러인지 어떻게 파악할까? @Controller 어노테이션으로 인해 이 클래스가 컨트롤러인..

Back-end/Spring 2022.04.27

Spring) DB연결 방법 3가지(직접, Bean객체, MyBatis)

1. 클래스에서 직접 연결하는 방법. public class DBConnectTest { private static final String DRIVER = "com.mysql.cj.jdbc.Driver"; private static final String DBURL = "jdbc:mysql://localhost:3306/springdb"; private static final String DBID = "root"; private static final String DBPW = "1234"; @Test public void 디비연결테스트() { try(Connection con = DriverManager.getConnection(DBURL, DBID, DBPW)) { Class.forName(DRIVER..

Back-end/Spring 2022.04.25

Spring) JUnit을 활용하여 테스트 코드 작성하기

스프링으로 프로젝트를 시작하기 전, DB연결은 잘 되는지, 객체 주입이 잘 되는지 등 테스트를 해보는것이 좋다고 한다. JUnit은 자바용 단위 테스트 프레임워크여서 JUnit을 통해 테스트를 실행해볼 수 있다. *JUnit은 자바 1.8버전부터 사용할 수 있다. 1. JUnit 라이브러리가 있는지 확인하기. pom.xml 파일에 가서 아래의 dependency가 있는지 찾아본다. 만약 없으면 위의 코드를 추가하거나 아래 dependencies탭에서 junit을 추가한다. pom.xml말고도 Maven Dependencies에서도 찾아볼 수 있다. 2. 테스트 클래스 작성 테스트 클래스는 src/main/java안의 패키지명과 같은 이름으로 src/test/java 안에 패키지를 만들어야한다. 클래스명은..

Back-end/Spring 2022.04.23

알고리즘) 시간 복잡도에 대해 알아보자

시간 복잡도란(Time Complexity)? 알고리즘의 속도. 문제를 해결하는데 걸리는 시간과 입력의 함수관계. 입력이 많을수록 처리할게 많아지니까 시간이 더 걸린다. 알고리즘을 어떤 방식을 사용하냐에 따라 시간이 덜 걸릴수도, 더 걸릴수도 있다 이런식으로 입력과 해결의 관계를 나타낸 것이 시간복잡도이며, 당연히 시간 복잡도가 낮은 알고리즘이 효율성이 높다. 알고리즘의 속도의 표현방식이 왜 필요할까? A가 B보다 빠르다. 사실 이 말로도 충분히 이해는 간다. 하지만 빠르다는 것 외에 추가적인 기준이 필요하다. A가 B보다 결과가 빨리 나왔는데, 알고보니 A를 실행한 컴퓨터가 성능이 더 좋은 컴퓨터였다면?? 스피드 경기를 진행할때도 같은 환경에서 같은 조건하에 타이머를 가지고 등수를 가리듯이 알고리즘에 ..

알고리즘 2022.04.21

Spring Boot) 프로젝트 생성 시 오류 해결(Gradle sync failed 등등)

스프링 프로젝트를 생성했더니 아래와 같은 오류들이 차례로 나타났다.. 항상 처음으로 프로젝트를 생성할때는 오류를 만나는것 같다ㅎㅎ.. cause: invalid entry CRC failed to create jar file Gradle sync failed Caused by: org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed 우선 나는 자바17버전으로 프로젝트를 생성했고, 11버전도 큰 차이는 없다. 1. 프로젝트가 해당 자바 버전으로 맞춰졌는지 확인한다. 1) build.gradle 파일 sourceCompatibility = 해당 버전 17이면 17, 11이면 11등 버전을 확인한다. 2) 프로젝트 JDK F..

Spring Boot) IntelliJ + Spring Boot시작하기

아래 링크로 들어가서 스프링 부트 기반으로 Spring 프로젝트를 만든다. https://start.spring.io/ 전에는 빌드도구로 Maven을 많이 사용했지만 요즘은 Gradle로 하는 추세라고 한다. Spring Boot 버전은 뒤에 괄호()가 없는 제일 최신 버전을 선택하면 된다. Group : 기본 패키지 이름을 설정. 보통 회사의 도메인명으로 한다. Artifact : 프로젝트 명 Java 버전은 각자 사용할 버전을 선택하면된다. Dependencies : 스프링부트로 스프링 프로젝트를 시작할때 어떤 라이브러리를 가져와 쓸건지 선택. 여기서는 웹 프로젝트를 만들것이기 때문에 Spring web과 HTML을 구성해주는 Template Engines를 선택한다. 설정을 다 마쳤으면 하단의 Ge..

Spring) Spring 프로젝트 생성, 설정 및 Tomcat 서버 설치

프로젝트 생성 왼측 Exploror에 Spring Legacy Project를 클릭해서 프로젝트를 생성한다. 기본 패키지 이름 설정 프로젝트 생성 완료! Tomcat 서버 설치하기 1. Tomcat 설치하기 https://tomcat.apache.org/download-80.cgi 설치파일을 다운받아 설치하기 2. 이클립스 상단의 Window > Preferences Server > Runtime Environment > Add Apache Tomcat v8.5 선택 Tomcat 디렉터리에 Browse를 눌러 톰캣이 설치된 폴더를 선택하고, JRE에 설치한 자바 8버전을 선택한다. Finish하고 Apply를 누르면 서버 설치 완료! 그럼 이제 프로젝트를 서버와 연결시킨다. 3. 프로젝트와 서버 연결하기..

Back-end/Spring 2022.04.18
반응형