diff --git a/server-node-spring/src/main/java/org/example/thiefsil/entity/Vehicle.java b/server-node-spring/src/main/java/org/example/thiefsil/entity/Vehicle.java
index 25987e9676dd01caeb71a6b4d2675a4e3cf9713a..72267d34dada4daf672ba1617c54cd7d8486e9a0 100644
--- a/server-node-spring/src/main/java/org/example/thiefsil/entity/Vehicle.java
+++ b/server-node-spring/src/main/java/org/example/thiefsil/entity/Vehicle.java
@@ -26,5 +26,6 @@ public class Vehicle {
     private Integer charge;
     private boolean isElectric;
     private LocalDateTime parkingTime;
+    private LocalDateTime lastMail;
     private Integer charger;
 }
diff --git a/server-node-spring/src/main/java/org/example/thiefsil/repository/VehicleRepository.java b/server-node-spring/src/main/java/org/example/thiefsil/repository/VehicleRepository.java
index 686ad3d635626f48d8e84c5a141378a02fdfedd4..6e2781d139a9cc3711872362920bd12b6541497a 100644
--- a/server-node-spring/src/main/java/org/example/thiefsil/repository/VehicleRepository.java
+++ b/server-node-spring/src/main/java/org/example/thiefsil/repository/VehicleRepository.java
@@ -5,13 +5,15 @@ import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.data.jpa.repository.Query;
 import org.springframework.data.repository.query.Param;
 
+import java.time.LocalDateTime;
+import java.util.List;
 import java.util.Optional;
 
 public interface VehicleRepository extends JpaRepository<Vehicle, Long> {
 
     public Optional<Vehicle> findVehicleByNumber(String number);
-    //public Optional<Vehicle> findVehicleByCharger(int charger);
     @Query("SELECT v FROM Vehicle v WHERE v.charger = :charger")
     Optional<Vehicle> findVehicleByCharger(@Param("charger") int charger);
     public void deleteVehicleByCharger(int charger);
+    public List<Vehicle> findVehiclesByParkingTimeBeforeAndLastMailBefore(LocalDateTime parkingTime, LocalDateTime lastMail);
 }
diff --git a/server-node-spring/src/main/java/org/example/thiefsil/service/ChargingService.java b/server-node-spring/src/main/java/org/example/thiefsil/service/ChargingService.java
index 62cb1f1436e0b1d694f71eda47530f83c69cffab..fa02a5482a194753116bb18e48579f49ad013f46 100644
--- a/server-node-spring/src/main/java/org/example/thiefsil/service/ChargingService.java
+++ b/server-node-spring/src/main/java/org/example/thiefsil/service/ChargingService.java
@@ -95,6 +95,7 @@ public class ChargingService {
         Vehicle vehicle = vehicleRepository.findVehicleByCharger(Integer.valueOf(lot)).orElse(null);
         if (vehicle == null) return;
         vehicle.setParkingTime(LocalDateTime.now(ZoneId.of("Asia/Seoul")));
+        vehicle.setLastMail(LocalDateTime.now(ZoneId.of("Asia/Seoul")));
         vehicleRepository.save(vehicle);
     }
 
@@ -125,6 +126,23 @@ public class ChargingService {
         webMailService.sendFireMail(lot);
     }
 
+    @Scheduled(fixedRate = 60000)
+    public void overParking() {
+        LocalDateTime park = LocalDateTime.now(ZoneId.of("Asia/Seoul"));
+        LocalDateTime mail = LocalDateTime.now(ZoneId.of("Asia/Seoul"));
+
+        park = park.minusMinutes(3);
+        mail = mail.minusMinutes(1);
+
+        List<Vehicle> vehicles = vehicleRepository.findVehiclesByParkingTimeBeforeAndLastMailBefore(park, mail);
+        for (Vehicle vehicle : vehicles) {
+            webMailService.sendOverMail(vehicle);
+            vehicle.setLastMail(mail);
+            vehicleRepository.save(vehicle);
+        }
+
+    }
+
     @PostConstruct
     public void init() {
 
diff --git a/server-node-spring/src/main/java/org/example/thiefsil/service/WebMailService.java b/server-node-spring/src/main/java/org/example/thiefsil/service/WebMailService.java
index e5453866d9be493a7df7245352449a6e52130563..a375b97ee1f46d6b0b52d323e2ced1a00ed027aa 100644
--- a/server-node-spring/src/main/java/org/example/thiefsil/service/WebMailService.java
+++ b/server-node-spring/src/main/java/org/example/thiefsil/service/WebMailService.java
@@ -13,6 +13,9 @@ import org.springframework.web.socket.TextMessage;
 import org.springframework.web.socket.WebSocketSession;
 
 import java.io.IOException;
+import java.time.Duration;
+import java.time.LocalDateTime;
+import java.time.ZoneId;
 import java.util.List;
 
 @Service
@@ -54,4 +57,18 @@ public class WebMailService {
         }
     }
 
+    public void sendOverMail(Vehicle vehicle) {
+        SimpleMailMessage message = new SimpleMailMessage();
+        Driver driver = vehicle.getDriver();
+        long time = Duration.between(vehicle.getParkingTime(), LocalDateTime.now(ZoneId.of("Asia/Seoul"))).toMinutes();
+
+        message.setTo(driver.getEmail());
+        message.setSubject("[시프 충전소] " + driver.getName() + "님 주차 시간이 만료되었습니다");
+        message.setText(vehicle.getNumber() + " 차량을 " + vehicle.getCharger() + "번 충전기에 주차한지 " +
+                time + "분이 지났습니다");
+
+        mailSender.send(message);
+        System.out.println(LocalDateTime.now(ZoneId.of("Asia/Seoul")) + " 메일 전송 " + vehicle.getNumber());
+    }
+
 }