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 ...
随机推荐
- 集训考试题tents
题目描述Pb 去郊游啦!他来到一块空地打算在这里搭一个帐篷.但是,帐篷的四个支撑点不能在落在任何位置上,而只能落在一些固定点上.现在,他找到地面上有 N 个点可以支撑帐篷.(四个支撑点必须围成一个矩形 ...
- linux历史命令
"忘记历史的Linux用户注定要输入很多信息.” 这也让强有力的历史命令(包括Bash shell的历史变体)不仅在援引之前执行命令而不需重新输入它们时有用,在调用其它很少用到的命令时也有用 ...
- vc ini配置文件读写
ini文件(即Initialization file),这种类型的文件中通常存放的是一个程序的初始化信息.ini文件由若干个节(Section)组成,每个Section由若干键(Key)组成,每个Ke ...
- Fiddler 高级用法:Fiddler Script 与 HTTP 断点调试
转载自 https://my.oschina.net/leejun2005/blog/399108 1.Fiddler Script 1.1 Fiddler Script简介 在web前端开发的过程中 ...
- 微信小程序开发教程(二)创建第一个微信小程序
在安装完“微信Web开发者工具”之后,通过开发者的微信扫码进入后,如图. 点击“添加项目”,填入之前获得的AppID(无AppID可忽略),输入项目名称“Hello WXapplet”,选定本地文件夹 ...
- NOIP2010关押罪犯
题目描述 S 城现有两座监狱,一共关押着N 名罪犯,编号分别为1~N.他们之间的关系自然也极不和谐.很多罪犯之间甚至积怨已久,如果客观条件具备则随时可能爆发冲突.我们用“怨气值”(一个正整数值)来表示 ...
- 【二分法】【尺取法】bzoj2348 [Baltic 2011]Plagiarism
一开始以为死于精度……调了半天发现死于long long…… 一.二分法: #include<cstdio> #include<cstring> #include<alg ...
- 友情链接&部分题目的密码
YPL: https://www.cnblogs.com/Sdchr/ ZWL: https://www.cnblogs.com/acha XJ: https://blog.csdn.net/boyx ...
- Java下List<Long>转List<String>或者List<Long>转List<Integer>
说明:很遗憾,没有快速方法,只能遍历然后循环增加进去. 方法: for(String str : list) { int i = Integer.paseInt(str); intList.add(i ...
- hdu Ignatius and the Princess II
Ignatius and the Princess II Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Ja ...