Spring----Spring整合MyBatis

本文详细介绍了如何将Spring与MyBatis进行整合,包括项目框架搭建、数据库表创建、实体类定义、Mapper接口编写、Service接口及实现、Spring配置文件设置,最后通过测试方法验证整合效果。
摘要由CSDN通过智能技术生成

Spring整合MyBatis

文章目录
Spring整合MyBatis

一、项目框架

二、用Navicat在数据库中创建一张表t_user

三、 添加spring的一些jar包

四、 编写实体类User

五、使用步骤编写UserMapper接口

六、写service接口和相应的实现类

1.service接口

2.实现类

七.编写Spring配置文件

八、编写测试方法

一、项目框架
图片

示例:这里是spring整合Mybatis之后的架构图

二、用Navicat在数据库中创建一张表t_user
图片

三、 添加spring的一些jar包
图片

四、 编写实体类User
图片

五、使用步骤编写UserMapper接口
package com.gzh.mapper;

import com.gzh.pojo.User;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/**

  • @Author {高哲浩}

  • @Date: 2022/04/26/ 11:27

  • @Description
    */
    public interface UserMapper {

    @Select(“select * from t_user where uname=#{uname} and pwd = #{pwd}”)
    User userLoginMapper(@Param(“uname”) String uname, @Param(“pwd”) String pwd);

    @Select(“select * from t_user”)
    List selectAll();
    }

六、写service接口和相应的实现类
1.service接口
package com.gzh.service;

import com.gzh.pojo.User;

import java.util.List;

/**

  • @Author {你的名字}

  • @Date: 2022/04/26/ 11:25

  • @Description
    */
    public interface UserLoginService {
    // User userLogin(String uname,String pwd);

    List findAll();
    }

2.实现类
package com.gzh.service.impl;

import com.gzh.mapper.UserMapper;
import com.gzh.pojo.User;
import com.gzh.service.UserLoginService;

import java.util.List;

/**

  • @Author {你的名字}

  • @Date: 2022/04/26/ 11:26

  • @Description
    */
    public class UserLoginServiceImpl implements UserLoginService {

    private UserMapper userMapper;

    public UserMapper getUserMapper() {
    return userMapper;
    }

    public void setUserMapper(UserMapper userMapper) {
    this.userMapper = userMapper;
    }

    @Override
    public List findAll() {
    List users = userMapper.selectAll();

     return users;
    

    }
    }

七.编写Spring配置文件

<?xml version="1.0" encoding="UTF-8"?>

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">

    <property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
    <property name="url" value="jdbc:mysql://127.0.0.1:3306/502?useSSL=false&amp;useUnicode=true&amp;characterEncoding=utf8&amp;serverTimezone=Asia/Shanghai"></property>
    <property name="username" value="root"></property>
    <property name="password" value="root"></property>

</bean>

<!-- 声明SqlSessionFactoryBean, ,创建SqlSessionFactory对象,之后就可以获取SqlSession对象 -->
<bean id="factory" class="org.mybatis.spring.SqlSessionFactoryBean">

    <!-- 指定数据源 -->
    <property name="dataSource" ref="dataSource"></property>


</bean>
<bean id="mapper" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
    <!-- 指定SqlSessionFactory对象的名称 -->
    <property name="sqlSessionFactory" ref="factory"></property>
    <!-- 指定基本包,dao接口所在的包名 -->
    <property name="basePackage" value="com.gzh.mapper"></property>
</bean>

<!-- 声明service -->
<bean id="us" class="com.gzh.service.impl.UserLoginServiceImpl">
    <property name="userMapper" ref="userMapper"></property>
</bean>

八、编写测试方法
代码如下(示例):

package com.gzh.test;

import com.gzh.mapper.UserMapper;
import com.gzh.pojo.User;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import java.util.List;

/**

  • @Author {高哲浩}

  • @Date: 2022/04/26/ 22:25

  • @Description
    */
    public class TestA {
    public static void main(String[] args) {
    ApplicationContext ac = new ClassPathXmlApplicationContext(“spring.xml”);
    UserMapper mapper = (UserMapper) ac.getBean(“userMapper”);
    List users = mapper.selectAll();

     for (User u : users){
         System.out.println("user="+u);
     }
    

    }
    }

总结: 不太会说,就这样吧

图片

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小熊昊浩

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值