返回顶部
首页 > 资讯 > 数据库 >SpringBoot用JdbcTemplates访问Mysql的过程
  • 427
分享到

SpringBoot用JdbcTemplates访问Mysql的过程

2023-06-19 11:06:24 427人浏览 安东尼
摘要

本篇内容介绍了“SpringBoot用JdbcTemplates访问Mysql的过程”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!准备工作j

本篇内容介绍了“SpringBoot用JdbcTemplates访问Mysql的过程”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

准备工作

初始化mysql:

-- create table `account`DROP TABLE `account` IF EXISTSCREATE TABLE `account` (  `id` int(11) NOT NULL AUTO_INCREMENT,  `name` varchar(20) NOT NULL,  `money` double DEFAULT NULL,  PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;INSERT INTO `account` VALUES ('1', 'aaa', '1000');INSERT INTO `account` VALUES ('2', 'bbb', '1000');INSERT INTO `account` VALUES ('3', 'ccc', '1000');

创建工程

引入依赖:

在pom文件引入spring-boot-starter-jdbc的依赖:

<dependency>            <groupId>org.springframework.boot</groupId>            <artifactId>spring-boot-starter-jdbc</artifactId>        </dependency>

引入mysql连接类和连接池:

<dependency>            <groupId>mysql</groupId>            <artifactId>mysql-connector-java</artifactId>            <scope>runtime</scope>        </dependency>        <dependency>            <groupId>com.alibaba</groupId>            <artifactId>druid</artifactId>            <version>1.0.29</version>        </dependency>

开启WEB:

<dependency>            <groupId>org.springframework.boot</groupId>            <artifactId>spring-boot-starter-web</artifactId>        </dependency>

配置相关文件

在application.properties文件配置mysql的驱动类,数据库地址,数据库账号、密码信息。

spring.datasource.driver-class-name=com.mysql.jdbc.Driverspring.datasource.url=jdbc:mysql://localhost:3306/testspring.datasource.username=rootspring.datasource.passWord=123456

通过引入这些依赖和配置一些基本信息,springboot就可以访问数据库类。

具体编码

实体类

public class Account {    private int id ;    private String name ;    private double money;....省略了getter. setter}

dao层

public interface IAccountDAO {    int add(Account account);    int update(Account account);    int delete(int id);    Account findAccountById(int id);    List<Account> findAccountList();}

具体的实现类:

package com.forezp.dao.impl;import com.forezp.dao.IAccountDAO;import com.forezp.entity.Account;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.jdbc.core.BeanPropertyRowMapper;import org.springframework.jdbc.core.JdbcTemplate;import org.springframework.stereotype.Repository;import java.util.List;@Repositorypublic class AccountDaoImpl implements IAccountDAO {    @Autowired    private JdbcTemplate jdbcTemplate;    @Override    public int add(Account account) {        return jdbcTemplate.update("insert into account(name, money) values(?, ?)",              account.getName(),account.getMoney());    }    @Override    public int update(Account account) {        return jdbcTemplate.update("UPDATE  account SET NAME=? ,money=? WHERE id=?",                account.getName(),account.getMoney(),account.getId());    }    @Override    public int delete(int id) {        return jdbcTemplate.update("DELETE from TABLE account where id=?",id);    }    @Override    public Account findAccountById(int id) {        List<Account> list = jdbcTemplate.query("select * from account where id = ?", new Object[]{id}, new BeanPropertyRowMapper(Account.class));        if(list!=null && list.size()>0){            Account account = list.get(0);            return account;        }else{            return null;        }    }    @Override    public List<Account> findAccountList() {        List<Account> list = jdbcTemplate.query("select * from account", new Object[]{}, new BeanPropertyRowMapper(Account.class));        if(list!=null && list.size()>0){            return list;        }else{            return null;        }    }}

service层

public interface IAccountService {    int add(Account account);    int update(Account account);    int delete(int id);    Account findAccountById(int id);    List<Account> findAccountList();}

具体实现类:

@Servicepublic class AccountService implements IAccountService {    @Autowired    IAccountDAO accountDAO;    @Override    public int add(Account account) {        return accountDAO.add(account);    }    @Override    public int update(Account account) {        return accountDAO.update(account);    }    @Override    public int delete(int id) {        return accountDAO.delete(id);    }    @Override    public Account findAccountById(int id) {        return accountDAO.findAccountById(id);    }    @Override    public List<Account> findAccountList() {        return accountDAO.findAccountList();    }}

构建一组restful api来展示

package com.forezp.web;import com.forezp.entity.Account;import com.forezp.service.IAccountService;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.*;import java.util.List;@RestController@RequestMapping("/account")public class AccountController {    @Autowired    IAccountService accountService;    @RequestMapping(value = "/list",method = RequestMethod.GET)    public  List<Account> getAccounts(){       return accountService.findAccountList();    }    @RequestMapping(value = "/{id}",method = RequestMethod.GET)    public  Account getAccountById(@PathVariable("id") int id){        return accountService.findAccountById(id);    }    @RequestMapping(value = "/{id}",method = RequestMethod.PUT)    public  String updateAccount(@PathVariable("id")int id , @RequestParam(value = "name",required = true)String name,    @RequestParam(value = "money" ,required = true)double money){        Account account=new Account();        account.setMoney(money);        account.setName(name);        account.setId(id);        int t=accountService.update(account);        if(t==1){            return account.toString();        }else {            return "fail";        }    }    @RequestMapping(value = "",method = RequestMethod.POST)    public  String postAccount( @RequestParam(value = "name")String name,                                 @RequestParam(value = "money" )double money){        Account account=new Account();        account.setMoney(money);        account.setName(name);        int t= accountService.add(account);        if(t==1){            return account.toString();        }else {            return "fail";        }    }}

可以通过postman来测试,具体的我已经全部测试通过,没有任何问题。注意restful构建api的风格。

“SpringBoot用JdbcTemplates访问Mysql的过程”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

您可能感兴趣的文档:

--结束END--

本文标题: SpringBoot用JdbcTemplates访问Mysql的过程

本文链接: https://lsjlt.com/news/296020.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • SpringBoot用JdbcTemplates访问Mysql的过程
    本篇内容介绍了“SpringBoot用JdbcTemplates访问Mysql的过程”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!准备工作j...
    99+
    2023-06-19
  • SpringBoot用JdbcTemplates访问Mysql实例代码
    本文介绍springboot通过jdbc访问关系型MySQL,通过spring的JdbcTemplate去访问。准备工作 jdk 1.8 maven 3.0 idea mysql初始化mysql:-- create table `a...
    99+
    2023-05-31
    jdbctemplates mysql springboot
  • SpringBoot访问HTML过程详解
    目录简介默认文件路径访问自定义文件路径访问通过Controller控制器层跳转访问简介 SpringBoot默认的页面映射路径(即模板文件存放的位置)为“classpat...
    99+
    2023-05-16
    Java SpringBoot SpringBoot访问HTML
  • SpringBoot用JdbcTemplates操作Mysql实例代码详解
    目录1、创建Spring Boot Web应用2、修改pom.xml文件3、设置Web应用的上下文路径以及数据源配置信息4、创建实体类5、创建数据访问层6、创建业务层7、创建控制器类...
    99+
    2022-11-13
    JdbcTemplates操作Mysql SpringBoot JdbcTemplates SpringBoot操作Mysql
  • 使用Stargate访问K8ssandra的过程之Springboot整合Cassandra
    目录1 简介2 三种方式访问2.1 cqlsh命令2.2 用IDEA连接2.3 通过Java程序访问3 总结1 简介 之前我们在文章《K8ssandra入门-详细记录在Linux上部...
    99+
    2024-04-02
  • SpringBoot使用MySQL访问数据
    目录   SpringBoot使用MySQL访问数据   SpringBoot使用MySQL访问数据       本文章向大家介绍SpringBoot使用MySQL访问数据,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,...
    99+
    2023-10-22
    spring boot mysql 后端
  • springboot整合mybatis并访问数据库的过程
    这篇文章主要讲解了“springboot整合mybatis并访问数据库的过程”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“springboot整合mybatis并访问数据库的过程”吧!引入依...
    99+
    2023-06-19
  • SpringBoot中Mybatis + Druid 数据访问的详细过程
    目录1、简介2、JDBC3、CRUD操作4、自定义数据源 DruidDataSource1、配置 Druid 数据源监控2、配置 Druid web 监控 filter5、Sprin...
    99+
    2024-04-02
  • springboot应用访问zookeeper的流程
    目录本地部署zookeeper开发基于spring boot的应用本文讲解了如果通过springboot快速开发web服务,并读取zookeeper的过程,为后续的“在d...
    99+
    2024-04-02
  • SpringBoot中Mybatis+Druid数据访问过程是怎样的
    本篇内容主要讲解“SpringBoot中Mybatis+Druid数据访问过程是怎样的”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“SpringBoot中Mybatis+Druid数据访问过程是...
    99+
    2023-06-25
  • 使用 SpringBoot 访问 MySQL 数据库
    一、目标 创建一个 MySQL 数据库,构建一个 Spring 应用程序,并将其连接到新创建的数据库。 二、准备工作 最喜欢的文本编辑器或 IDE Java 17或更高版本 Gradle 7.5+或Maven 3.5+ 三、初始化项目 导...
    99+
    2023-08-17
    数据库 mysql spring boot
  • Mysql开启外网访问的全过程记录
    Mysql开启外网访问 进入mysql数据库 user mysql; 更新域属性,‘%’表示允许外部访问 update user set host='%' w...
    99+
    2024-04-02
  • 我们如何通过MySQL存储过程访问表?
    我们可以从 MySQL 存储过程访问一个或所有表。以下是一个示例,其中我们创建了一个存储过程,它将接受表的名称作为参数,并在调用它后,将生成包含表中所有详细信息的结果集。示例mysql> Delimiter // mysql> ...
    99+
    2023-10-22
  • springboot应用访问zookeeper的流程是怎样的
    这期内容当中小编将会给大家带来有关springboot应用访问zookeeper的流程是怎样的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。下面讲解了如果通过springboot快速开发web服务,并读取...
    99+
    2023-06-26
  • Java Springboot设置MySQL的ssl连接访问
    一、需求背景 需要修改应用程序通过SSL连接mysql数据库。 环境配置 数据库:MySQL 8.0.21 (enabled SSL) Java版本:openjdk version "1.8.0_332" Springboot版本:...
    99+
    2023-09-14
    java spring boot mysql
  • 使用Holer怎么通过外网访问本地SpringBoot
    本篇文章给大家分享的是有关使用Holer怎么通过外网访问本地SpringBoot,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。1. 准备工作1.1 安装Java 1.7及以上版...
    99+
    2023-06-02
  • 存储过程访问其他用户的表的问题
    今天写了一个存储过程,需要通过dblink把其他用户下面的表的数据增量copy到目标表中,结果访问其他系统的表的时候,在存储过程中一直有问题,在Stack Overflow中找到了答案。 In...
    99+
    2024-04-02
  • SpringBoot整合ip2region实现使用ip监控用户访问城市的详细过程
    目录举个栗子快速上手第一步,将整个项目down下来,找到data目录,进入第二步,创建maven项目,引入依赖第三步,编写测试类项目实现1、思路分析2、配置文件SpringBoot项...
    99+
    2024-04-02
  • springboot整合JPA访问Mysql的实现方法
    1.代码实现: 添加依赖  <dependency>             <groupId>org.springframework.boot</gr...
    99+
    2024-04-02
  • 通过SSH通道来访问MySQL
     许多时候当要使用Mysql时,会遇到如下情况: 信息比较重要,希望通信被加密。2. 一些端口,比如3306端口,被路由器禁用。 对第一个问题的一个比较直接的解决办法就是更改mysql的代码,或者是使用一些证书,不过这种办法显然不是很简单...
    99+
    2021-05-17
    通过SSH通道来访问MySQL
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作