zoukankan      html  css  js  c++  java
  • springboot整合JPA

    JPA可以自动生成数据表

    1.先写实体类与数据表进行映射:

    package com.atguigu.entity;
    
    import javax.persistence.*;
    
    //使用JPA注解配置映射关系
    @Entity//告诉JPA这是一个实体类(和数据表映射的类)
    @Table(name = "tbl_user")//@Table注解来指定和哪个数据表映射,如果省略默认表名为类名小写,即user
    public class User {
        @Id//这是一个主键
        @GeneratedValue(strategy = GenerationType.IDENTITY)//自增主键
        private Integer id;
        @Column(name = "last_name",length = 50)//对应数据表的一个列,自己指定列名和长度
        private String lastName;
        @Column//如果省略,默认列名就为属性名
        private String email;
    
        //setter,getter,构造,toString略...
    }
    

    2.在Springboot配置文件中配置JPA,下面用的yml文件

    spring:
      datasource:
        url: jdbc:mysql://192.168.144.143:3306/jpa
        username: root
        password: 123456
        driver-class-name: com.mysql.jdbc.Driver
      jpa:
        hibernate:
    #      更新或者创建表结构
          ddl-auto: update
    #      控制台显示sql
        show-sql: true
    

    3.写dao接口要继承JpaRepository<K,V>接口,K表示要操作的实体类,V表示实体类对应的数据表主键的数据类型

    package com.atguigu.repository;
    
    import com.atguigu.entity.User;
    import org.springframework.data.jpa.repository.JpaRepository;
    
    //继承JpaRepository<K,V>完成对数据库的操作,K表示要操作的实体类,V表示主键类型
    public interface UserRepository extends JpaRepository<User,Integer> {//JpaRepository接口中有基本的增删改查方法和分页排序方法

    }

    4.编写controller层进行测试

    //虽然dao接口中没有写任何的方法,这里依然可以调用
    @RestController public class UserController { @Autowired UserRepository userRepository; @GetMapping("/user/{id}") public User getUserById(@PathVariable("id") Integer id){ User user = userRepository.findById(id).get(); return user; } @GetMapping("/user") public User insertUser(User user){ User save = userRepository.save(user); return save; } }

    5.启动项目之后会发现,JPA会给我们自动创建好了数据表

  • 相关阅读:
    Jenkins的安全控制
    浅谈JNDI的使用
    hdu 4544 湫湫系列故事——消灭兔子
    如何在工作和实践中学习射频知识
    JSONObject 解析
    SharePoint 2010 WebPart Web部分 总的膏
    J2EE学习笔记
    C和指针 (pointers on C)——第十二章:利用结构和指针
    UVA
    EasyUI-DataGrid多线动态实现选择性合并
  • 原文地址:https://www.cnblogs.com/wxl123/p/12533362.html
Copyright © 2011-2022 走看看