Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions potato-field/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,17 @@ repositories {

dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
implementation 'org.springframework.boot:spring-boot-starter-security'
implementation 'org.springframework.boot:spring-boot-starter-validation'
implementation 'io.jsonwebtoken:jjwt-api:0.11.5'
runtimeOnly 'io.jsonwebtoken:jjwt-impl:0.11.5'
runtimeOnly 'io.jsonwebtoken:jjwt-jackson:0.11.5'
runtimeOnly 'com.h2database:h2'
compileOnly 'org.projectlombok:lombok'
annotationProcessor 'org.projectlombok:lombok'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
testImplementation 'org.springframework.security:spring-security-test'
testRuntimeOnly 'org.junit.platform:junit-platform-launcher'
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,6 @@
@SpringBootApplication
public class PotatoFieldApplication {

// jy test
// sy test~~
// sh test
public static void main(String[] args) {
SpringApplication.run(PotatoFieldApplication.class, args);
}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
package com.tools.potato_field;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.security.crypto.password.PasswordEncoder;

@Configuration
public class SecurityConfig {

@Bean
public PasswordEncoder passwordEncoder() {
return new BCryptPasswordEncoder();
}

// 기타 보안 설정...
}

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package com.tools.potato_field.entity;

import javax.persistence.*;
import jakarta.persistence.*;
import lombok.Data;

@Entity
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package com.tools.potato_field.dto;

import lombok.Data;

@Data
public class LoginRequest {
private String email;
private String password;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package com.tools.potato_field.entity;

import jakarta.persistence.Entity;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;

@Entity
public class Category {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;

private String placeName;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package com.tools.potato_field.entity;

import jakarta.persistence.Entity;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;

@Entity
public class Category_1 {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;

private String genderName;
}
15 changes: 0 additions & 15 deletions potato-field/src/main/java/com/tools/potato_field/entity/Item.java

This file was deleted.

This file was deleted.

This file was deleted.

23 changes: 23 additions & 0 deletions potato-field/src/main/java/com/tools/potato_field/item/Item.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package com.tools.potato_field.item;

import com.tools.potato_field.entity.Member;
import jakarta.persistence.*;
import lombok.Data;

@Entity
@Data
public class Item {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String itemName;
private String itemURL;
private Integer iconNumber;
private Long id2;

@ManyToOne
@JoinColumn(name = "member_id")
private Member member;

// Getters and Setters
}
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package com.tools.potato_field.controller;

import com.tools.potato_field.entity.Item;
import com.tools.potato_field.service.ItemService;
import com.tools.potato_field.item.Item;
import com.tools.potato_field.item.ItemService;
import org.springframework.web.bind.annotation.*;

import java.util.List;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package com.tools.potato_field.repository;
package com.tools.potato_field.item;

import com.tools.potato_field.entity.Item;
import org.springframework.data.jpa.repository.JpaRepository;

public interface ItemRepository extends JpaRepository<Item, Long> {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
package com.tools.potato_field.service;
package com.tools.potato_field.item;

import com.tools.potato_field.entity.Item;
import com.tools.potato_field.repository.ItemRepository;
import jakarta.transaction.Transactional;
import org.springframework.stereotype.Service;

import javax.transaction.Transactional;
import java.util.List;

@Service
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
package com.tools.potato_field.entity;

import jakarta.persistence.*;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Entity
@Table(name = "members")
public class Member {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;

@Column(nullable = false, unique = true)
private String email;

@Column(nullable = false)
private String password;

private String name;

private String address;

// 추가적인 필드들 (예: 생년월일, 전화번호 등)
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
package com.tools.potato_field.controller;

import com.tools.potato_field.entity.Member;
import com.tools.potato_field.service.MemberService;
import com.tools.potato_field.dto.LoginRequest;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@RequestMapping("/api/members")
public class MemberController {

private final MemberService memberService;

@Autowired
public MemberController(MemberService memberService) {
this.memberService = memberService;
}

@PostMapping("/register")
public ResponseEntity<Member> registerMember(@RequestBody Member member) {
return ResponseEntity.ok(memberService.registerMember(member));
}

@GetMapping("/{id}")
public ResponseEntity<Member> getMember(@PathVariable Long id) {
return ResponseEntity.ok(memberService.findMember(id));
}

@GetMapping
public ResponseEntity<List<Member>> getAllMembers() {
return ResponseEntity.ok(memberService.findAllMembers());
}

@DeleteMapping("/{id}")
public ResponseEntity<Void> deleteMember(@PathVariable Long id) {
memberService.deleteMember(id);
return ResponseEntity.ok().build();
}

@PostMapping("/login")
public ResponseEntity<Member> loginMember(@RequestBody LoginRequest loginRequest) {
return ResponseEntity.ok(memberService.loginMember(loginRequest.getEmail(), loginRequest.getPassword()));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,11 @@

import com.tools.potato_field.entity.Member;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;

import java.util.Optional;

@Repository
public interface MemberRepository extends JpaRepository<Member, Long> {
}
Optional<Member> findByEmail(String email);
}
Loading