From cb31821d1c6d1144bc1363c7347c0919232d09a3 Mon Sep 17 00:00:00 2001 From: "himanshuraghorteatwork@gmail.com" Date: Tue, 6 Jan 2026 13:04:24 +0530 Subject: [PATCH] Himanshu addes student profile --- JobPortal/pom.xml | 6 +++ .../com/jobportal/dto/ProfileRequestDto.java | 11 +++++ .../com/jobportal/dto/ProfileResponseDto.java | 15 +++++++ .../main/java/com/jobportal/entity/Entit.java | 5 +++ .../java/com/jobportal/entity/Profile.java | 30 +++++++++++++ .../com/jobportal/mapper/ProfileMapper.java | 43 +++++++++++++++++++ .../repository/ProfileRepository.java | 13 ++++++ .../com/jobportal/service/ProfileService.java | 18 ++++++++ .../src/main/resources/application.properties | 2 +- 9 files changed, 142 insertions(+), 1 deletion(-) create mode 100644 JobPortal/src/main/java/com/jobportal/dto/ProfileRequestDto.java create mode 100644 JobPortal/src/main/java/com/jobportal/dto/ProfileResponseDto.java create mode 100644 JobPortal/src/main/java/com/jobportal/entity/Entit.java create mode 100644 JobPortal/src/main/java/com/jobportal/entity/Profile.java create mode 100644 JobPortal/src/main/java/com/jobportal/mapper/ProfileMapper.java create mode 100644 JobPortal/src/main/java/com/jobportal/repository/ProfileRepository.java create mode 100644 JobPortal/src/main/java/com/jobportal/service/ProfileService.java diff --git a/JobPortal/pom.xml b/JobPortal/pom.xml index 2886249..4d64525 100644 --- a/JobPortal/pom.xml +++ b/JobPortal/pom.xml @@ -30,6 +30,12 @@ 21 + + + org.springframework.boot + spring-boot-starter-actuator + + org.springframework.boot spring-boot-starter-data-jpa diff --git a/JobPortal/src/main/java/com/jobportal/dto/ProfileRequestDto.java b/JobPortal/src/main/java/com/jobportal/dto/ProfileRequestDto.java new file mode 100644 index 0000000..9c3a2f4 --- /dev/null +++ b/JobPortal/src/main/java/com/jobportal/dto/ProfileRequestDto.java @@ -0,0 +1,11 @@ +package com.jobportal.dto; + +public class ProfileRequestDto { + + private String FullName; + private String Email; + private String Phone; + private String Skills; + private int Experience; + +} diff --git a/JobPortal/src/main/java/com/jobportal/dto/ProfileResponseDto.java b/JobPortal/src/main/java/com/jobportal/dto/ProfileResponseDto.java new file mode 100644 index 0000000..08e455c --- /dev/null +++ b/JobPortal/src/main/java/com/jobportal/dto/ProfileResponseDto.java @@ -0,0 +1,15 @@ +package com.jobportal.dto; + +public class ProfileResponseDto { + + private Long Id; + private String Fullname; + private String Email; + private String Phone; + private String Skills; + private int Experience; + + private String ResumePath; + + +} diff --git a/JobPortal/src/main/java/com/jobportal/entity/Entit.java b/JobPortal/src/main/java/com/jobportal/entity/Entit.java new file mode 100644 index 0000000..ff5e671 --- /dev/null +++ b/JobPortal/src/main/java/com/jobportal/entity/Entit.java @@ -0,0 +1,5 @@ +package com.jobportal.entity; + +public @interface Entit { + +} diff --git a/JobPortal/src/main/java/com/jobportal/entity/Profile.java b/JobPortal/src/main/java/com/jobportal/entity/Profile.java new file mode 100644 index 0000000..3b65326 --- /dev/null +++ b/JobPortal/src/main/java/com/jobportal/entity/Profile.java @@ -0,0 +1,30 @@ +package com.jobportal.entity; + +import jakarta.persistence.Entity; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.GenerationType; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import lombok.Data; + +@Data +@Entity +@Table(name = "profiles") +public class Profile { + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + private Long id; + + private String FullName; + private String Email; + private String Phone; + + private String Skills; + + private int Experience; + + private String ResumePath; + + +} diff --git a/JobPortal/src/main/java/com/jobportal/mapper/ProfileMapper.java b/JobPortal/src/main/java/com/jobportal/mapper/ProfileMapper.java new file mode 100644 index 0000000..f0f7ae1 --- /dev/null +++ b/JobPortal/src/main/java/com/jobportal/mapper/ProfileMapper.java @@ -0,0 +1,43 @@ +package com.jobportal.mapper; + +import org.springframework.stereotype.Component; + +import com.jobportal.dto.ProfileRequestDto; +import com.jobportal.dto.ProfileResponseDto; +import com.jobportal.entity.Profile; + +import lombok.Data; + +@Data +@Component +public class ProfileMapper { + + // Dto = Entity + + public Profile dtoToEntity(ProfileRequestDto dto) { + Profile profile = new Profile(); + profile.setFullName(dto.getFullName()); + profile.setEmail(dto.getEmail()); + profile.setPhone(dto.getPhone()); + profile.setSkills(dto.getSkills()); + profile.setExperience(dto.getExperience()); + return profile; + } + + + // Entity → DTO + public ProfileResponseDto toDto(Profile profile) { + + ProfileResponseDto dto = new ProfileResponseDto(); + + dto.setId(profile.getId()); + dto.setFullName(profile.getFullName()); + dto.setEmail(profile.getEmail()); + dto.setPhone(profile.getPhone()); + dto.setSkills(profile.getSkills()); + dto.setExperience(profile.getExperience()); + dto.setResumePath(profile.getResumePath()); + + return dto; + } +} diff --git a/JobPortal/src/main/java/com/jobportal/repository/ProfileRepository.java b/JobPortal/src/main/java/com/jobportal/repository/ProfileRepository.java new file mode 100644 index 0000000..8297cfa --- /dev/null +++ b/JobPortal/src/main/java/com/jobportal/repository/ProfileRepository.java @@ -0,0 +1,13 @@ +package com.jobportal.repository; + +import java.util.Optional; + +import org.springframework.data.jpa.repository.JpaRepository; + +import com.jobportal.entity.Profile; + +public interface ProfileRepository extends JpaRepository { + + Optional findByEmail(String email); + +} diff --git a/JobPortal/src/main/java/com/jobportal/service/ProfileService.java b/JobPortal/src/main/java/com/jobportal/service/ProfileService.java new file mode 100644 index 0000000..e0ff328 --- /dev/null +++ b/JobPortal/src/main/java/com/jobportal/service/ProfileService.java @@ -0,0 +1,18 @@ +package com.jobportal.service; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import com.jobportal.mapper.ProfileMapper; +import com.jobportal.repository.ProfileRepository; + +@Service +public interface ProfileService { + + @Autowired + private ProfileRepository profileRepo; + + + + +} diff --git a/JobPortal/src/main/resources/application.properties b/JobPortal/src/main/resources/application.properties index 439add4..766062e 100644 --- a/JobPortal/src/main/resources/application.properties +++ b/JobPortal/src/main/resources/application.properties @@ -4,7 +4,7 @@ spring.application.name=JobPortal # =============================== spring.datasource.url=jdbc:mysql://localhost:3306/student_db?useSSL=false&serverTimezone=UTC spring.datasource.username=root -spring.datasource.password=root +spring.datasource.password=himanshu1234 spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver # ===============================