diff --git a/springboot-elasticsearch/src/main/java/org/spring/springboot/controller/CityRestController.java b/springboot-elasticsearch/src/main/java/org/spring/springboot/controller/CityRestController.java
index b8b443d..2f2f4f5 100644
--- a/springboot-elasticsearch/src/main/java/org/spring/springboot/controller/CityRestController.java
+++ b/springboot-elasticsearch/src/main/java/org/spring/springboot/controller/CityRestController.java
@@ -3,9 +3,10 @@ package org.spring.springboot.controller;
import org.spring.springboot.domain.City;
import org.spring.springboot.service.CityService;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.domain.Page;
import org.springframework.web.bind.annotation.*;
+import java.util.List;
+
/**
* 城市 Controller 实现 Restful HTTP 服务
*
@@ -18,14 +19,14 @@ public class CityRestController {
private CityService cityService;
@RequestMapping(value = "/api/city", method = RequestMethod.POST)
- public void createCity(@RequestBody City city) {
- cityService.saveCity(city);
+ public Long createCity(@RequestBody City city) {
+ return cityService.saveCity(city);
}
@RequestMapping(value = "/api/city/search", method = RequestMethod.GET)
- public Page searchCity(@RequestParam(value = "pageNumber") Integer pageNumber,
- @RequestParam(value = "pageSize", required = false) Integer pageSize,
- @RequestParam(value = "searchContent") String searchContent) {
+ public List searchCity(@RequestParam(value = "pageNumber") Integer pageNumber,
+ @RequestParam(value = "pageSize", required = false) Integer pageSize,
+ @RequestParam(value = "searchContent") String searchContent) {
return cityService.searchCity(pageNumber,pageSize,searchContent);
}
}
diff --git a/springboot-elasticsearch/src/main/java/org/spring/springboot/domain/City.java b/springboot-elasticsearch/src/main/java/org/spring/springboot/domain/City.java
index 20b575e..55a1b5e 100644
--- a/springboot-elasticsearch/src/main/java/org/spring/springboot/domain/City.java
+++ b/springboot-elasticsearch/src/main/java/org/spring/springboot/domain/City.java
@@ -9,11 +9,10 @@ import java.io.Serializable;
*
* Created by bysocket on 03/05/2017.
*/
-@Document(indexName = "cityIndex", type = "city")
-public class City {
+@Document(indexName = "cityindex", type = "city")
+public class City implements Serializable{
-// implements Serializable
-// private static final long serialVersionUID = -1L;
+ private static final long serialVersionUID = -1L;
/**
* 城市编号
diff --git a/springboot-elasticsearch/src/main/java/org/spring/springboot/repository/CityRepository.java b/springboot-elasticsearch/src/main/java/org/spring/springboot/repository/CityRepository.java
new file mode 100644
index 0000000..c262e81
--- /dev/null
+++ b/springboot-elasticsearch/src/main/java/org/spring/springboot/repository/CityRepository.java
@@ -0,0 +1,14 @@
+package org.spring.springboot.repository;
+
+import org.spring.springboot.domain.City;
+import org.springframework.data.elasticsearch.repository.ElasticsearchRepository;
+import org.springframework.stereotype.Repository;
+
+/**
+ * Created by bysocket on 17/05/2017.
+ */
+@Repository
+public interface CityRepository extends ElasticsearchRepository {
+
+
+}
diff --git a/springboot-elasticsearch/src/main/java/org/spring/springboot/service/CityService.java b/springboot-elasticsearch/src/main/java/org/spring/springboot/service/CityService.java
index 24646a0..ebbde17 100644
--- a/springboot-elasticsearch/src/main/java/org/spring/springboot/service/CityService.java
+++ b/springboot-elasticsearch/src/main/java/org/spring/springboot/service/CityService.java
@@ -2,7 +2,7 @@
package org.spring.springboot.service;
import org.spring.springboot.domain.City;
-import org.springframework.data.domain.Page;
+import java.util.List;
public interface CityService {
@@ -22,5 +22,5 @@ public interface CityService {
* @param searchContent
* @return
*/
- Page searchCity(Integer pageNumber, Integer pageSize, String searchContent);
+ List searchCity(Integer pageNumber, Integer pageSize, String searchContent);
}
\ No newline at end of file
diff --git a/springboot-elasticsearch/src/main/java/org/spring/springboot/service/impl/CityServiceImpl.java b/springboot-elasticsearch/src/main/java/org/spring/springboot/service/impl/CityServiceImpl.java
index eb14d79..154f631 100644
--- a/springboot-elasticsearch/src/main/java/org/spring/springboot/service/impl/CityServiceImpl.java
+++ b/springboot-elasticsearch/src/main/java/org/spring/springboot/service/impl/CityServiceImpl.java
@@ -34,17 +34,17 @@ public class CityServiceImpl implements CityService {
@Override
public Long saveCity(City city) {
+
City cityResult = cityRepository.save(city);
return cityResult.getId();
}
@Override
- public Page searchCity(Integer pageNumber,
+ public List searchCity(Integer pageNumber,
Integer pageSize,
String searchContent) {
// 分页参数
- // 按城市编号倒序
- Pageable pageable = new PageRequest(pageNumber, pageSize, Sort.Direction.DESC, "id");
+ Pageable pageable = new PageRequest(pageNumber, pageSize);
// Function Score Query
FunctionScoreQueryBuilder functionScoreQueryBuilder = QueryBuilders.functionScoreQuery()
@@ -60,7 +60,8 @@ public class CityServiceImpl implements CityService {
LOGGER.info("\n searchCity(): searchContent [" + searchContent + "] \n DSL = \n " + searchQuery.getQuery().toString());
- return cityRepository.search(searchQuery);
+ Page searchPageResults = cityRepository.search(searchQuery);
+ return searchPageResults.getContent();
}
}