<prompt> Tengeneza API ya RESTful inayotokana na Java ambayo hutumika kama mfumo rahisi wa usimamizi wa kazi. API inapaswa kusaidia kuunda, kusasisha, kufuta na kuorodhesha kazi, huku kila kazi ikiwa na kichwa, maelezo, tarehe ya kukamilisha na hali k.m., inasubiri, imekamilika. Tekeleza uthibitishaji kwa kutumia tokeni za JWT na uhifadhi data katika hifadhidata ya MySQL.PLINFORMAT  <response>: EntityKazi ya darasa la umma kitambulisho GeneratedValuemkakati GenerationType.IDENTITY Kitambulisho cha kibinafsi cha muda mrefu; Kichwa cha Kamba ya kibinafsi; maelezo ya Kamba ya kibinafsi; binafsi Tarehe ya kukamilisha Tarehe ya Ndani; hali ya Kamba ya kibinafsi; Wapataji na wawekajiEntityMtumiaji wa darasa la umma anatumia Maelezo ya mtumiaji kitambulisho GeneratedValuemkakati GenerationType.IDENTITY Kitambulisho cha kibinafsi cha muda mrefu; jina la mtumiaji la Kamba ya kibinafsi; Nenosiri la Kamba la kibinafsi; ElementCollectionchota FetchType.EAGER Orodha ya faragha majukumu; Wapataji na wawekaji Tekeleza njia za Maelezo ya Mtumiajispring.datasource.urljdbc:mysql:localhost:3306task_managementspring.datasource.usernamemzizispring.datasource.passwordnenosiri_lakospring.jpa.hibernate.ddl-autosasishainterface ya umma TaskRepository inapanua JpaRepository interface ya umma UserRepository inapanua JpaRepository Mtumiaji findByUsernamejina la mtumiaji la kamba;HudumaPublicService ya umma hutumia UserDetailsService Ina waya otomatiki Private UserRepository userRepository; public UserDetails loadUserByUsernamejina la mtumiaji la kamba hutupa UsernameNotFoundException Pakia mtumiaji kutoka kwa hifadhidata public User saveUserMtumiaji mtumiaji Hifadhi mtumiaji kwenye hifadhidata Sehemudarasa la umma JwtTokenProvider Tengeneza na uthibitishe tokeni za JWTUsanidiWezeshaWebSecuritydarasa la umma SecurityConfig kupanua WebSecurityConfigurerAdapter Ina waya otomatiki Huduma ya mtumiaji binafsi ya Huduma ya Mtumiaji; Ina waya otomatiki binafsi JwtTokenProvider jwtTokenProvider; Sanidi Usalama wa Spring ili kutumia JWT kwa uthibitishajiRestControllerRequestMappingapiusersMtumiajiMdhibiti wa darasa la umma Ina waya otomatiki Huduma ya mtumiaji binafsi ya Huduma ya Mtumiaji; Ina waya otomatiki binafsi JwtTokenProvider jwtTokenProvider; PostMappingjisajili public ResponseEntity registerRequestBody User User Sajili mtumiaji mpya PostMappingingia public ResponseEntity loginRequestBody User User Thibitisha mtumiaji na urudishe tokeni ya JWT RestControllerRequestMappingapitasksTaskController ya darasa la umma Ina waya otomatiki Hifadhi ya kibinafsi ya TaskRepository; GetMapping Public List getAllTasks Rudisha kazi zote PostMapping public Task createTaskRequestBody Task task Unda kazi mpya PutMappingid sasisho la Kazi la ummaTaskPathVariable Kitambulisho kirefu, RequestBody Task updatedTask Sasisha kazi iliyopo DeleteMappingid public ResponseEntity deleteTaskPathVariable Long id Futa kazi kwa kitambulisho 