updatePro
package com.itwillbs.controller;
import javax.inject.Inject;
import javax.servlet.http.HttpSession;
import org.springframework.http.HttpRequest;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import com.itwillbs.domain.MemberDTO;
import com.itwillbs.service.MemberService;
@Controller
@RequestMapping("/member/*")
public class MemberController {
(...생략...)
// 가상주소 http://localhost:8080/funweb/member/updatePro post방식
// update.jsp에서 입력한 데이터 => request => MemberDTO memberDTO 변수에 전달
// 디비 작업 MemberDTO memberDTO2 = userCheck(memberDTO) 메소드 호출
// memberDTO2가 null이 아니면 => updateMember(memberDTO) 메소드 호출, /member/main 주소 변경되면서 이동
// null이면 => /member/update 주소 변경되면서 이동
@PostMapping("/updatePro")
public String updatePro(MemberDTO memberDTO) {
System.out.println("MemberController updatePro()");
MemberDTO memberDTO2 = memberService.userCheck(memberDTO);
if(memberDTO2!=null) {
memberService.updateMember(memberDTO);
return "redirect:/member/main";
} else {
return "redirect:/member/update";
}
}
}
package com.itwillbs.service;
import java.sql.Timestamp;
import javax.inject.Inject;
import org.springframework.stereotype.Service;
import com.itwillbs.dao.MemberDAO;
import com.itwillbs.domain.MemberDTO;
@Service
public class MemberService {
(...생략...)
public void updateMember(MemberDTO memberDTO) {
System.out.println("MemberService updateMember()");
memberDAO.updateMember(memberDTO);
}
}
package com.itwillbs.dao;
import javax.inject.Inject;
import org.apache.ibatis.session.SqlSession;
import org.springframework.stereotype.Repository;
import com.itwillbs.domain.MemberDTO;
@Repository
public class MemberDAO {
(...생략...)
public void updateMember(MemberDTO memberDTO) {
System.out.println("MemberDAO updateMember()");
sqlSession.update(namespace+".updateMember", memberDTO);
}
}
redirect 대신 자바스크립트로 이동
기존 새로운 페이지임
뒤로 이동으로 변경
package com.itwillbs.controller;
import javax.inject.Inject;
import javax.servlet.http.HttpSession;
import org.springframework.http.HttpRequest;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import com.itwillbs.domain.MemberDTO;
import com.itwillbs.service.MemberService;
@Controller
@RequestMapping("/member/*")
public class MemberController {
//MemberService 파일 만들고 MemberService 객체 생성 => 멤버변수 자동으로 주입
@Inject
private MemberService memberService;
(...생략...)
// 가상주소 http://localhost:8080/funweb/member/loginPro, post방식
// login.jsp에서 입력한 데이터 => request => MemberDTO memberDTO 변수에 전달
// DB 작업 : MemberDTO memberDTO2 = userCheck(memberDTO)
// memberDTO2 null이 아니면 아이디, 비밀번호가 일치 => 로그인 표시 세션값을 "id",값 => /memeber/main 주소가 변경되면서 이동
// null이면 아이디, 비밀번호가 틀림 => /memeber/login 주소 변경되면서 이동
@PostMapping("/loginPro")
public String loginPro(MemberDTO memberDTO, HttpSession session) {
System.out.println("MemberController loginPro()");
MemberDTO memberDTO2 = memberService.userCheck(memberDTO);
if(memberDTO2 != null) {
session.setAttribute("id",memberDTO.getId());
return "redirect:/member/main";
} else {
// return "redirect:/member/login"; member/msg.jsp 주소 변경없이 이동
return "member/msg";
}
}
(...생략...)
}
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>member/msg.jsp</title>
</head>
<body>
<script type="text/javascript">
alert("아이디, 비밀번호 틀림");
history.back(); //뒤로 이동
</script>
</body>
</html>
GitHub
※형상관리
선 백업 후 작업
*저장소 생성 - 주소
*토큰발급(프로젝트 진행시 비밀번호 사용)
프로필-settings-Developer settings - Personal access tokens - tokens(classic)-Generate new token classic
-Note(설명) - Expiration : No expiration - Select scopes : 모두 선택 - Generate token - 토큰 번호(한번 만 보여줌 복사가 필수)
commit(작업단위 기록) push pull clone
프로젝트에서 우클릭 - Team - Share Project
프로젝트 우클릭 - Team - Commit
Unstatged Changes에서 Staged Changes로 파일을 추가 Commit Message 작성 후 Commit
이런 식으로 반복
팀프로젝트 시 백업을 해놓고 원격 저장소(github.com 저장소) 기록
Team - Push Branch 'master'...
URI에 저장소 주소
User : 주소
Password : 토큰 비밀번호
원격저장소에서 수정된 내용을 가져와서 병합 pull
가지(Branch)만들기
가지 이름 branch - Finish
팀원 초대
프로젝트 저장소 - Settings - Collaborators - Add people 초대
초대 받은 팀원 => 메일 확인 => 초대 참여
branch
초대받은 팀원 만 작업
팀프로젝트 주소
스프링 GIT환경선택
Clone Git Repository
URI : 초대받은 주소다음
Local Destination
Directory : 작업폴더 지정 d:workspace_sts
Projects
체크
Import all existing Eclipse projects after clone finishes
커밋단위로 되돌리기
Team - Reset
'KDT > WEB' 카테고리의 다른 글
240213 WEB(펀웹5) (0) | 2024.02.13 |
---|---|
240208 WEB(펀웹4(board)) (0) | 2024.02.08 |
240205 WEB(펀웹2) (0) | 2024.02.05 |
240201 WEB(조회, 펀웹1) (0) | 2024.02.01 |
240130 WEB(회원수정,삭제) (0) | 2024.01.30 |