文档章节

Vue+Spring Data JPA+MySQL 增查改删

潘文海
 潘文海
发布于 07/03 20:02
字数 392
阅读 83
收藏 0

行业解决方案、产品招募中!想赚钱就来传!>>>

视频讲解:

https://www.bilibili.com/video/BV16i4y1G7i2/

工程概述:

  1. 前后端分离,进行简单增查改删(CRUD)

  2. 前端使用VUE

  3. 后端使用Spring Data JPA

  4. 数据库使用MySQL

#EmployeeController.java

package com.deepincoding.springdatajpamysqlcrud.controller;

import com.deepincoding.springdatajpamysqlcrud.entity.Employee;
import com.deepincoding.springdatajpamysqlcrud.model.BaseResponse;
import com.deepincoding.springdatajpamysqlcrud.service.EmployeeService;
import lombok.extern.log4j.Log4j2; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Page; import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Sort; import org.springframework.data.web.PageableDefault; import org.springframework.web.bind.annotation.*;  import java.util.Optional;  @RestController @RequestMapping("/api/employee") @Log4j2 public class EmployeeController extends BaseController {   @Autowired  private EmployeeService employeeService;   @PostMapping  public BaseResponse<String> save(@RequestBody Employee employee){  employeeService.save(employee);  return new BaseResponse<>(SUCCESS,"保存成功");  }   @GetMapping("/{id}")  public BaseResponse<Optional<Employee>> findById(@PathVariable Long id){  Optional<Employee> employee = employeeService.findById(id);  return new BaseResponse<>(SUCCESS,"获取成功",employee);  }   @GetMapping  public BaseResponse<Page<Employee>> findAll(@PageableDefault(sort = {"id"},direction = Sort.Direction.DESC ,size = 3) Pageable pageable){  log.info("pageable:{}",pageable.getPageNumber());  Page<Employee> employees = employeeService.findAll(pageable);  return new BaseResponse<>(SUCCESS,"获取成功",employees);  }   @PutMapping  public BaseResponse<String> update(@RequestBody Employee employee){  employeeService.save(employee);  return new BaseResponse<>(SUCCESS,"修改成功");  }   @DeleteMapping("/{id}")  public BaseResponse<String> delete(@PathVariable Long id){  employeeService.delete(id);  return new BaseResponse<>(SUCCESS,"删除成功");  }  }   

#CorsConfig.java

package com.deepincoding.springdatajpamysqlcrud.config;

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
 @Configuration public class CorsConfig implements WebMvcConfigurer {  /**  * 跨域配置  * @param registry  */  @Override  public void addCorsMappings(CorsRegistry registry) {  registry.addMapping("/**")  .allowedOrigins("*")  .allowedMethods("*");  } }  

#Employee.java

package com.deepincoding.springdatajpamysqlcrud.entity;

import com.deepincoding.springdatajpamysqlcrud.enums.Gender;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;   import javax.persistence.*;  @Entity @Data @NoArgsConstructor @AllArgsConstructor public class Employee {  @Id  @GeneratedValue(strategy= GenerationType.AUTO)  private long id;  private String name;  @Enumerated(EnumType.STRING)  private Gender gender;  private Integer age;  private String introduce;  }  

#EmployeeServiceImpl.java

package com.deepincoding.springdatajpamysqlcrud.service;

import com.deepincoding.springdatajpamysqlcrud.entity.Employee;
import com.deepincoding.springdatajpamysqlcrud.repositories.EmployeeRep;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page; import org.springframework.stereotype.Service; import org.springframework.data.domain.Pageable;  import java.util.Optional;   @Service public class EmployeeServiceImpl implements EmployeeService{   @Autowired  private EmployeeRep employeeRep;   @Override  public void save(Employee employee) {  employeeRep.save(employee);  }   @Override  public Optional<Employee> findById(Long id) {  return employeeRep.findById(id);  }   @Override  public void update(Employee employee) {  employeeRep.save(employee);  }   @Override  public void delete(Long id) { employeeRep.deleteById(id); }   @Override  public Page<Employee> findAll(Pageable pageable) {  return employeeRep.findAll(pageable);  } }  

 

潘文海
粉丝 1
博文 69
码字总数 18536
作品 0
深圳
私信 提问
加载中
请先登录后再评论。
开源数据访问组件--Smark.Data

Smark.Data是基于Ado.net实现的数据访问组件,提供基于强类型的查询表达式进行灵活的数据查询,统计,修改和删除等操作;采用基于条件驱动的操作模式,使数据操作更简单轻松;内部通过标准SQL...

泥水佬
2013/03/12
2.5K
0
PHP框架--XiunoPHP

XiunoPHP 是一款面向高负载应用的 PHP 开发框架,PHPer 通过它可以快速的简单的开发出高负载项目。 XiunoPHP 前身名为 Xiuno Framework,更名后版本号从 v1.0 开始计算。已经经过了多年的实际...

匿名
2013/03/20
2.5K
0
CSS 选择器--Q.js

1, 和Sizzle的兼容 Q(expr, context, result, seed) Q.matches 支持Sizzle特别的setFilter伪类如:even,:first,:last,:lt... 支持复杂的:not和:has选择器(和sizzle一样) 2, 结果的正确性 Si...

hackwaly
2012/10/23
4.6K
0
LocalCache for iOS 6.0

实现网页本地缓存功能,支持iOS 6.0以上。 作者说:在code4app上下载了旧版,无法在ios6.0以上使用。所以改了一个版本,支持6.0以上系统webview本地缓存。 [Code4App.com]...

匿名
2013/04/25
691
0
LKDBHelper Sqlite ORM

这是一个sqlite ORM(automatic database operation),能够根据 Model的属性自动生成表和进行增删改查操作。对于每个实体类 几乎是 零操作。 开发者不用再一行行写插入、修改、删除的SQL代码...

匿名
2013/05/21
1.6K
0

没有更多内容

加载失败,请刷新页面

加载更多

SPSSAU 付费数据研究报告服务

SPSSAU-付费数据分析报告服务(周老师提供) 本文分享自微信公众号 - SPSSAU(spssau)。 如有侵权,请联系 support@oschina.cn 删除。 本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起...

SPSSAU
2017/11/08
0
0
芋艿-springcloud gateway

http://www.iocoder.cn/Spring-Cloud/Spring-Cloud-Gateway/?github springcloud gateway 官方文档 https://cloud.spring.io/spring-cloud-gateway/reference/html/#gatewayfilter-factories......

Java搬砖工程师
18分钟前
5
0
新零售小程序制作流程

最近有很多小伙伴们都在观望新零售小程序,其实新零售小程序制作还是比较简单的,只要你能熟知以下的新零售小程序制作流程,你也可以制作出属于自己的小程序。下面木鱼小铺(www.muyu007.cn)...

木鱼小铺小程序1
19分钟前
0
0
bat增加自定义参数

#xxx.bat --tag=dev1010 --context=3 --cpu=3 --memory=3 --build=1 --update=1 --api-version=1 @echo off setlocal enabledelayedexpansion set COMMANSLINE="%" :STR_VISTOR for /f "toke......

_snake_
21分钟前
3
0
谷歌SEO推广团队,这样管理更高效!

如今不论是外贸企业还是专业的海外推广公司都会组建自己的Google SEO推广团队,可以更有效的做好网站SEO,但是要发挥谷歌SEO推广团队的最大效能,我们并不能随意的让团队成员听之任之,随波逐...

一尘SEO
22分钟前
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部