一、背景

Spring boot是集服务发布、数据库管理、日志管理等于一身的服务开发框架;是微服务开发的全能小帮手。这章讲述一下如何使用spring boot访问MySQL数据库。

二、搭建基础环境

1、安装maven(指导文档 网上一搜一大堆)。

2、在eclipse中创建maven项目。

3、在pom.xml配置连接spring boot的仓库。依赖部分的配置如下:

 <parent>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-parent</artifactId>
     <version>1.4.0.BUILD-SNAPSHOT</version>
 </parent>  

 <!-- Add typical dependencies for a web application -->
 <dependencies>
     <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-web</artifactId>
     </dependency>
     <dependency>
         <groupId>org.mybatis.spring.boot</groupId>
         <artifactId>mybatis-spring-boot-starter</artifactId>
         <version>1.1.1</version>
     </dependency>
      <dependency>
         <groupId>mysql</groupId>
         <artifactId>mysql-connector-java</artifactId>
     </dependency>
      <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-devtools</artifactId>
         <optional>true</optional>
     </dependency>
 </dependencies>  

4、配置JDBC连接

在src/main/resources下创建application.properties配置文件。添加如下配置:

 spring.datasource.url=jdbc:mysql://localhost:3306/testdb1?useUnicode=true&characterEncoding=utf-8
 spring.datasource.username=root
 spring.datasource.password=
 spring.datasource.driver-class-name=com.mysql.jdbc.Driver

三、开发数据库访问接口

通过mybatis注解的方式,编写数据库mapper接口。

 @Mapper
 public interface UserMapper
 {
     @Insert("insert into tbl_user (name, age) values (#{name}, #{age})")
     void insertUser(User user);

     @Results(value= {
             @Result(property="userId", column="id"),
             @Result(property="name", column="name"),
             @Result(property="age", column="age")
     })
     @Select("select id, name, age from tbl_user")
     List<User> getUsers();
 } 

四、开发调用mapper的客户端程序

 @RestController
 @RequestMapping(value="example")
 public class WSExample
 {
     @Autowired
     private UserMapper userMapper;

     @RequestMapping(value="/v1/query-user", method=RequestMethod.GET)
     public List<User> queryUser()
     {
         return userMapper.getUsers();
     }
 }

五、在main函数的class上添加扫描mapper注解

 @SpringBootApplication
 @MapperScan("com.elon.springbootdemo")
 public class App
 {
     public static void main( String[] args )
     {
         System.out.println( "Hello World!" );
         SpringApplication.run(App.class, args);
     }
 }

Spring Boot初探之数据库访问的更多相关文章

  1. Spring Boot(二):数据库操作

    本文主要讲解如何通过spring boot来访问数据库,本文会演示三种方式来访问数据库,第一种是JdbcTemplate,第二种是JPA,第三种是Mybatis.之前已经提到过,本系列会以一个博客系统 ...

  2. Spring Boot开启Druid数据库监控功能

    Druid是一个关系型数据库连接池,它是阿里巴巴的一个开源项目.Druid支持所有JDBC兼容的数据库,包括Oracle.MySQL.Derby.PostgreSQL.SQL Server.H2等.D ...

  3. 195. Spring Boot 2.0数据库迁移:Flyway

    [视频&交流平台] àSpringBoot视频:http://t.cn/R3QepWG à SpringCloud视频:http://t.cn/R3QeRZc à Spring Boot源码: ...

  4. spring boot 开静态资源访问,配置视图解析器

    配置视图解析器spring.mvc.view.prefix=/pages/spring.mvc.view.suffiix= spring boot 开静态资源访问application.proerti ...

  5. Spring Boot Actuator未授权访问

    当我们发现某一个网页的logo是一篇叶子或者报错信息如下图所示的话,就可以尝试Spring Boot Actuator未授权访问. /dump - 显示线程转储(包括堆栈跟踪) /autoconfig ...

  6. # spring boot + mybatis 读取数据库

    spring boot + mybatis 读取数据库 创建数据库 use testdb; drop table if exists t_city; create table t_city( id i ...

  7. 如何通过Spring Boot配置动态数据源访问多个数据库

    之前写过一篇博客<Spring+Mybatis+Mysql搭建分布式数据库访问框架>描述如何通过Spring+Mybatis配置动态数据源访问多个数据库.但是之前的方案有一些限制(原博客中 ...

  8. Spring Boot中使用JdbcTemplate访问数据库

    本文介绍在Spring Boot基础下配置数据源和通过JdbcTemplate编写数据访问的示例. 数据源配置 在我们访问数据库的时候,需要先配置一个数据源,下面分别介绍一下几种不同的数据库配置方式. ...

  9. Spring Boot实战之数据库操作

    上篇文章中已经通过一个简单的HelloWorld程序讲解了Spring boot的基本原理和使用.本文主要讲解如何通过spring boot来访问数据库,本文会演示三种方式来访问数据库,第一种是Jdb ...

随机推荐

  1. [bzoj4552][Tjoi2016&Heoi2016]排序-二分+线段树

    Brief Description DZY有一个数列a[1..n],它是1∼n这n个正整数的一个排列. 现在他想支持两种操作: 0, l, r: 将a[l..r]原地升序排序. 1, l, r: 将a ...

  2. MySQL数据库基础(四)(子查询与链接)

    1.子查询简介 其中,所谓的"外层查询"并不是指"查找",指的是所有SQL语句的统称:结构化查询语言(Structured Query Language),简称 ...

  3. LeetCode第六天

    第六天 30.(219) Contains Duplicate II JAVA class Solution { public boolean containsNearbyDuplicate(int[ ...

  4. lua 操作数据库

    操作mysql主要用到了lua-resty-mysql库,代码可以在github上找得到 而且上面也有实例代码 由于官网给出的例子比较基本,代码也比较多,所以我这里主要介绍一些怎么封装一下,简化我们调 ...

  5. 内置函数 -- bytes -- 字节码与字符串相互转换

    说明: 1. 返回值为一个新的不可修改字节数组,每个数字元素都必须在0 - 255范围内,是bytearray函数的具有相同的行为,差别仅仅是返回的字节数组不可修改. 2. 当3个参数都不传的时候,返 ...

  6. Spark SQL1.2与HDP2.2结合

    1.hbase相同的rowkey里存在多条记录问题的调研解决方案 VERSIONS => 3,Hbase version 最多插入三条记录 将一个集群hbase中表 "Vertical ...

  7. HighGUI图形图像界面初步—— 图像的载入、显示与输出

    HighGUI模块为高层GUI图形用户界面模块,包含媒体的输入输出.视频捕捉.图像和视频的编解码.图形交互界面的接口等. 在本章中,我们将学到: 图像的载入.显示和输出到文件的详细分析 滑动条的创建和 ...

  8. linux shell中获取mongodb最大连接数、内存使用情况等

    前两天接到了一个新的需求,需要在linux shell脚本中监控到mongodb最大连接数.内存使用情况等. 但是我对于linux shel很不了解,只是会一些简单常用的linux的操作而已,只要一顿 ...

  9. GNU C 扩展之__attribute__ 机制简介

    在学习linux内核代码及一些开源软件的源码(如:DirectFB),经常可以看到有关__attribute__的相关使用.本文结合自己的学习经历,较为详细的介绍了__attribute__相关语法及 ...

  10. dojo表格分页插件报错

    dojo表格分页插件报错 (1)dojo/parser::parse() error ReferenceError {stack:(...),message:"layout is not d ...