【SpringBoot】IDEA 创建 JAVA_JPA项目

目录

一.建立Spring boot 项目

1.【File】→【New】→【Project】

2.选择 【Spring Initialize】

3.依据自身情况选择相关配置信息

4.选择需要的依赖

5.建项目,设置存放地址

6.创建完成

二.建立数据库连接(非必须)

1.建立数据库连接

2.输入数据库相关信息

3.连接完成

三.修改配置文件

1.重命名

2.配置信息

四.Entity类

五.Repository类

六.Controller类


一.建立Spring boot 项目

1.【File】→【New】→【Project】

【SpringBoot】IDEA 创建 JAVA_JPA项目_第1张图片

2.选择 【Spring Initialize】

【SpringBoot】IDEA 创建 JAVA_JPA项目_第2张图片

3.依据自身情况选择相关配置信息

【SpringBoot】IDEA 创建 JAVA_JPA项目_第3张图片

Group: 一般是公司域名 

4.选择需要的依赖

【SpringBoot】IDEA 创建 JAVA_JPA项目_第4张图片

Lombok

Spring Web

Spring Data JPA

MS SQL Server Driver

5.建项目,设置存放地址

【SpringBoot】IDEA 创建 JAVA_JPA项目_第5张图片

Package:不能有下划线 

6.创建完成

【SpringBoot】IDEA 创建 JAVA_JPA项目_第6张图片

 

二.建立数据库连接(非必须)

1.建立数据库连接

【SpringBoot】IDEA 创建 JAVA_JPA项目_第7张图片

2.输入数据库相关信息

【SpringBoot】IDEA 创建 JAVA_JPA项目_第8张图片

3.连接完成

【SpringBoot】IDEA 创建 JAVA_JPA项目_第9张图片

三.修改配置文件

1.重命名

【SpringBoot】IDEA 创建 JAVA_JPA项目_第10张图片

2.配置信息

【SpringBoot】IDEA 创建 JAVA_JPA项目_第11张图片

server:
  port: 7676
spring:
  datasource:
    driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
    url: jdbc:sqlserver://192.168.200.126;database=DEMO
    username: sa
    password: rd.123456
  jpa:
    database: sql_server
    show-sql: true
    hibernate:
      ddl-auto: update
      naming:
        physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl

server:

  port: 8080

spring:

  # 配置数据源信息

  datasource:

    driverClassName: com.mysql.cj.jdbc.Driver

    url: jdbc:mysql://localhost:3306/springboot?serverTimezone=Asia/Shanghai&characterEncoding=utf-8

    username: root

    password: root

  jpa:

    show-sql: true # 默认false,在日志里显示执行的sql语句

    database: mysql

hibernate.ddl-auto: update

#指定为update,每次启动项目检测表结构有变化的时候会新增字段,表不存在时会新建,如果指定create,则每次启动项目都会清空数据并删除表,再新建

properties.hibernate.dialect: org.hibernate.dialect.MySQL5Dialect

# 使用JPA创建表时,默认使用的存储引擎是MyISAM,通过指定数据库版本,可以使用InnoDB

    database-platform: org.hibernate.dialect.MySQL5Dialect

    hibernate:

      naming:

#指定jpa的自动表生成策略,驼峰自动映射为下划线格式

        implicit-strategy: org.hibernate.boot.model.naming.ImplicitNamingStrategyLegacyJpaImpl             

        #physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl

四.Entity类

@Data

Lombok 的 注释,省略 set()/get()

@Entity

JPA ,声明JPA 关联

@Table(name=”TABLENAME”)

JPA ,表名

@Column(name = "NAME",length = 30)

JPA ,列名

@GeneratedValue(strategy = GenerationType.IDENTITY)

自增  

@Id

主键

package com.example.demo.entity;

import lombok.Data; 

import javax.persistence.*;


/**
 * @author h
 */
@Data
@Entity
@Table(name = "BOOK")
public class Book {

    /**
     * 自增  @GeneratedValue(strategy = GenerationType.IDENTITY)
     * 主键  @Id
     */
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Id
    @Column(name = "ID",length = 20)
    private Long id;
    @Column(name = "NAME",length = 30)
    private String name;
    @Column(name = "PRICE",length = 10)
    private Float price;
}

五.Repository类

创建接口interface,继承extends接口JpaRepository

package com.example.demo.repository;

import com.example.demo.entity.Book;
import org.springframework.data.jpa.repository.JpaRepository;


/**
 * @author h
 * 创建接口
 * 继承接口 :JpaRepository
 */
public interface BookRepository extends JpaRepository{
}

六.Controller类

@Resource 注入 Repository

后调用

package com.example.demo.controller;


import com.example.demo.entity.Book;
import com.example.demo.repository.BookRepository;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import java.util.List;

/**
 * @author h
 */
@RestController
@RequestMapping("/api")
@Slf4j
public class BookController {

    @Resource
    private BookRepository bookRepository;

    @GetMapping("/demo/getBook/{name}")
    public List getBook(@PathVariable String name) {
        log.info("getBook: " + name);
        return bookRepository.findAll();
    }

    @PostMapping("/demo/addBook/")
    public Book getBook(Book entity) {
        log.info("getBook: " + entity);
        return bookRepository.save(entity);
    }
}

完成 一个 SpringBoot + jpa + mysql 或 sqlServer 的后台

感谢贵宏哥的指导

你可能感兴趣的:(Java,SpringBoot,入门,spring,boot,maven,java)