springboot 问题

一、@SpringBootApplication  扫包的范围?

   所在类的同级包,以及下级包里的所有BEAN。  

    

二、spring boot jpa 整合

  (1)主键策略是 UUID

    

   (2)驼峰命名的属性名对应数据库下画线转换 

     bankuserId  ---->  bankuser_id 

#无修改策略
#spring.jpa.hibernate.naming.physical-strategy = 
org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl #驼峰命名的修改下划线的策略配置 #spring.jpa.hibernate.naming.physical
-strategy =
org.springframework.boot.orm.jpa.hibernate.SpringPhysicalNamingStrategy

   (3)linux 表名的大小是区分的,现在需要将表名转换为是大写的   

    解决方法一:

    可以在 springboot 项目中配置文件内加上配置行,设置命名为 无修改命名策略:

    解决方法二:

     1)重写命名策略中改表名为小写的方法:

      

import org.hibernate.boot.model.naming.Identifier;
import org.hibernate.engine.jdbc.env.spi.JdbcEnvironment;
import org.springframework.boot.orm.jpa.hibernate.SpringPhysicalNamingStrategy;

public class SpringPhysicalNamingTableUpStrategy extends SpringPhysicalNamingStrategy {
    @Override
    public Identifier toPhysicalTableName(Identifier name, JdbcEnvironment context) {
        String tableName = name.getText().toUpperCase();
        return name.toIdentifier(tableName);
    }
}

  2)在对应配置文件中 使用自己实现的策略

  spring.jpa.hibernate.naming.physical-strategy=com.xxx.xxx.SpringPhysicalNamingTableUpStrategy 
 

猜你喜欢

转载自www.cnblogs.com/SacredOdysseyHD/p/9278766.html