Mybits

Mybits的xml配置

  1. .创建maven工程
  2. 创建实体类
  3. 编写持久层接口 UserDao
 4. `package com.huang.dao;

import com.huang.domain.QueryVo;
import com.huang.domain.User;

import java.util.List;

public interface UserDao {
    /**
     * 查询所有
     * @return
     */
    public List<User> findAll();
    void saveUser(User user);
    void updateUser(User user);
    void deleteUser(int uid);
    User findById(int id);
    List<User> findByName(String username);
    int findTotal();
    List<User> findByVo(QueryVo vo);
}

`

  • 编写持久层接口的映射文件 IUserDao.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="com.huang.dao.UserDao">
    <select id="findAll" resultType="com.huang.domain.User">
        select  * from user
    </select>
    <insert id="saveUser" parameterType="com.huang.domain.User">
        insert into user (username,birthday,sex,address)values(#{username},#{birthday},#{sex},#{address})
    </insert>
    <update id="updateUser" parameterType="com.huang.domain.User">
        update user set username=#{username},birthday= #{birthday},sex=#{sex},address=#{address} where id =#{id}
    </update>
    <delete id="deleteUser" parameterType="Integer">
        delete from user where id =#{uid}
    </delete>
    <select id="findById" parameterType="int" resultType="com.huang.domain.User">
        select * from user where id = #{id}
    </select>
    <select id="findByName" parameterType="String" resultType="com.huang.domain.User">
        select * from user where username like #{name}
    </select>
    <select id="findTotal" resultType="int">
        select  count(*) from user
    </select>
    <select id="findByVo" parameterType="com.huang.domain.QueryVo" resultType="com.huang.domain.User">
        select * from user where username like #{user.username}
    </select>
</mapper>`
 - 编写 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>
<!--    配置环境-->
    <environments default="mysql">
<!--        配置mysql的环境-->
        <environment id="mysql">
<!--            配置事务类型-->
            <transactionManager type="JDBC"></transactionManager>
<!--            配置数据库连接池-->
            <dataSource type="POOLED">
<!--                配置数=数据库连接的4个信息-->
                <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/day01?serverTimezone=GMT%2B8"/>
                <property name="username" value="root"/>
                <property name="password" value="huang100"/>
            </dataSource>
        </environment>
    </environments>
<!--    指定映射配置文件的位置,映射文件指的是每个dao独立的配置文件-->
    <mappers>
        <mapper resource="com/huang/dao/UserDao.xml"></mapper>
    </mappers>
</configuration>`

编写测试类

//1.读取配置文件
InputStream in = Resources.getResourceAsStream("SqlMapConfig.xml");
//2.创建 SqlSessionFactory 的构建者对象
SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
//3.使用构建者创建工厂对象 SqlSessionFactory
SqlSessionFactory factory = builder.build(in);
//4.使用 SqlSessionFactory 生产 SqlSession 对象
SqlSession session = factory.openSession();
//5.使用 SqlSession 创建 dao 接口的代理对象
IUserDao userDao = session.getMapper(IUserDao.class);
//6.使用代理对象执行查询所有方法
List<User> users = userDao.findAll();
for(User user : users) {
System.out.println(user);
}
//7.释放资源
session.close();
in.close();

基于注解方式的配置

  • 在持久层接口中添加注解
 - public interface IUserDao {
/**
 - 查询所有用户
 - @return
*/
@Select("select * from user")
List<User> findAll();
}
  • 修改 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>
<!--    配置环境-->
    <environments default="mysql">
<!--        配置mysql的环境-->
        <environment id="mysql">
<!--            配置事务类型-->
            <transactionManager type="JDBC"></transactionManager>
<!--            配置数据库连接池-->
            <dataSource type="POOLED">
<!--                配置数=数据库连接的4个信息-->
                <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/day01?serverTimezone=GMT%2B8"/>
                <property name="username" value="root"/>
                <property name="password" value="huang100"/>
            </dataSource>
        </environment>
    </environments>
<!--    指定映射配置文件的位置,映射文件指的是每个dao独立的配置文件-->
    <mappers>
        <mapper class="com.huang.dao.UserDao"></mapper>
    </mappers>
</configuration>

mybits的自定义
mybits的查询所有分析

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值