【idea】Springboot整合jpa
第一步快速搭建springboot项目:在你建立的工程下创建 Module 选择Spring initializr创建。

第二步:修改包名、项目名、web项目打成war包、在Type处选择: Maven Project(项目的构建工具)

第三步:选择你项目需要的基本依赖

第四步:结束

springboot项目的结构:

注意点:
1、.mvn文件、mvnw、mvnw.cmd可以删掉
2、程序启动类必须在所有接口类的上一层,才能被扫描到

配置数据库连接文件:(两种文件形式的:properties、yml)默认扫描:application开头的文件

具体类容:yml文件形式
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/xxx?useSSL=true&verifyServerCertificate=false&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&serverTimezone=GMT%2B8
username: xxx
password: xxx
创建实体类:
@Entity --需要导入jpa依赖包
@Table(name="employee") ---指向数据库的表名
public class Employee {
@Id --表中的主键、自增长形式
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer empNo;
private String empName;
private String empSex;
private Integer empAge;
private Double sal;
private Date history;
public Employee() {
} public Employee(Integer empNo, String empName, String empSex, Integer empAge, Double sal, Date history) {
this.empNo = empNo;
this.empName = empName;
this.empSex = empSex;
this.empAge = empAge;
this.sal = sal;
this.history = history;
} public Integer getEmpNo() {
return empNo;
} public void setEmpNo(Integer empNo) {
this.empNo = empNo;
} public String getEmpName() {
return empName;
} public void setEmpName(String empName) {
this.empName = empName;
} public String getEmpSex() {
return empSex;
} public void setEmpSex(String empSex) {
this.empSex = empSex;
} public Integer getEmpAge() {
return empAge;
} public void setEmpAge(Integer empAge) {
this.empAge = empAge;
} public Double getSal() {
return sal;
} public void setSal(Double sal) {
this.sal = sal;
} public Date getHistory() {
return history;
} public void setHistory(Date history) {
this.history = history;
} @Override
public String toString() {
return "Employee{" +
"empNo=" + empNo +
", empName='" + empName + '\'' +
", empSex='" + empSex + '\'' +
", empAge=" + empAge +
", sal=" + sal +
", history=" + history +
'}';
}
}
数据层:直接继承JpaRepositoryAPI类
public interface EmployeeDaoImpl extends JpaRepository<Employee,Integer> {
}
注意此处省略service层、是为了测试小demo
控制层:
@RestController ---rest分格
@RequestMapping("/jpa") ----请求模块分层
public class JpaController {
@Autowired ----注入
private EmployeeDaoImpl employeeDaoImpl;
@RequestMapping(value = "/select",method = RequestMethod.GET)
public List<Employee> selectUser(){//查
return employeeDaoImpl.findAll();
}
@RequestMapping(value = "/add",method = RequestMethod.POST)
public String addUser(Employee emp){//增
Employee employee=new Employee();
employee.setEmpName(emp.getEmpName());
employee.setEmpAge(emp.getEmpAge());
employee.setEmpSex(emp.getEmpSex());
employee.setHistory(new Date());
employee.setSal(emp.getSal());
Employee employee1=employeeDaoImpl.save(employee);
return employee1.toString();
}
@RequestMapping(value = "/delete",method = RequestMethod.DELETE)
public void deleteUser(@RequestParam(value = "id")Integer id){//删
employeeDaoImpl.deleteById(id);
}
@RequestMapping(value="/{id}" ,method=RequestMethod.GET)
public Optional<Employee> getAccountById(@PathVariable("id") int id){
return employeeDaoImpl.findById(id);
}
@RequestMapping(value = "/update",method = RequestMethod.PUT)
public Employee updateUser(Employee emp){//修
return employeeDaoImpl.save(emp);
} }
postman测试:CRUD
---不足之处,请多指教
【idea】Springboot整合jpa的更多相关文章
- SpringBoot数据访问(二) SpringBoot整合JPA
JPA简介 Spring Data JPA是Spring Data大家族的一部分,它可以轻松实现基于JPA的存储库.该模块用于增强支持基于JPA的数据访问层,它使我们可以更加容易地构建使用数据访问技术 ...
- springboot整合JPA(简单整理,待续---)
整合步骤 引入依赖: <dependencies> <dependency> <groupId>org.springframework.boot</group ...
- SpringBoot非官方教程 | 第四篇:SpringBoot 整合JPA
转载请标明出处: 原文首发于:https://www.fangzhipeng.com/springboot/2017/07/11/springboot4-jpaJ/ 本文出自方志朋的博客 JPA全称J ...
- SpringBoot 整合 Jpa
项目目录结构 pom文件 <?xml version="1.0" encoding="UTF-8"?> <project xmlns=&quo ...
- springboot整合JPA创建数据库表失败
org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL "create table t_s ...
- springboot整合jpa和mybatis实现主从复制
百度多方参考终于配出我自己的了,以下仅供参考 参考https://www.cnblogs.com/cjsblog/p/9712457.html 代码 首先数据源配置 spring.datasource ...
- SpringBoot整合JPA遇到的问题
在学习SpringBoot中使用Repository时出现这种错误 或者使用findOne也会报错,只需要改为 应该是SpringBoot版本的原因,fingOne()方法好像已经不用了.
- springBoot整合jpa
https://blog.csdn.net/qq_35180973/article/details/82316438 总体来讲只是在service调用dao的时候用接口代替dao继承CrudRepos ...
- SpringBoot整合系列-整合JPA
原创作品,可以转载,但是请标注出处地址:https://www.cnblogs.com/V1haoge/p/9959865.html SpringBoot整合JPA进行数据库开发 步骤 第一步:添加必 ...
随机推荐
- dedecms搜索模板,使用{dede:list}标签调用自定义字段不显示(空白)
前几天使用织梦做一个搜索功能,正常使用{dede:list}调用自定义内容模型中的自定义字段,代码如下:(自定义字段的调用可以参考:http://www.dede58.com/a/dedejq/523 ...
- Unity GC 优化要点
参考:http://blog.csdn.net/znybn1/article/details/76464896 为啥要点?因为讲的重点. 游戏运行时来存储数据,当这些数据不再被使用时,存储这些数据的内 ...
- 分享一个很通用c语言的Makefile
编写Makefile是一个苦乐交织的事情,快乐是因为从一堆需要手工逐个处理的编译过程,进步到一条命令完成,看着代码顺畅的在屏幕上滚动,编译为最终的产品,那个过程无比愉悦:而痛苦则是,写代码已经很累了, ...
- Lucene 03 - 什么是分词器 + 使用IK中文分词器
目录 1 分词器概述 1.1 分词器简介 1.2 分词器的使用 1.3 中文分词器 1.3.1 中文分词器简介 1.3.2 Lucene提供的中文分词器 1.3.3 第三方中文分词器 2 IK分词器的 ...
- PE知识复习之PE的重定位表
PE知识复习之PE的重定位表 一丶何为重定位 重定位的意思就是修正偏移的意思. 如一个地址位 0x401234 ,Imagebase = 0x400000 . 那么RVA就是 1234. 如果Im ...
- RDIFramework.NET ━ .NET快速信息化系统开发框架 V3.2->用户管理模块新增“重置用户密码”功能
不管是什么系统登录用户都有忘记密码的时候,忘记密码就进入不了系统.系统应该可以提供重置用户密码的功能.在我们框架中重置用户密码功能一般用用户管理员来完成.当然如果做得复杂点还可以由用户自己来重置(如: ...
- ES6躬行记(20)——类
ES6正式将类(Class)的概念在语法层面标准化,今后不必再用构造函数模拟类的行为.而ES6引入的类本质上只是个语法糖(即代码更为简洁.语义更为清晰),其大部分功能(例如继承.封装和复用等)均可在E ...
- ES6 系列之 Babel 是如何编译 Class 的(下)
前言 ES5 寄生组合式继承 function Parent (name) { this.name = name; } Parent.prototype.getName = function () { ...
- vim编辑器详解(week1_day3)--技术流ken
vi编辑器 作用:编辑文本文件中的内容的工具 命令历史 末行模式中,以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令. 启动vim 在命令行窗口中输入以下命令即可 v ...
- 分享PowerDesigner使用的设置
用PowerDesigner比较直观, 方便管理,修改数据库,分享 Oracle的逆向工程,和模型图的显示设置 https://blog.csdn.net/u011781521/article/det ...
