diff --git a/src/main/java/io/khasang/gahelp/controller/HorseController.java b/src/main/java/io/khasang/gahelp/controller/HorseController.java index 96e1d09..f7f6664 100644 --- a/src/main/java/io/khasang/gahelp/controller/HorseController.java +++ b/src/main/java/io/khasang/gahelp/controller/HorseController.java @@ -2,7 +2,6 @@ import io.khasang.gahelp.entity.Horse; import io.khasang.gahelp.service.HorseService; -import org.springframework.security.access.annotation.Secured; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.*; @@ -44,4 +43,9 @@ public Horse deleteHorse(@PathVariable("id") long id) { return horseService.delete(id); } + @RequestMapping(value = "/update/{id}", method = RequestMethod.PUT) + @ResponseBody + public Horse updateHorseById(@PathVariable("id") long id, @RequestBody Horse horse) { + return horseService.updateById(id, horse); + } } diff --git a/src/main/java/io/khasang/gahelp/dao/BasicDao.java b/src/main/java/io/khasang/gahelp/dao/BasicDao.java index 680132d..5df84cd 100644 --- a/src/main/java/io/khasang/gahelp/dao/BasicDao.java +++ b/src/main/java/io/khasang/gahelp/dao/BasicDao.java @@ -1,7 +1,5 @@ package io.khasang.gahelp.dao; -import io.khasang.gahelp.entity.Horse; - import java.util.List; public interface BasicDao { @@ -35,4 +33,12 @@ public interface BasicDao { * @return deleted entity */ T delete(T entity); + + /** + * service for update entity + * + * @param entity - entity for update + * @return updated entity + */ + T updateById(T entity); } diff --git a/src/main/java/io/khasang/gahelp/dao/impl/BasicDaoImpl.java b/src/main/java/io/khasang/gahelp/dao/impl/BasicDaoImpl.java index 2849c15..ce3a981 100644 --- a/src/main/java/io/khasang/gahelp/dao/impl/BasicDaoImpl.java +++ b/src/main/java/io/khasang/gahelp/dao/impl/BasicDaoImpl.java @@ -37,6 +37,12 @@ public T delete(T entity) { return entity; } + @Override + public T updateById(T entity) { + getSession().update(entity); + return entity; + } + @Override public List getAll() { // select * from horses; diff --git a/src/main/java/io/khasang/gahelp/service/HorseService.java b/src/main/java/io/khasang/gahelp/service/HorseService.java index f7b1ebe..b52ab2e 100644 --- a/src/main/java/io/khasang/gahelp/service/HorseService.java +++ b/src/main/java/io/khasang/gahelp/service/HorseService.java @@ -36,4 +36,6 @@ public interface HorseService { * @return deleted horse */ Horse delete(long id); + + Horse updateById(long id, Horse horse); } diff --git a/src/main/java/io/khasang/gahelp/service/impl/HorseServiceImpl.java b/src/main/java/io/khasang/gahelp/service/impl/HorseServiceImpl.java index e4fed07..fb3e3a8 100644 --- a/src/main/java/io/khasang/gahelp/service/impl/HorseServiceImpl.java +++ b/src/main/java/io/khasang/gahelp/service/impl/HorseServiceImpl.java @@ -36,4 +36,10 @@ public Horse delete(long id) { public void setHorseDao(HorseDao horseDao) { this.horseDao = horseDao; } + + @Override + public Horse updateById(long id, Horse horse) { + horse.setId(id); + return horseDao.updateById(horse); + } } diff --git a/src/main/webapp/WEB-INF/views/horse.jsp b/src/main/webapp/WEB-INF/views/horse.jsp index dda1c2b..572be1d 100644 --- a/src/main/webapp/WEB-INF/views/horse.jsp +++ b/src/main/webapp/WEB-INF/views/horse.jsp @@ -1,3 +1,5 @@ +<%@ page import="io.khasang.gahelp.entity.Horse" %> +<%@ page import="java.util.List" %> <%@ page contentType="text/html;charset=UTF-8" language="java" %> @@ -9,10 +11,10 @@ @@ -104,6 +154,24 @@ + + Delete horse by id - DELETE + /horse/delete/{id} + + id: + + + + + Update horse - PUT + /horse/update + + id: + name: + description: + + +
@@ -112,6 +180,5 @@
-