본문 바로가기

Springboot

Controller - 로그인

Git으로 프로젝트 import하는 방법

 

 

https://github.com/codingspecialist/Springboot-JSP-Setting.git

 

GitHub - codingspecialist/Springboot-JSP-Setting

Contribute to codingspecialist/Springboot-JSP-Setting development by creating an account on GitHub.

github.com

 

Respositories를 눌러준다.

원하는 프로젝트를 눌러준다.

 

url코드를 복사를 한다.

STS에서 왼쪽 프로젝트창에서 

빈공간에 마우스 오른쪽을 눌러 import를 클릭해준다.

 

검색창에 git을 입력하고

Projects from Git(with smart import)를 선택후 Next를 눌러줍니다.

 

Clone URI를 눌러준다.

 

그다음 URI 입력하는 창이 나올것인데 거기다가 원하는 프로젝트의 깃 주소창을 복사해서 넣으면 됩니다.

https://github.com/codingspecialist/Springboot-JSP-Setting.git 

 

GitHub - codingspecialist/Springboot-JSP-Setting

Contribute to codingspecialist/Springboot-JSP-Setting development by creating an account on GitHub.

github.com

 

오류가 발생하면 마우스 오른쪽을 눌러서

Configure에 Add Grandle Nature를 눌러줍니다.

 

성공적으로 강사님 project를 임포트 하였다.

 

============================================================================

Controller 사용하여 user 데이터 읽어보기

User의 정보를 읽고 웹으로 출력해보는 실습

 

만드는 순서

엔티티 -> Dao -> Controller -> jsp파일 작성

 

 

엔티티 생성(User 생성)

테이블의 엔티티를 생성한다.

Lombok이 설정 되어 있기 때문에 

@Getter, @Setter @NoArgsConstructor, @AllArgsConstructor 를 어노테이션이 가능합니다.

 

기본파일 생성

 

다오파일 생성

package site.metacoding.demo.domain.member;

import java.util.ArrayList;
import java.util.List;

import org.springframework.stereotype.Component;

@Component
public class MemberDao {
	public Integer insert(String username, String password, String email) {
		System.out.println("insert 되었습니다.");
		System.out.println(username);
		System.out.println(password);
		System.out.println(email);
		return 1;
	}
	
	public Integer update(Integer id, String password ) {
		System.out.println("update 되었습니다.");
		System.out.println(id);
		System.out.println(password);
		return 1;
	}
	
	public Integer deleteById(Integer id) {
		System.out.println("delete 되었습니다.");
		System.out.println(id);
		return 1;
	}
	
	public Member findById(Integer id) {
		
		//id 가 1이면m1 리턴 2면 m2 리턴
		Member m1 = new Member(1,"ssar","1234", "ssar@nate.com");
		Member m2 = new Member(2,"cos","1234","cos@nate.com");
		
		if (id ==1) {
			return m1;
		} else if(id==2){
			return m2;
		} else {
			return null;
		}
	}
	
	public List<Member> findAll(){
		
		Member m1 = new Member(1,"ssar","1234", "ssar@nate.com");
		Member m2 = new Member(2,"cos","1234","cos@nate.com");
		
		List<Member> memberList = new ArrayList<>();
		memberList.add(m1);
		memberList.add(m2);
		
		return memberList;
	}
}

 

 

Controller

package site.metacoding.demo.web;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;

import site.metacoding.demo.domain.member.MemberDao;

@Controller
public class MemberController { //ioc컨테이너에 뜸
	
	private MemberDao memberDao;
	
	
	public MemberController(MemberDao memberDao) {
	this.memberDao = memberDao;
	}

	// 테이블명/주소
	@GetMapping("/member/joinForm")
	//client 입장에서 순서대로 작성한다.
	
	public String joinForm() {
		return "member/joinForm";
		
	}
	
	@PostMapping("/member/join")
	public String join(String username,String password, String email) {
		Integer result = memberDao.insert(username, password, email);
		if(result==1) {
			return "member/loginForm";
		}else {
			return "error/serverError";
		}

	}
	
	
}

 

 

 

 

serverError

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1>서버 에러입니다. 다시 시도해주세요</h1>
</body>
</html>

 

joinForm

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1>회원가입페이지</h1>
<form method="post" action="/member/join">
	username : <input type="text" name="username"/><br/>
	password : <input type="password" name="password"/><br/>
	email : <input type="email" name="email"><br/>
	<button type="submit">회원가입완료</button>
</form>
</body>
</html>

 

insert 메서드 리턴값을 1로 반환하였다.

 

insert 메서드 리턴값을 -1로 반환하였다

 

'Springboot' 카테고리의 다른 글

Mapping 메서드 - get, post, put, delete  (0) 2022.08.29
request, ssesion  (0) 2022.08.28
lombok  (0) 2022.08.26
데이터 전달 - 쿼리스트링, 패스 값 받기  (0) 2022.08.25
URL, URI  (0) 2022.08.25