温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

spring boot 如何访问 mysql的主要方法

发布时间:2020-04-22 15:25:18 来源:亿速云 阅读:414 作者:三月 栏目:编程语言

本文主要给大家介绍spring boot 如何访问 mysql的主要方法,其所涉及的东西,从理论知识来获悉,有很多书籍、文献可供大家参考,从现实意义角度出发,亿速云累计多年的实践经验可分享给大家。

spring boot 访问 mysql
方式二:spring data jpa

为什么使用 jpa :
第一次使用 Spring JPA 的时候,感觉这东西简直就是神器,几乎不需要写什么关于数据库访问的代码一个基本的 CURD 的功能就出来了。

如何使用:
在 pom 文件中引入依赖

<!--jpa -->
<dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>

<dependency>
        <groupId>org.springframework.data</groupId>
        <artifactId>spring-data-commons</artifactId>
        <version>2.1.6.RELEASE</version>
</dependency>

<!-- mysql驱动 -->
<dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
</dependency>

配置数据库:

spring.datasource.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

# JPA 相关配置
spring.jpa.database-platform=org.hibernate.dialect.MySQL5InnoDBDialect
spring.jpa.show-sql=true
spring.jpa.hibernate.ddl-auto=update

spring boot 如何访问 mysql的主要方法

JPA 相关配置

#在 SrpingBoot 2.0 版本中,Hibernate 创建数据表的时候,默认的数据库存储引擎选择的是 MyISAM (之前是 InnoDB)。这个参数是在建表的时候,将默认的存储引擎切换为 InnoDB 用的。

spring.jpa.database-platform=org.hibernate.dialect.MySQL5InnoDBDialect

配置在日志中打印出执行的 SQL 语句信息。

spring.jpa.show-sql=true

每次运行程序,没有表格会新建表格,表内有数据不会清空,只会更新

spring.jpa.hibernate.ddl-auto=update

创建 Entity Dao Service Controller  三层文件:

 entity:
@Entity
@Table(name = "user")
public class JpaUser {

@Id
@GeneratedValue
private Long id;

private String name;

private int age;

private String sex;

public Long getId() {
    return id;
}

public void setId(Long id) {
    this.id = id;
}

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

public int getAge() {
    return age;
}

public void setAge(int age) {
    this.age = age;
}

public String getSex() {
    return sex;
}

public void setSex(String sex) {
    this.sex = sex;
}

}

Dao
写一个接口 继承 JpaRepository 简单的 CRUD 可以直接使用了

@Repository
public interface JpaUserDao extends JpaRepository<JpaUser,Long> {

}

Service

@Service
public class JpaUserService {

@Autowired
JpaUserDao userDao;

public JpaUser add(JpaUser user){
  return   userDao.save(user);
}

public JpaUser update(JpaUser user){
    return   userDao.save(user);
}

public JpaUser getById(long id){
    return   userDao.findById(id).get();
}

}

Controller

@RestController
@RequestMapping("/jpaUser")
public class JpaUserController {

@Autowired
JpaUserService userService;

@RequestMapping(value = "/add",method = RequestMethod.POST)
public Object addUser(@RequestBody JpaUser user){

    return userService.add(user);
}

@RequestMapping(value = "/update",method = RequestMethod.PUT)
public Object updateUser(@RequestBody JpaUser user){

    return userService.update(user);
}

@RequestMapping(value = "/find",method = RequestMethod.GET)
public Object updateUser(long id){
    return userService.getById(id);
}

}

完成 启动 访问测试

jpa 配置说明:

spring.jpa.hibernate.ddl-auto=create ----每次运行该程序,没有表格会新建表格,有表会删除表重新创建表

spring.jpa.hibernate.ddl-auto=create-drop ----每次程序结束的时候会清空表

spring.jpa.hibernate.ddl-auto=update ----每次运行程序,没有表格会新建表格,表内有数据不会清空,只会更新表结构

spring.jpa.hibernate.ddl-auto=validate ----运行程序会校验数据与数据库的字段类型是否相同,不同会报错

看了以上spring boot 如何访问 mysql的主要方法介绍,希望能给大家在实际运用中带来一定的帮助。本文由于篇幅有限,难免会有不足和需要补充的地方,大家可以继续关注亿速云行业资讯板块,会定期给大家更新行业新闻和知识,如有需要更加专业的解答,可在官网联系我们的24小时售前售后,随时帮您解答问题的。

 

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI