spring boot怎么初始化连接数据库

spring boot怎么初始化连接数据库,第1张

新建Spring Boot项目,依赖选择JPA(spring-boot-starter-data-jpa)和Web(spring-bootstarter-web)。

配置基本属性 在application.properties里配置数据源和jpa的相关属性

spring.datasource.driverClassName=com.mysql.jdbc.Driver

spring.datasource.url=jdbc:mysql://localhost:3306/springboot

spring.datasource.username=root

spring.datasource.password=123456

spring.jpa.hibernate.ddl-auto=update

spring.jpa.show-sql=true

spring.jackson.serialization.indent_output=true

定义映射实体类

定义Controller类

@RestControllerpublic class PersonCtroller {

@AutowiredPersonServer personServer

@RequestMapping("/rollback")

public Person rollback(Person person){

return personServer.savePersonWithRollBack(person)

}

@RequestMapping("/norollback")

public Person noRollback(Person person){

return personServer.savePersonWithOutRollBack(person)

}

}

定义数据访问层

public interface PersonRepository extends JpaRepository<Person, Long>{}

定义Server层

@Servicepublic class PersonServerImp implements PersonServer {

@Autowired

PersonRepository personRepository

@Transactional(rollbackFor = {IllegalArgumentException.class})

@Override

public Person savePersonWithRollBack(Person person) {

Person p = personRepository.save(person)

if (p.getName().equals("xxx")){

throw new IllegalArgumentException("用户已存在,数据会回滚")

}

return p

}

}

有两种方法

在你写的类里面实现InitializingBean接口,在afterPropertiesSet方法里面写初始化方法

实现ApplicationListener接口,在spring初始化bean完了后初始化数据

Django教程——01安装使用

在上面一篇文章里,介绍了安装Django的方法,这里说说连接数据库吧

这篇主要介绍踩的坑和解决办法

正常连接和初始化数据库的命令是

执行这个命令的时候,出现了如下报错

经过一段排查,是我配置数据库的时候,多嵌套了一层default,修改为如下即可

然后继续执行migrate时,会报如下错误

本机环境是mac电脑,按官方教程 *** 作的时候,发现安装mysqlclient的python包会依赖本机安装mysql或者mysql-client,但在装mysql和mysql-client的时候,发现一直报错。后面发现解决办法是,在settings.py文件里,加下如下代码,即改用pymsql连接即可。

或者在settings.py同目录的__init__.py里加如上代码也可以

然后再执行python manage.py migrate命令会发现表顺利创建。新增表,不影响原有库的其他表。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10826918.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存