SpringBoot资源整合——SpringData(课时十八)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: SpringBoot资源整合——SpringData(课时十八)

SpringBoot框架学习官网:   Spring Boot

 

跟据本图SpringData


SpringData的任务是为数据访问提供一个熟悉的、一致的、基于Spring的编程模型,同时仍然保留底层数据存储的特殊特性。


它使使用数据访问技术、关系和非关系数据库、地图缩减框架以及基于云的数据服务变得容易。这是一个伞式项目,其中包含许多特定于给定数据库的子项目。这些项目是通过与这些令人兴奋的技术背后的许多公司和开发人员合作开发的。


下面是SpringData官网的内容:

SpringData特征

强大的存储库和自定义对象映射抽象

从存储库方法名称动态查询派生

提供基本属性的实现域基类

支持透明审核(创建、上次更改)

可以集成自定义存储库代码

通过JavaConfig和自定义XML名称空间轻松集成Spring

与Spring MVC控制器的高级集成

对跨存储持久性的实验支持

SpringData主要模块

Spring数据共享-支撑每个Spring数据模块的核心Spring概念。


SpringDataJDBC:JDBC的SpringData存储库支持。


Spring Data JDBC Ext-支持标准JDBC的数据库特定扩展,包括支持Oracle RAC快速连接故障转移、AQ JMS支持和使用高级数据类型的支持。


SpringDataJPA-SpringData存储库对JPA的支持。


SpringDataKeyValue——基于地图的存储库和SPI,可以轻松地为键值存储构建SpringData模块。


SpringDataLDAP——SpringLDAP的SpringData存储库支持。


Spring Data MongoDB——基于Spring的MongoDB对象文档支持和存储库。


Spring Data Redis-从Spring应用程序轻松配置和访问Redis。


Spring数据REST-将Spring数据存储库导出为超媒体驱动的RESTful资源。


针对Apache Cassandra的Spring数据-轻松配置和访问Apache Kasandra或大规模、高可用、面向数据的Spring应用程序。


Spring Data for Apache Geode-轻松配置和访问Apache Geode,实现高度一致、低延迟、面向数据的Spring应用程序。


针对VMware Tanzu GemFire的Spring Data—为您的高度一致、低延迟/高吞吐量、面向数据的Spring应用程序轻松配置和访问Pivotal GemFire。

SpringData社区模块

弹簧数据Aerospeck-Aerospike的弹簧数据模块。


ArangoDB的Spring Data模块。


Spring Data Couchbase-Couchbase的Spring Data模块。


Spring Data Azure Cosmos数据库-Microsoft Azure Commos数据库的Spring数据模块。


Spring数据云数据存储-用于Google数据存储的Spring数据模块。


Spring数据云扳手-谷歌扳手的Spring数据模块。


Spring Data DynamoDB-用于Dynamo DB的Spring Data模块。


Spring Data Elasticsearch-弹性搜索的Spring Data模块。


Spring Data Hazelcast-为Hazelcash提供Spring数据存储库支持。


Spring Data Jest-基于Jest REST客户端的用于Elasticsearch的Spring Data模块。


Spring Data Neo4j——基于Spring的对象图支持和Neo4j存储库。


Oracle NoSQL Database SDK for Spring Data-用于Oracle NoSQL数据库和Oracle NoSQL云服务的Spring数据模块。


Spring Data for Apache Solr-为面向搜索的Spring应用程序轻松配置和访问Apache Solr。


Spring Data Vault-基于Spring Data KeyValue构建的Vault存储库。


Spring Data YugabyteDB—用于YugabetDB分布式SQL数据库的Spring Data模块。

SpringBoot整合jdbcTemplate

创建的项目请看下面的图示:

创建的Spring Initializ人项目

 

导入依赖坐标信息

 

勾选SpringWeb

 

点击Sql语句

 

驱动程序Mysql Driver

 

pom.xml北至文件导入依赖:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.7.4</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.springdate</groupId>
    <artifactId>springboot-springdate04</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>springboot-springdate04</name>
    <description>Demo project for Spring Boot</description>
    <properties>
        <java.version>1.8</java.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <version>2.7.4</version>
            <scope>compile</scope>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
</project>

log4j导入依赖架包

<!--log4j-->
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.14</version>
        </dependency>

导入JDBC数据库

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

Mysql的数据库

 <!--Mysql-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
<!-- https://mvnrepository.com/artifact/com.alibaba/druid-spring-boot-starter -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.2.9</version>
        </dependency>

JDBC的数据库的连接

