Spring整合Mybatis、Spring整合JUnit

这篇具有很好参考价值的文章主要介绍了Spring整合Mybatis、Spring整合JUnit。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


Spring整合Mybatis、Spring整合JUnit,spring,mybatis,junit

🐌个人主页: 🐌 叶落闲庭
💨我的专栏:💨
c语言
数据结构
javaweb

石可破也,而不可夺坚;丹可磨也,而不可夺赤。

一、Spring整合Mybatis

1.1 整合Mybatis,原配置文件

<?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 resource="jdbc.properties"></properties>
    <typeAliases>
        <package name="com.practice.domain"/>
    </typeAliases>
    <environments default="development">
        <environment id="mysql">
            <transactionManager type="JDBC"/>
            <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>
    <mappers>
        <mapper resource="com.practice.dao"/>
    </mappers>
</configuration>

1.2整合后

package com.practice.config;

import org.mybatis.spring.SqlSessionFactoryBean;
import org.mybatis.spring.mapper.MapperScannerConfigurer;
import org.springframework.context.annotation.Bean;

import javax.sql.DataSource;

/**
 * @Author YJ
 * @Date 2023/7/31 10:10
 * Description:Mybatis配置
 */
public class MybatisConfig {

    @Bean
    public SqlSessionFactoryBean sqlSessionFactory(DataSource dataSource) {
        SqlSessionFactoryBean ssfb = new SqlSessionFactoryBean();
        ssfb.setTypeAliasesPackage("com.practice.domain");
        ssfb.setDataSource(dataSource);
        return ssfb;
    }
    @Bean
    public MapperScannerConfigurer mapperScannerConfigurer() {
        MapperScannerConfigurer msc = new MapperScannerConfigurer();
        msc.setBasePackage("com.practice.dao");
        return msc;
    }
}

1.3相关文件:

1.3.1jdbc配置文件

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://127.0.0.1:3306/mybatis?useSSL=false
jdbc.userName=root
jdbc.password=123456

1.3.2jdbc配置类及spring配置类

package com.practice.config;

import com.alibaba.druid.pool.DruidDataSource;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;

import javax.sql.DataSource;

/**
 * @Author YJ
 * @Date 2023/7/31 10:00
 * Description:Jdbc配置
 */
public class JdbcConfig {
    @Value("${jdbc.driver}")
    private String driver;
    @Value("${jdbc.url}")
    private String url;
    @Value("${jdbc.userName}")
    private String userName;
    @Value("${jdbc.password}")
    private String password;

    @Bean
    public DataSource dataSource() {
        DruidDataSource dataSource = new DruidDataSource();
        dataSource.setDriverClassName(driver);
        dataSource.setUrl(url);
        dataSource.setUsername(userName);
        dataSource.setPassword(password);
        return dataSource;
    }
}
package com.practice.config;

import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;
import org.springframework.context.annotation.PropertySource;

/**
 * @Author YJ
 * @Date 2023/7/31 9:52
 * Description:
 */
@Configuration
@ComponentScan("com.practice")
@PropertySource("jdbc.properties")
@Import({JdbcConfig.class,MybatisConfig.class})
public class SpringConfig {
}

1.3.3数据库操作类

public interface UserDao {
    void save(User user);
    @Insert("insert into tb_user(id,username,password,gender,addr) values(#{id},#{username},#{password},#{gender},#{addr})")
    void insert(User user);
    @Delete("delete from tb_user where id=#{id}")
    void delete(Integer id);
    @Update("update tb_user set username=#{username} where id=#{id}")
    void update(User user);
    @Select("select * from tb_user")
    List<User> selectAll();
    @Select("select * from tb_user where id=#{id}")
    User selectById(Integer id);
}
public interface UserService {
    void save(User user);
    void update(User user);
    void delete(Integer id);
    User selectById(Integer id);
    List<User> selectAll();
}
@Service
public class UserServiceImpl implements UserService {
    @Autowired
    private UserDao userDao;
    public void save(User user) {
        userDao.save(user);
    }

    public void update(User user) {
        userDao.update(user);
    }

    public void delete(Integer id) {
        userDao.delete(id);
    }

    public User selectById(Integer id) {
        return userDao.selectById(id);
    }

    public List<User> selectAll() {
        return userDao.selectAll();
    }
}

1.3.4测试类

public class App2 {
    public static void main(String[] args) {
        ApplicationContext ctx = new AnnotationConfigApplicationContext(SpringConfig.class);
        UserService bean = ctx.getBean(UserService.class);
        User user = bean.selectById(2);
        System.out.println(user);
    }
}

1.3.5运行结果


Spring整合Mybatis、Spring整合JUnit,spring,mybatis,junit


二、Spring整合JUnit

