栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

SSM入门-Spring与MyBatis整合

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SSM入门-Spring与MyBatis整合

SSM配置与注解开发对比 Spring与Mybatis整合 配置文件开发 创建数据库表
SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for `tb_user`
-- ----------------------------
DROP TABLE IF EXISTS `tb_user`;
CREATE TABLE `tb_user` (
  `id` int NOT NULL AUTO_INCREMENT,
  `username` varchar(20) DEFAULT NULL,
  `password` varchar(32) DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `username` (`username`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

-- ----------------------------
-- Records of tb_user
-- ----------------------------
INSERT INTO `tb_user` VALUES ('2', '小小红', '234');
INSERT INTO `tb_user` VALUES ('3', 'www', '123');
INSERT INTO `tb_user` VALUES ('4', 'OOO', '123');
INSERT INTO `tb_user` VALUES ('5', 'XM', '123');
INSERT INTO `tb_user` VALUES ('6', '小红', '234');
实体类
package com.xxxIt.pojo;

public class User {

    private Integer id;     //建议在编程的时候使用Integer不一int,int不能为空,在处理业务时候会报错
    private String username;
    private String password;

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", userName='" + username + ''' +
                ", password='" + password + ''' +
                '}';
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getUserName() {
        return username;
    }

    public void setUserName(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }
}
导包

数据库→数据源→操作工具(mybatis,spring-jdbc,spring-mybatis)→spring-context

    
        
            mysql
            mysql-connector-java
            5.1.47
        

        
            com.alibaba
            druid
            1.1.16
        

        
            org.mybatis
            mybatis
            3.5.6
        

        
            org.springframework
            spring-jdbc
            5.2.10.RELEASE
        

        
            org.mybatis
            mybatis-spring
            2.0.2
        

        
            org.springframework
            spring-context
            5.2.10.RELEASE
        
    
配置文件

jdbc.properties

jdbc.driver = com.mysql.jdbc.Driver
jdbc.url = mysql:jdbc://127.0.0.1:3306/db1?SSL=false
jdbc.username = root
jdbc.password = root

mybatis-config.xml
可以把所有配置都写到ApplicationContext里,但是为了看出这是一个mybatis项目,保留这个文件,并将类型别名,日志之类写在该文件





    
           
    
    












    
        
    

SpringConfig




    
    

    
    
        
        
        
        
    

    
    
        
        
        


    @Autowired  //自动装配
    private UserMapper userMapper;  //自动装配替代了数据层的实现类


    @Override
    public User selectById(Integer id) {
        User user = userMapper.selectById(id);
        return user;
    }
}
编写测试类
package com.xxxIt.daoTest;

import com.xxxIt.config.SpringConfig;
import com.xxxIt.dao.UserMapper;
import com.xxxIt.service.UserService;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;

public class Test {
    public static void main(String[] args) {
        ApplicationContext applicationContext = new AnnotationConfigApplicationContext(SpringConfig.class);

//        UserService userService = applicationContext.getBean("UserService", UserService.class);
//        System.out.println(userService.selectById(3));

        UserMapper userMapper = applicationContext.getBean("UserMapper", UserMapper.class);
        System.out.println(userMapper.selectById(3));

    }
}
疑问

为什么用配置编写要写dao的实现类,而注解开发则不用,求大神告知

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1019857.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号