728x90
반응형
[Spring & Maria DB]
회원 정보 수정, 회원 정보 리스트 받아오기
mypage 기능중 하나인정보수정과
회원 정보를 통해 같은 지역, 성별, 나이 등의 조건을 프론트엔드에서 활용하기위해 필요한 정보리스트를 보내주는 작업을 하기위해 작성하게됐습니다.
환경
- HeidiSQL 11.3.0.6295
- Maria DB 10.6.3
- 스프링
- 인텔리제이
작업 사항으로는 회원 정보 수정으로
Id, Nickname, password, ProfileImg, age 등의 정보를 백엔드단에서 프론트로 수정할수있도록 만들어 주는 것입니다.
시작전 수정은 본래 put(update)를 사용하여야하나 post를 사용하였습니다.
[ Spring ]
회원 정보 수정
Controller
@PostMapping("/userupdate")
public ResponseEntity<Userupdate> userupdate(@RequestBody Userupdate userupdate ){
userService.userupdate(userupdate);
return new ResponseEntity<>(userupdate, HttpStatus.OK);
}
DAO
//회원 정보 수정
public void userupdate(Userupdate userupdate);
servie
servie
//회원 정보 수정
public void userupdate(Userupdate userupdate);
implement
//회원 정보 수정
public void userupdate(Userupdate userupdate);
vo
프론트 팀의 요청사항에 따라 id, nikname, email, address, sex, age, like, token, profileImg 를 보내 주게됐습니다.
package talk.server.vo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Userupdate {
private String id;
private String nickname;
private String email;
private String address;
private String sex;
private int age;
private int likes;
private String token;
private String profileImg;
}
mapper
sql문
<update id="userupdate" parameterType="talk.server.vo.Userupdate">
UPDATE users
SET email=#{email}, id=#{id}, nickname=#{nickname}, address=#{address}, profileImg=#{profileImg}
WHERE ID=#{id}
</update>
회원 정보 리스트
게시판에서 리스트 받아오기랑 유사합니다! 똑같다고 봐도 무방!
Controller
//친구 찾기용 회원 정보 전송
@GetMapping("/findfriends")
public ResponseEntity<ArrayList<User>> getAllUser() {
ArrayList<User> list = userService.getAllUser();
if (list != null) return new ResponseEntity<>(list, HttpStatus.OK);
else return new ResponseEntity<>(HttpStatus.NO_CONTENT);
}
DAO
//친구 찾기 정보 불러오기
public ArrayList<User> getAllUser();
service
//친구 찾을려면 정보 불러와줘야함
public ArrayList<User> getAllUser();
implement
@Override
public ArrayList<User> getAllUser() { return dao.getAllUser(); }
vo
User.java 그대로 사용 해줍니다.
package talk.server.vo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.security.core.GrantedAuthority;
import org.springframework.security.core.authority.SimpleGrantedAuthority;
import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.web.multipart.MultipartFile;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class User {
private String email;
private String id;
private String password;
private String nickname;
private String auth;
private String sex;
private String address;
private String profileImg;
private int age;
private int likes;
}
mapper
<select id="getAllUser" resultType="User">
select * from users
</select>
[ Postman ]
유저수정
POST : http://localhost:8080/user/userupdate
body - raw - JSON
mapper user.xml 에 있는 값을 넣어줍니다.
id 를 필두로 수정하고 싶은 값을 수정후 send 해줍니다.
이후 아래 수정된 값을 확인하면 됩니다.
{
"email":"",
"id":"opeerats",
"nickname":"은지스터",
"address":"대구 달성군"
}
유저 리스트
728x90
반응형
'개발 > 술Talk' 카테고리의 다른 글
[ IntelliJ ] 빌드 에러 (0) | 2021.09.08 |
---|---|
[Spring & Maria DB] Restful API 게시판 CRUD (0) | 2021.08.12 |
window 환경 Docker - Kurento ( 도커 - 쿠렌토 ) 사용하기 (11) | 2021.08.03 |
[ BE - JS ] 로그인, 회원가입, 로그아웃 구현 (0) | 2021.08.02 |
[ BE - JS ]JWT ( Security ) (0) | 2021.07.26 |