diff --git a/src/main/java/info/ahlberg/spring/controller/ContactController.java b/src/main/java/info/ahlberg/spring/controller/ContactController.java index 62adee5..3960893 100755 --- a/src/main/java/info/ahlberg/spring/controller/ContactController.java +++ b/src/main/java/info/ahlberg/spring/controller/ContactController.java @@ -1,5 +1,7 @@ package info.ahlberg.spring.controller; +import java.util.List; + import info.ahlberg.spring.domain.Contact; import info.ahlberg.spring.service.ContactService; @@ -8,33 +10,38 @@ import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; @Controller @RequestMapping("/") public class ContactController { - @Autowired - private ContactService contactService; - - @RequestMapping("/") - String index(Model model) { - model.addAttribute("msg", "A nice message"); - - model.addAttribute("contacts", contactService.findAll()); + @Autowired + private ContactService contactService; + + @RequestMapping("/") + String index(Model model) { + model.addAttribute("msg", "A nice message"); + + model.addAttribute("contacts", contactService.findAll()); - return "index"; - } + return "index"; + } + @RequestMapping("/contacts") + @ResponseBody List contacts(Model model) { + return contactService.findAll(); + } - @RequestMapping("/add") - String add(@RequestParam String name, Model model) { - model.addAttribute("msg", "A nice message"); + @RequestMapping("/add") + String add(@RequestParam String name, Model model) { + model.addAttribute("msg", "A nice message"); - Contact contact = new Contact(); - contact.setName(name); - contactService.save(contact); + Contact contact = new Contact(); + contact.setName(name); + contactService.save(contact); - model.addAttribute("contacts", contactService.findAll()); + model.addAttribute("contacts", contactService.findAll()); - return "index"; - } + return "index"; + } } diff --git a/src/main/java/info/ahlberg/spring/dao/ContactDAOWithJPA.java b/src/main/java/info/ahlberg/spring/dao/ContactDAOWithJPA.java index 2226afc..90485ca 100755 --- a/src/main/java/info/ahlberg/spring/dao/ContactDAOWithJPA.java +++ b/src/main/java/info/ahlberg/spring/dao/ContactDAOWithJPA.java @@ -4,7 +4,6 @@ import info.ahlberg.spring.domain.Contact; import org.springframework.stereotype.Repository; - @Repository public class ContactDAOWithJPA extends GenericDAOWithJPA implements ContactDAO { diff --git a/src/main/java/info/ahlberg/spring/dao/GenericDAOWithJPA.java b/src/main/java/info/ahlberg/spring/dao/GenericDAOWithJPA.java index ec208d3..97a871c 100755 --- a/src/main/java/info/ahlberg/spring/dao/GenericDAOWithJPA.java +++ b/src/main/java/info/ahlberg/spring/dao/GenericDAOWithJPA.java @@ -33,7 +33,7 @@ public abstract class GenericDAOWithJPA implements G } public T loadById(ID id) { - if(id == null) { + if (id == null) { return null; } else { return entityManager.find(persistentClass, id); diff --git a/src/main/java/info/ahlberg/spring/domain/Contact.java b/src/main/java/info/ahlberg/spring/domain/Contact.java index fbba243..d506bde 100755 --- a/src/main/java/info/ahlberg/spring/domain/Contact.java +++ b/src/main/java/info/ahlberg/spring/domain/Contact.java @@ -10,7 +10,7 @@ import javax.persistence.Id; import javax.persistence.Version; @Entity -public class Contact implements Serializable { +public class Contact implements Serializable { private static final long serialVersionUID = 1L; @Id @@ -23,28 +23,28 @@ public class Contact implements Serializable { @Column(nullable = false) private String name; - public Long getId() { - return id; - } + public Long getId() { + return id; + } - public void setId(Long id) { - this.id = id; - } + public void setId(Long id) { + this.id = id; + } - public Long getVersion() { - return version; - } + public Long getVersion() { + return version; + } - public void setVersion(Long version) { - this.version = version; - } + public void setVersion(Long version) { + this.version = version; + } - public String getName() { - return name; - } + public String getName() { + return name; + } - public void setName(String name) { - this.name = name; - } + public void setName(String name) { + this.name = name; + } } diff --git a/src/main/java/info/ahlberg/spring/service/ContactService.java b/src/main/java/info/ahlberg/spring/service/ContactService.java index 107b54c..0bd54ab 100755 --- a/src/main/java/info/ahlberg/spring/service/ContactService.java +++ b/src/main/java/info/ahlberg/spring/service/ContactService.java @@ -1,11 +1,13 @@ package info.ahlberg.spring.service; +import java.util.List; + import info.ahlberg.spring.domain.Contact; public interface ContactService { - Object findAll(); + List findAll(); - void save(Contact contact); + void save(Contact contact); } diff --git a/src/main/java/info/ahlberg/spring/service/ContactServiceImpl.java b/src/main/java/info/ahlberg/spring/service/ContactServiceImpl.java index e47996b..3326df6 100755 --- a/src/main/java/info/ahlberg/spring/service/ContactServiceImpl.java +++ b/src/main/java/info/ahlberg/spring/service/ContactServiceImpl.java @@ -1,5 +1,7 @@ package info.ahlberg.spring.service; +import java.util.List; + import info.ahlberg.spring.dao.ContactDAO; import info.ahlberg.spring.domain.Contact; @@ -9,18 +11,18 @@ import org.springframework.transaction.annotation.Transactional; @Service public class ContactServiceImpl implements ContactService { - @Autowired - private ContactDAO contactDAO; + @Autowired + private ContactDAO contactDAO; - @Override - public Object findAll() { - return contactDAO.loadAll(); - } + @Override + public List findAll() { + return contactDAO.loadAll(); + } - @Override - @Transactional - public void save(Contact contact) { - contactDAO.persist(contact); - } + @Override + @Transactional + public void save(Contact contact) { + contactDAO.persist(contact); + } }