spring:
  datasource:
    username: root
    password: 123456
    url: jdbc:mysql://localhost:3306/mybatis?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8
    driver-class-name: com.mysql.cj.jdbc.Driver
package com.springdate.Controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.Map;
@RestController
public class jdbc {
    @Autowired
    JdbcTemplate jdbcTemplate;
    //查询书籍看所有信息
    @GetMapping("/userlist")
    public List<Map<String, Object>> userList(){
        String sql = "SELECT * FROM account";
        List<Map<String, Object>> lists_maps  = jdbcTemplate.queryForList(sql);
        return lists_maps;
    }
 @GetMapping("/adduser")
    public String addUser(){
        String sql="INSERT INTO `mybatis`.`account`(`password`, `name`, `personid`, `balance`, `opendate`) VALUES ('111', '我是数据', 34435, 323, '2022-9-23 16:24:10')";
        jdbcTemplate.update(sql);
        return "update-ok";
    }
 @GetMapping("/updateuser/{id}")
    public String updateUser(@PathVariable("id") int id){
        String sql="UPDATE `mybatis`.`account` SET `id` = ?, `password` = ?, `name` = ?, `personid` = ?, `balance` = ? `opendate` = ? WHERE `id=`"+ id;
        Object[] objects = new Object[6];
        objects[0]="122";
        objects[1] = "1234567";
        objects[2] = "张氏";
        objects[3] = "23";
        objects[4] = "56";
        objects[5] = "2022-05-05 16:12:03";
        jdbcTemplate.update(sql,objects);
        return "xoung gei";
    }
  @GetMapping("/deluser")
    public String delUser(@PathVariable("id") int id){
        String sql="delete from `mybatis`.`account` where id=?";
        jdbcTemplate.update(sql,id);
        return "del-ok";
    }

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
8月前
|
Java Linux
Springboot 解决linux服务器下获取不到项目Resources下资源
Springboot 解决linux服务器下获取不到项目Resources下资源
|
8月前
|
Java 容器
SpringBoot读取resources下的文件以及resources的资源路径
SpringBoot读取resources下的文件以及resources的资源路径
172 0
|
6月前
|
存储 前端开发 Java
SpringBoot使用云端资源url下载文件的接口写法
在Spring Boot中实现从云端资源URL下载文件的功能可通过定义REST接口完成。示例代码展示了一个`FileDownloadController`,它包含使用`@GetMapping`注解的方法`downloadFile`,此方法接收URL参数,利用`RestTemplate`下载文件,并将文件字节数组封装为`ByteArrayResource`返回给客户端。此外,通过设置HTTP响应头,确保文件以附件形式下载。这种方法适用于从AWS S3或Google Cloud Storage等云服务下载文件。
574 7
|
8月前
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp的高校实验室资源综合管理系统的详细设计和实现(源码+lw+部署文档+讲解等)
基于SpringBoot+Vue+uniapp的高校实验室资源综合管理系统的详细设计和实现(源码+lw+部署文档+讲解等)
|
5月前
|
前端开发 JavaScript Java
Spring Boot应用中的资源分离与高效打包实践
通过实施资源分离和高效打包策略,不仅可以提升Spring Boot应用的开发和部署效率,还能显著提高用户体验。在实际项目中,根据项目的实际情况和团队的技术栈选择合适的工具和方案是关键。希望本文能为读者在Spring Boot项目中实现资源分离和高效打包提供一些有价值的参考。
|
6月前
|
物联网
好的资源链接,gitee全糖咖啡,B站视频转成mp4,全糖咖啡 / 物联网网关数据上传,,全糖咖啡 / springboot+百度智能车牌检测
好的资源链接,gitee全糖咖啡,B站视频转成mp4,全糖咖啡 / 物联网网关数据上传,,全糖咖啡 / springboot+百度智能车牌检测
|
7月前
|
Java
基于SpringBoot的餐厅会员管理信息系统【程序资源下载】
基于SpringBoot的餐厅会员管理信息系统【程序资源下载】
31 1
|
7月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp小程序的线上学习资源智能推荐系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp小程序的线上学习资源智能推荐系统附带文章源码部署视频讲解等
75 5
|
6月前
|
前端开发 JavaScript Java
使用Spring Boot实现跨域资源共享(CORS)
使用Spring Boot实现跨域资源共享(CORS)
|
6月前
|
前端开发 JavaScript Java
使用Spring Boot实现跨域资源共享(CORS)
使用Spring Boot实现跨域资源共享(CORS)

热门文章

最新文章