boot集成

This commit is contained in:
xwolf
2018-01-29 14:36:51 +08:00
parent 18c71203a4
commit e22e9e4fb2
19 changed files with 125 additions and 448 deletions
@@ -7,6 +7,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
@MapperScan("com.xwolf.boot.dao")
public class BootApplication {
public static void main(String[] args) {
SpringApplication.run(BootApplication.class, args);
}
@@ -0,0 +1,25 @@
package com.xwolf.boot.config;
/**
* 常量
* @author xwolf
* @since 1.8
* @version 1.0.0
**/
public class Constants {
/**
* 默认年月日格式化
*/
public static final String DATE_DEFAULT_FORMAT = "YYYY-MM-DD";
/**
* 默认日期时间格式化
*/
public static final String DATETIME_DEFAULT_FORMAT = "YYYY-MM-DD HH:mm:ss";
/**
* 默认时间格式化
*/
public static final String TIME_DEFAULT_FORMAT = "HH:mm:ss";
}
@@ -17,12 +17,11 @@ import java.util.HashMap;
import java.util.Map;
/**
* <p>
* </p>
*
* 数据源
* @author xwolf
* @date 2017-02-25 08:14
* @since V1.0.0
* @since 1.8
* @version 1.0.0
*/
@Configuration
public class DataSourceConfig {
@@ -12,17 +12,16 @@ import springfox.documentation.swagger2.annotations.EnableSwagger2;
/**
* <p>
* swigger 整合管理API接口
* 参考<url>http://www.jianshu.com/p/8033ef83a8ed</url>
* swagger 整合管理API接口
* 参考<url>http://www.jianshu.com/p/8033ef83a8ed</url>
* </p>
*
* @author xwolf
* @date 2017-02-26 20:12
* @since V1.0.0
*/
@Configuration
@EnableSwagger2
public class SwiggerConfig {
public class SwaggerConfig {
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
@@ -1,5 +1,6 @@
package com.xwolf.boot.controller;
import com.google.common.collect.Maps;
import com.xwolf.boot.entity.User;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
@@ -9,20 +10,20 @@ import org.springframework.web.bind.annotation.*;
import java.util.*;
/**
* <p>
* </p>
*
* Swagger API测试Controller,无明确时限,以Map代替CRUD
* @author xwolf
* @date 2017-02-26 20:15
* @since V1.0.0
* @since 1.8
* @version 1.0.0
*/
@RestController
@RequestMapping(value="/api")
public class ApiController {
static Map<Integer, User> users = Collections.synchronizedMap(new HashMap<Integer, User>());
private static Map<Integer, User> users = Maps.newConcurrentMap();
@ApiOperation(value="获取用户列表", notes="")
@RequestMapping(value={""}, method=RequestMethod.GET)
@GetMapping(value={"/list"})
public List<User> getUserList() {
List<User> r = new ArrayList<User>(users.values());
return r;
@@ -30,7 +31,7 @@ public class ApiController {
@ApiOperation(value="创建用户", notes="根据User对象创建用户")
@ApiImplicitParam(name = "user", value = "用户详细实体user", required = true, dataType = "User")
@RequestMapping(value="", method=RequestMethod.POST)
@PostMapping(value="/add")
public String postUser(@RequestBody User user) {
users.put(user.getUid(), user);
return "success";
@@ -56,6 +57,11 @@ public class ApiController {
return "success";
}
/**
* 删除用户
* @param id 用户ID
* @return
*/
@ApiOperation(value="删除用户", notes="根据url的id来指定删除对象")
@ApiImplicitParam(name = "id", value = "用户ID", required = true, dataType = "Integer")
@RequestMapping(value="/{id}", method=RequestMethod.DELETE)
@@ -1,26 +1,23 @@
package com.xwolf.boot.controller;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.xwolf.boot.entity.User;
import com.xwolf.boot.service.IUserService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import java.util.Date;
import javax.validation.Valid;
import java.util.List;
/**
* <p>
* </p>
*
* @author xwolf
* @date 2017-02-25 09:20
* @since V1.0.0
* @since 1.8
* @version 1.0.0
*/
@Controller
@RestController
@RequestMapping("user")
@Slf4j
public class UserController {
@@ -28,20 +25,17 @@ public class UserController {
@Autowired
private IUserService userService;
@RequestMapping(value = "add",method = RequestMethod.POST)
@ResponseBody
public String insert(@RequestParam(value = "name",defaultValue = "")String name){
User user = new User();
user.setUname(name);
user.setBirth(new Date());
@PostMapping(value = "add")
public String insert(@Valid User user){
// user.setBirth(new Date());
log.info("请求参数:{}",user);
return userService.insert(user);
return userService.insert(user);
}
@RequestMapping(value = "list/{start}/{size}",method = RequestMethod.POST)
public PageInfo<User> getUserList(@PathVariable("start")int start,@PathVariable("size")int size){
PageHelper.startPage(start,size);
@GetMapping(value = "list/{start}/{size}")
public List<User> getUserList(@PathVariable("start")int start,@PathVariable("size")int size){
PageHelper.startPage(start,size);
List<User> list= userService.getList();
return new PageInfo<>(list);
return list;
}
}
@@ -5,12 +5,10 @@ import com.xwolf.boot.entity.User;
import java.util.List;
/**
* <p>
* </p>
*
* @author xwolf
* @date 2017-02-25 09:07
* @since V1.0.0
* @since 1.8
* @version 1.0.0
*/
public interface IUserDao {
+23 -6
View File
@@ -1,23 +1,40 @@
package com.xwolf.boot.entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.xwolf.boot.config.Constants;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import lombok.ToString;
import org.hibernate.validator.constraints.Length;
import org.hibernate.validator.constraints.NotBlank;
import java.util.Date;
/**
* <p>
* </p>
*
* 用户
* @author xwolf
* @date 2017-02-25 09:00
* @since V1.0.0
* @since 1.8
* @version 1.0.0
*/
@Data
@Slf4j
@ToString
public class User {
/**
* 用户ID
*/
private int uid;
/**
* 用户名
*/
@NotBlank(message ="用户名不能为空")
@Length(min = 5,max =32,message = "用户名长度在5-32")
private String uname;
/**
* 生日
*/
@JsonFormat(pattern = Constants.DATE_DEFAULT_FORMAT)
private Date birth;
}
@@ -5,12 +5,10 @@ import com.xwolf.boot.entity.User;
import java.util.List;
/**
* <p>
* </p>
*
* @author xwolf
* @date 2017-02-25 09:16
* @since V1.0.0
* @since 1.8
* @version 1.0.0
*/
public interface IUserService {
@@ -11,9 +11,7 @@ import org.springframework.stereotype.Service;
import java.util.List;
/**
* <p>
* </p>
*
* 用户Service
* @author xwolf
* @date 2017-02-25 09:17
* @since V1.0.0
@@ -21,9 +19,15 @@ import java.util.List;
@Slf4j
@Service
public class UserServiceImpl implements IUserService {
@Autowired
private IUserDao userDao;
/**
* 新增用户
* @param user 用户信息
* @return
*/
@Override
public String insert(User user) {
int resultInt=userDao.insert(user);
@@ -38,6 +42,10 @@ public class UserServiceImpl implements IUserService {
return result.toJSONString();
}
/**
* 获取用户列表
* @return
*/
@Override
public List<User> getList() {
return userDao.queryList();