博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SpringBoot 数据库操作、事务
阅读量:2492 次
发布时间:2019-05-11

本文共 3206 字,大约阅读时间需要 10 分钟。

Spring-Data_Jpa

1、在pom.xml中加入:

org.springframework.boot
spring-boot-starter-data-jpa
mysql
mysql-connector-java
引入spring-data-jpa和mysql驱动

2、修改配置文件

spring:  profiles:    active: dev  datasource:    driver-class-name: com.mysql.jdbc.Driver    url: jdbc:mysql://127.0.0.1:3306/chenjie    username: root    password: root  jpa:    hibernate:      ddl-auto: update    show-sql: true

3、新建实体类

package cn.edu.shu.ces_chenjie;import javax.persistence.Entity;import javax.persistence.GeneratedValue;import javax.persistence.Id;@Entitypublic class Person {    @Id    @GeneratedValue    private Integer id;    private Integer age;    private String name;    public Person() {    }    public Integer getId() {        return id;    }    public void setId(Integer id) {        this.id = id;    }    public Integer getAge() {        return age;    }    public void setAge(Integer age) {        this.age = age;    }    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    @Override    public String toString() {        return "Person{" +                "id=" + id +                ", age=" + age +                ", name='" + name + '\'' +                '}';    }}

4、新建类

PersonRepository
package cn.edu.shu.ces_chenjie;import org.springframework.data.jpa.repository.JpaRepository;import java.util.List;public interface PersonRepository extends JpaRepository
{ public List
findByName(String name); }

5、新建类(

@Transactional
使用到了事务)

package cn.edu.shu.ces_chenjie;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Component;import javax.transaction.Transactional;@Componentpublic class PersonService {    @Autowired    private PersonRepository repository;    @Transactional    public void insertTwo(){        Person personA = new Person();        personA.setName("renbo");        personA.setAge(18);        repository.save(personA);        Person personB = new Person();        personB.setName("bobo");        personB.setAge(20);        repository.save(personB);    }}
6、新建类

package cn.edu.shu.ces_chenjie;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.*;import java.util.List;@RestControllerpublic class PersonController {    @Autowired    private PersonRepository repository;    @Autowired    private PersonService personService;    @GetMapping("/persons")    public List
personList(){ return repository.findAll(); } @PostMapping() public String personAdd(@RequestParam("age") Integer age,@RequestParam("name") String name){ Person person = new Person(); person.setAge(age); person.setName(name); return repository.save(person).toString(); } @GetMapping("persons/{name}") public List
personListByName(@PathVariable("name")String name){ return repository.findByName(name); } @PostMapping("persons/two") public void personTwo(){ personService.insertTwo(); }}
7、使用IDEA 自带的 Tools->Test RESTful web service工具或者chrome postman插件测试

转载地址:http://hzqrb.baihongyu.com/

你可能感兴趣的文章
记一次断电恢复ORA-01033错误
查看>>
C#修改JPG图片EXIF信息中的GPS信息
查看>>
从零开始的Docker ELK+Filebeat 6.4.0日志管理
查看>>
How it works(1) winston3源码阅读(A)
查看>>
How it works(2) autocannon源码阅读(A)
查看>>
How it works(3) Tilestrata源码阅读(A)
查看>>
How it works(12) Tileserver-GL源码阅读(A) 服务的初始化
查看>>
uni-app 全局变量的几种实现方式
查看>>
echarts 为例讲解 uni-app 如何引用 npm 第三方库
查看>>
uni-app跨页面、跨组件通讯
查看>>
springmvc-helloworld(idea)
查看>>
JDK下载(百度网盘)
查看>>
idea用得溜,代码才能码得快
查看>>
一篇掌握python魔法方法详解
查看>>
数据结构和算法5-非线性-树
查看>>
数据结构和算法6-非线性-图
查看>>
数据结构和算法7-搜索
查看>>
数据结构和算法8-排序
查看>>
windows缺少dll解决办法
查看>>
JPA多条件动态查询
查看>>