Mybatis
1:pom.xml中导入坐标
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.25</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.3.0</version>
</dependency>
<dependency>
配置jdbc.properties
jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/jdbc1?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&rewriteBatchedStatements=true
jdbc.username=root
jdbc.password=010429
2:创建sqlMapConfig.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>
<!-- 通过properties标签加载外部文件-->
<properties resource="jdbc.properties"></properties>
<environments default="development">
<!--配置mysql的环境,注意,default中的属性,与下边environment中id的属性是一样的-->
<environment id="development">
<!--配置事务的类型-->
<transactionManager type="JDBC"></transactionManager>
<!--配置数据源,也叫作连接池-->
<dataSource type="POOLED">
<!--配置连接数据库的四个基本信息-->
<property name="driver" value="${jdbc.driver}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</dataSource>
</environment>
</environments>
<!--指定映射配置文件的位置,映射配置文件指的是每个dao独立的配置文件-->
<mappers>
<!--指定文件的位置,要与main中java的文件结构位置相同-->
<mapper resource="com/xiaoze/mapper/UsersMapper.xml"></mapper>
</mappers>
</configuration>
3:创建UsersMapper.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="UsersMapper">
<!-- 查询操作-->
<select id="findAll" resultType="com.xiaoze.domain.Users" >
select * from users
</select>
<!-- 插入操作-->
<insert id="save" parameterType="com.xiaoze.domain.Users">
insert into users values(#{id},#{name},#{password},#{email},#{birthday})
</insert>
<!-- 修改操作-->
<update id="update" parameterType="com.xiaoze.domain.Users">
update users set password=#{password} where id = #{id}
</update>
<!-- 删除操作-->
<delete id="delete" parameterType="java.lang.Integer">
delete from users where id = #{id}
</delete>
</mapper>
4查询所有
//获取核心配置文件
InputStream resourceAsStream = Resources.getResourceAsStream("sqlMapConfig.xml");
//获取session工厂对象
SqlSessionFactory build = new SqlSessionFactoryBuilder().build(resourceAsStream);
//获取session会话对象
SqlSession sqlSession = build.openSession();
//执行操作,参数,namespace+id
List<Users> usersList = sqlSession.selectList("UsersMapper.findAll");
//打印数据
System.out.println(usersList);
//释放资源
sqlSession.close();
5修改
//2:插入操作
//模拟Users对象
Users users = new Users();
users.setId(7);
users.setPassword("55555");
//获取核心配置文件
InputStream resourceAsStream = Resources.getResourceAsStream("sqlMapConfig.xml");
//获取session工厂对象
SqlSessionFactory build = new SqlSessionFactoryBuilder().build(resourceAsStream);
//获取session会话对象
SqlSession sqlSession = build.openSession();
sqlSession.insert("UsersMapper.update",users);
//提交事务
sqlSession.commit();
//释放资源
sqlSession.close();
6:添加
//2:插入操作
//模拟Users对象
Users users = new Users();
users.setName("tom");
users.setPassword("6666222");
users.setEmail("Tom@qq.com");
users.setBirthday("1907-7-9");
//获取核心配置文件
InputStream resourceAsStream = Resources.getResourceAsStream("sqlMapConfig.xml");
//获取session工厂对象
SqlSessionFactory build = new SqlSessionFactoryBuilder().build(resourceAsStream);
//获取session会话对象
SqlSession sqlSession = build.openSession();
sqlSession.insert("UsersMapper.save",users);
//提交事务
sqlSession.commit();
//释放资源
sqlSession.close();
7:删除
//获取核心配置文件
InputStream resourceAsStream = Resources.getResourceAsStream("sqlMapConfig.xml");
//获取session工厂对象
SqlSessionFactory build = new SqlSessionFactoryBuilder().build(resourceAsStream);
//获取session会话对象
SqlSession sqlSession = build.openSession();
sqlSession.delete("UsersMapper.delete",7);
//提交事务
sqlSession.commit();
//释放资源
sqlSession.close();
浙公网安备 33010602011771号