ciao!
allora posto tutto.
model utente:
codice:
package com.mp.springtest.model;
import javax.persistence.*;
import java.util.List;
@Entity
@Table(name = "utenti")
public class Utente {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Integer id;
private String email;
private String password;
@OneToMany(fetch = FetchType.EAGER, mappedBy = "utente")
private List<Attivita> attivita;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public List<Attivita> getAttivita() {
return attivita;
}
public void setAttivita(List<Attivita> attivita) {
this.attivita = attivita;
}
}
model attività:
codice:
package com.mp.springtest.model;
import javax.persistence.*;
@Entity
@Table(name = "attivita")
public class Attivita {
@Id
@Column(name = "a_id")
@GeneratedValue(strategy = GenerationType.AUTO)
private Integer id;
@ManyToOne(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
@JoinColumn(name = "a_utente")
private Utente utente;
@Column(name = "a_descrizione")
private String descrizione;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public Utente getUtente() {
return utente;
}
public void setUtente(Utente utente) {
this.utente = utente;
}
public String getDescrizione() {
return descrizione;
}
public void setDescrizione(String descrizione) {
this.descrizione = descrizione;
}
}
repository utente:
codice:
package com.mp.springtest.model;
import org.springframework.data.jpa.repository.JpaRepository;
public interface UtentiRepository extends JpaRepository<Utente, Integer> {
}
repository attivita (che cmq per adesso non sto usando):
codice:
package com.mp.springtest.model;
import org.springframework.data.jpa.repository.JpaRepository;
public interface AttivitaRepository extends JpaRepository<Attivita, Integer> {
}
controller utente (unico controller che ho al momento):
codice:
package com.mp.springtest.controller;
import com.mp.springtest.model.Utente;
import com.mp.springtest.model.UtentiRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Optional;
@RestController
@RequestMapping(path = "/utenti")
public class UtentiController {
@Autowired
private UtentiRepository utentiRepository;
@PostMapping(path = "/add")
public @ResponseBody
String add(@RequestParam String email, @RequestParam String password) {
Utente u = new Utente();
u.setEmail(email);
u.setPassword(password);
utentiRepository.save(u);
return "OK";
}
@GetMapping(path = "/")
public @ResponseBody
List<Utente> getAll() {
return utentiRepository.findAll();
}
@GetMapping(path = "/{utenteId}")
public @ResponseBody
Optional<Utente> getById(@PathVariable Integer utenteId) {
return utentiRepository.findById(utenteId);
}
}
infine il main:
codice:
package com.mp.springtest;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class SpringtestApplication {
public static void main(String[] args) {
SpringApplication.run(SpringtestApplication.class, args);
}
}