2.1使用Spring整合JUnit专用的类加载器

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = SpringConfig.class)
public class UserServiceTest {
    @Autowired
    private UserService userService;
    @Test
    public void testSelectById() {
        System.out.println(userService.selectById(2));
    }
    @Test
    public void testSelectAll(){
        System.out.println(userService.selectAll());
    }
}

总结

关于Spring整合的相关步骤就介绍完了,欢迎各位点赞+关注!!!文章来源地址https://www.toymoban.com/news/detail-622868.html

到了这里,关于Spring整合Mybatis、Spring整合JUnit的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • SpringBoot整合JUnit、MyBatis、SSM

    🐌个人主页: 🐌 叶落闲庭 💨我的专栏:💨 c语言 数据结构 javaEE 操作系统 石可破也,而不可夺坚;丹可磨也,而不可夺赤。 名称:@SpringBootTest 类型:测试类注解 位置:测试类定义上方 作用:设置JUnit加载的SpringBoot启动类 范例: 相关属性 classes:设置SpringBoot启动类 注意

    2024年02月10日
    浏览(38)
  • SpringBoot整合JUnit--MyBatis--MyBatis-Plus--Druid

    文章转自黑马程序员SpringBoot学习笔记,学习网址:黑马程序员SpringBoot2教程 1.整合JUnit ​ SpringBoot技术的定位用于简化开发,再具体点是简化Spring程序的开发。所以在整合任意技术的时候,如果你想直观感触到简化的效果,你必须先知道使用非SpringBoot技术时对应的整合是如何做

    2023年04月23日
    浏览(43)
  • JAVA-10-[SpringBoot]整合JUnit和MyBatis

    SpringBoot测试失败并报错: Unable to find a @SpringBootConfiguration, you need to use @ContextConfiguration 1.2.1 启动类MyApplication.java 1.2.2 测试类MyApplicationTests 核心配置:数据库连接相关信息(连什么?连谁?什么权限?) 映射配置:SQL映射(XML/注解) 1、导入对应starter 2、配置相关信息 2.4.1 实体类

    2023年04月08日
    浏览(34)
  • SpringBoot入门篇3 - 整合junit、整合mybatis、基于SpringBoot实现ssm整合

    目录 Spring整合JUnit  SpringBoot整合JUnit 测试类注解:@SpringBootTest 作用:设置JUnit加载的SpringBoot启动类 ①使用spring initializr初始化项目的时候,添加依赖。  ②设置数据源application.yml 注意: SpringBoot版本低于2.4.3,Mysql驱动版本大于8.0时,需要在url连接串中配置时区。 ③定义数据

    2024年02月10日
    浏览(39)
  • 【Spring6】| Spring6整合JUnit 一:Spring6整合JUnit

    目录 一:Spring6整合JUnit 1. Spring对JUnit4的支持 2. Spring对JUnit5的支持 1. Spring对JUnit4的支持 准备工作:pom.xml 注: 以前是直接使用单元测试Junit,现在使用Spring对Junit的整合! 声明Bean spring.xml配置 单元测试: ①以前的写法 ②使用Spring对Junit4的支持写法 (1)使用两个注解:

    2023年04月20日
    浏览(68)
  • 【Spring6】| Spring6整合JUnit 一:Spring6整合JUnit

    目录 一:Spring6整合JUnit 1. Spring对JUnit4的支持 2. Spring对JUnit5的支持 1. Spring对JUnit4的支持 准备工作:pom.xml 注: 以前是直接使用单元测试Junit,现在使用Spring对Junit的整合! 声明Bean spring.xml配置 单元测试: ①以前的写法 ②使用Spring对Junit4的支持写法 (1)使用两个注解:

    2023年04月18日
    浏览(84)
  • spring-spring整合Junit

    1.导包 artifactIdspring-test/artifactId artifactIdjunit/artifactId 2.创建测试类

    2024年02月12日
    浏览(36)
  • Spring整合junit

    @RunWith   指定测试用例类型 @ContextConfiguration 指定测试SpringConfig配置类  @Autowired  自动装配 @Test  表明这个是测试用例

    2024年02月15日
    浏览(47)
  • 【四:Spring整合Junit】

    相同点 前面都一样和Spring整合mybatis(基于注解形式)一样 Spring整合Mybatis 不同点 1、导入依赖增加 2、编写的位置不同。。路径一定要与实现类一致

    2024年02月07日
    浏览(40)
  • Spring整合Junit框架

    在前面的文章中给大家介绍了 以注解和XML的方式分别实现IOC和依赖注入。并且我们定义了一个测试类,通过测试类来获取到了容器中的Bean,具体的测试类定义如下: 大家思考一下,定义这种测试代码有没有什么问题? 其实问题很明显,就是我们每次定义测试类,都需要去写

    2024年01月15日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包