springboot学习(九) 使用mybatis访问数据库
1、添加maven依赖
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.1</version>
</dependency> <dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>6.0.6</version>
</dependency>
这里使用的是mysql数据库,如果是其他数据库将数据库依赖换掉即可。
2、修改配置文件
在application.properties配置文件中增加mybatis的数据库连接配置:
# 定义注解类所在的包
mybatis.type-aliases-package=cn.origal.domain spring.datasource.url=jdbc:mysql://localhost:3309/test?serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
3、修改启动类
在启动类中增加项目对mapper包的扫描:
@SpringBootApplication
@MapperScan("cn.origal.mapper")
public class Application { public static void main(String[] args) {
SpringApplication application = new SpringApplication(Application.class);
// 取消通过命令行设置属性值
application.setAddCommandLineProperties(false);
application.run(Application.class, args);
}
}
4、开发mapper类连接测试
user实体类:
package cn.origal.domain; public class User { private String name; private Integer age; // .....
}
mapper类:
package cn.origal.mapper; import cn.origal.domain.User;
import org.apache.ibatis.annotations.*; import java.util.List; public interface UserMapper { @Insert("insert into user(name, age) values (#{name}, #{age})")
void insert(User user); @Update("update user set age=#{age} where name=#{name}")
void update(User user); @Delete("delete from user where name=#{name}")
void delete(User user); @Select("select name, age from user")
@Results({
@Result(property = "name", column = "name"),
@Result(property = "age", column = "age")
})
List<User> getAll();
}
测试类:
@RunWith(SpringRunner.class)
@SpringBootTest(classes = Application.class)
public class TestMybatis { @Autowired
private UserMapper userMapper; @Test
public void testInsert() {
User user = new User();
user.setName("a2");
user.setAge(11); userMapper.insert(user);
} @Test
public void query() {
System.out.println(userMapper.getAll());
}
}
5、通过xml文件连接测试
(1)首先在上面的那些配置还是需要的,然后在application.properties配置文件中添加xml文件配置:
# 定义注解类所在的包
mybatis.config-locations=classpath:mybatis/mybatis-config.xml
mybatis.mapper-locations=classpath:mybatis/mapper/*.xml
目录结构:
(2)在mybatis配置mybatis-config.xml中添加一些基础配置:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<typeAliases>
</typeAliases>
</configuration>
(3)添加User的映射文件UserMapper.xml:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.origal.mapper.UserXmlMapper"> <select id="getAll" resultType="User">
SELECT
name, age
FROM user
</select>
</mapper>
(4)编写对应的dao层:
package cn.origal.mapper; import cn.origal.domain.User; import java.util.List; public interface UserXmlMapper { List<User> getAll();
}
(5)进行连接测试:
@RunWith(SpringRunner.class)
@SpringBootTest(classes = Application.class)
public class TestXmlMybatis { @Autowired
private UserXmlMapper userXmlMapper; @Test
public void test() {
System.out.println(userXmlMapper.getAll());
}
}
springboot学习(九) 使用mybatis访问数据库的更多相关文章
- 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_3-1.整合Mybatis访问数据库和阿里巴巴数据源
笔记 1.整合Mybatis访问数据库和阿里巴巴数据源 简介:整合mysql 加入mybatis依赖,和加入alibaba druid数据源 1.加入依赖(可以用 http://start.s ...
- Spring Boot入门教程2-1、使用Spring Boot+MyBatis访问数据库(CURD)注解版
一.前言 什么是MyBatis?MyBatis是目前Java平台最为流行的ORM框架https://baike.baidu.com/item/MyBatis/2824918 本篇开发环境1.操作系统: ...
- SpringBoot学习之整合Mybatis
本博客使用IDEA开发工具,通过Maven构建SpringBoot项目,初始化项目添加的依赖有:spring-boot-starter-jdbc.spring-boot-starter-web.mys ...
- Spring Boot 框架下使用MyBatis访问数据库之基于XML配置的方式
MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis 可以使用简单的 XML ...
- JavaSE学习总结(九)—— Java访问数据库(JDBC)
一.JDBC简介 JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java ...
- 尚硅谷springboot学习33-整合mybatis
引入mybatis依赖(还要引入mysql和jdbc依赖) <dependency> <groupId>org.mybatis.spring.boot</groupId& ...
- springboot学习2 整合mybatis
springboot整合mybatis 一.添加mybatis和数据库连接的依赖 <!--整合mybatis--> <dependency> <groupId>or ...
- SpringBoot学习之集成mybatis
一.spring boot集成Mybatis gradle配置: //gradle配置: compile("org.springframework.boot:spring-boot-star ...
- SpringBoot学习:整合MyBatis,使用Druid连接池
项目下载地址:http://download.csdn.NET/detail/aqsunkai/9805821 (一)添加pom依赖: <!-- https://mvnrepository.co ...
随机推荐
- Unity防破解 —— 重新编译mono
Unity4.x版本导出android包时,只能选择mono,无法使用il2cpp,这就造成了我们的程序集很容易被修改--很多朋友在发布项目时觉得即使代码暴露出去也没什么关系,只有项目火了才有 ...
- ( 转 ) Mysql group_concat 的反向应用实现(Mysql列转行)
用过Mysql的都知道她有一个很好的实现行转列功能的函数group_concat函数,非常方便 点击(此处)折叠或打开 SELECT * FROM group_test; SELECT id, GRO ...
- sql developer 自定义快捷键
- [xsy1515]小学生数学题
题意:求$\begin{align*}\left(\sum\limits_{i=1}^n\dfrac 1i\right)\%\ p^k\end{align*}$ 数学真是太可爱了== 直接推公式 设$ ...
- java源码阅读Object
1 类注释 Class {@code Object} is the root of the class hierarchy. Every class has {@code Object} as a s ...
- 如何使用 vimdiff 来 git diff
git config --global diff.tool vimdiffgit config --global difftool.prompt falsegit config --global al ...
- 使用Spring Cloud Sleuth和Zipkin进行分布式链路跟踪
原文:http://www.cnblogs.com/ityouknow/p/8403388.html 随着业务发展,系统拆分导致系统调用链路愈发复杂一个前端请求可能最终需要调用很多次后端服务才能完成, ...
- Session集中式管理
Asp.net Session集中式管理主要有StateServer(状态服务器).Sqlserver(数据库服务器).自定义(如Redis缓存服务器)等,本文主要介绍StateServe ...
- 函数指针&指针函数
https://blog.csdn.net/luoyayun361/article/details/80428882
- XPath注入技术综述
一次完整的 XPath 注入攻击应该包括使用特殊构造的查询来提取一个 XML 数据库内的 数据或者信息.作为一门新的技术,XPath 注入在一定程度上和 SQL 注入漏洞有着惊人的相 似之处,通过下面 ...