1. 介绍1.1 介绍
今天开始我们来学习JAVA操作MySQL数据库的技巧,Java操作MySQL是借助JdbcTemplate这个对象来实现的 。JdbcTemplate是一个多数据库集中解决方案,而我们今天只讲如何通过JdbcTemplate操作MySQL数据库 。
Java的生态非常成熟,基本上是无框架不项目,无论做任何功能都一定会基于一个框架来开发 。福哥选择的就是非常大众的非常普及的SpringBoot框架,今天的教程也是基于这个SpringBoot框架的 。因为今天的主题是使用JdbcTemplate操作MySQL数据库,所以还不熟悉SpringBoot框架的童鞋们请自行恶补一下,福哥前面的文章也有介绍SpringBoot框架的,大家可以找来学习 。
2. 安装2.1 配置
在Application.properties里面设置jdbc连接mysql的配置参数 。
spring.datasource.url=jdbc:mysql://192.168.2.168:3306/test?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&tinyInt1isBit=false&serverTimezone=UTC&autoReconnect=true&useSSL=falsespring.datasource.username=rootspring.datasource.password=abcdefspring.datasource.driverClassName=com.mysql.cj.jdbc.Driver
2.2 依赖
在pom.xml里面添加jdbc的库包,这里面包括jdbc库包和mysql连接器库包 。
<!-- mysql --><dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.17</version></dependency><!-- jdbc --><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jdbc</artifactId> <version>2.1.7.RELEASE</version></dependency>
3. 配置因为SpringBoot倡导就是大部分功能都可以自动完成配置和初始化,完全不用我们写代码,这是所有Java程序员的梦想,如今SpringBoot给实现了~(怪不得那么多人只用SpringBoot开发呢 。。)
3. 对象注入
在控制器对象里面注入JdbcTemplate类,就可以直接使用这个JdbcTemplate类的属性来操作MySQL数据库了,不要太爽!
@AutowiredJdbcTemplate jdbcTemplate;
4. 数据库列表JdbcTemplate没有单独的方法用来获取数据库列表,福哥是通过执行“show databases”语句获取数据库列表信息的 。这是一个最简单的查询语句的示例,大家看好了 。
List<Map<String, Object>> map = jdbcTemplate.queryForList("show databases");
文章插图
5. 数据表列表同样的JdbcTemplate也没有用来获取数据表列表的方法,福哥是通过执行“show tables”语句获取当前数据库的数据表列表的 。
当前数据库是在配置Jdbc数据源的时候通过jdbc-url配置的,所以福哥改了一下配置文件的jdbc-url参数,将数据库设置成tfums库了 。
5.1 配置
spring.datasource.url=jdbc:mysql://192.168.2.168:3306/tfums?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&tinyInt1isBit=false&serverTimezone=UTC&autoReconnect=true&useSSL=falsespring.datasource.username=rootspring.datasource.password=abcdefspring.datasource.driverClassName=com.mysql.cj.jdbc.Driver
5.2 程序List<Map<String, Object>> map = jdbcTemplate.queryForList("show tables");
文章插图
6. 插入数据6.1 插入数据
插入数据是通过JdbcTemplate的update方法执行一个SQL语句完成的,如果SQL语句有参数可以通过“?”替代,然后通过一个Object数组传递参数 。因为Java是强类型语言,传递SQL参数相比较php就舒服多了,因为我们不需要指定参数的类型,JdbcTemplate会帮我们搞定 。
插入数据是否成功就看有没有异常抛出就可以了,没插入成功一定会有原因的嘛~~
try { String sql = "insert into user (passwd, createDT, userFlag, userState, userName)" + " values (?, now(), ?, ?, ?)"; Object[] values = new Object[]{"123456", 7, 1, "福哥教JdbcTemplate"}; Integer ret = jdbcTemplate.update(sql, values); return ret.toString();}catch (Exception e){ return e.getMessage();}
推荐阅读
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- SpringBoot中的Controller详解
- 尿酸高能喝白茶吗,通过喝茶降尿酸吗真正有用的是办法
- 力量训练方式有哪些?
- 通过手指看你一生的运势
- 你可以通过以下五种异地恋来结婚
- 通过U盘进行全新安装Windows
- Springboot默认的错误页是如何工作及工作原理你肯定不知道?
- springboot 结合 logback 设置
- Springboot配置文件加载路径及使用方式你真的都了解了吗?
- MySQL的监控原理