mybatis简单入门项目

Mybatis

1.Mybatis介绍详情

​ myBatis是支持普通sql查询,存储过程和高级映射的优秀持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java对象)映射成数据库中的记录。

2.mybatis的快速入门

以一个用户信息新增改查的例子为例

项目目录介绍

在这里插入图片描述

2.1添加jar包

在conf.xml中添加jar包

添加mybatis

在这里插入图片描述

添加mysql驱动包

在这里插入图片描述

添加lombok

在这里插入图片描述

2.2数据库建库和创建表格

在这里插入图片描述

2.3添加mybatis的配置文件conf.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>
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC" />
            <dataSource type="POOLED">
            <!--记得数据库连接路径改为自己,账户和密码换成自己的数据库密码-->
                <property name="driver" value="com.mysql.jdbc.Driver" />
                <property name="url" value="jdbc:mysql://localhost:3306/qy129?useSSL=false&amp;characterEncoding=utf8&amp;useUnicode=true" />
                <property name="username" value="root" />
                <property name="password" value="283003" />
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <mapper resource="mapper/UserMapper.xml"/>
    </mappers>
</configuration>

2.4定义表中所对应的实体类

package aaa.qy129.entity;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data //帮你生成set 和 get 以及toString
@NoArgsConstructor //无参构造函数
@AllArgsConstructor //全参构造函数 //必须安装lombok插件
public class User {
    
    
    private int id;
    private String name;
    private String sex;


}

2.5定义操作user表的sql映射文件

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="mao">
    <!--parameterType 参数类型 resultType="aaa.qy129.entity.User"返回的结果集类型-->
    <select id="getUser" parameterType="int"  resultType="aaa.qy129.entity.User">
       select * from user
    </select>
    <insert id="addUser" >
        insert into user(name,sex) value(#{
    
    name},#{
    
    sex})
    </insert>
    <delete id="delUser">
        delete from user where id=#{
    
    id}
    </delete>
    <update id="updateUser" parameterType="aaa.qy129.entity.User">
        update user set  name=#{
    
    name},sex=#{
    
    sex} where id=#{
    
    id}
    </update>
</mapper>

2.6在conf.xml文件中注册userMapper.xml文件

 <mappers>
        <mapper resource="mapper/UserMapper.xml"/>
    </mappers>

2.7.编写测试代码:

 //加载mybatis的配置文件
        Reader reader = Resources.getResourceAsReader("conf.xml");
        //构建sqlSession的工厂
        SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(reader);
        //创建能映射文件中的sql的sql的sqlSession
        SqlSession session = sessionFactory.openSession();
        List<Object> objects = session.selectList("mao.getUser");
        //1.查询新增
        System.out.println(objects);
        //session.insert("mao.addUser",new User(1,"mao","add"));
        //2.添加
        //session.insert("mao.addUser",new User(1,"mao19","add"));
        //3.修改
        //int update = session.update("mao.updateUser", new User(1, "毛云飞天下第一帅", "男神"));
        //System.out.println(update);
        //4.删除
        //int delete = session.delete("mao.delUser",7);
        //System.out.println(objects);
        //事务都是默认开启,需要手动提交commit
        session.commit();

猜你喜欢

转载自blog.csdn.net/weixin_42550986/article/details/115018299
今日推荐