• mybatis初体验(细节满满)


    1.创建数据表(库名为:mayikt)

    1. CREATE TABLE `mayikt_user` (
    2. `id` int NOT NULL AUTO_INCREMENT,
    3. `username` varchar(20) DEFAULT NULL,
    4. `userpwd` varchar(20) DEFAULT NULL,
    5. PRIMARY KEY (`id`)
    6. ) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb3

    2.创建maven项目

    没下载安装或者不会创建的小伙伴可以看这里:maven的下载安装与配置环境变量!!!(全网最详细)_明天更新的博客-CSDN博客

    创建完成后配置pom.xml文件:

    1. <dependencies>
    2. <dependency>
    3. <groupId>org.mybatisgroupId>
    4. <artifactId>mybatisartifactId>
    5. <version>3.5.13version>
    6. dependency>
    7. <dependency>
    8. <groupId>com.mysqlgroupId>
    9. <artifactId>mysql-connector-jartifactId>
    10. <version>8.1.0version>
    11. dependency>
    12. dependencies>

    3.在main文件夹下的resources文件夹下创建mybatis-config.xml(该配置文件名称是可以改) 存放就是我们数据库相关连接信息

    1. "1.0" encoding="UTF-8" ?>
    2. configuration
    3. PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
    4. "http://mybatis.org/dtd/mybatis-3-config.dtd">
    5. <configuration>
    6. <environments default="development">
    7. <environment id="development">
    8. <transactionManager type="JDBC"/>
    9. <dataSource type="POOLED">
    10. <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
    11. <property name="url" value="jdbc:mysql://127.0.0.1:3306/mayikt?serverTimezone=GMT%2B8"/>
    12. <property name="username" value="root"/>
    13. <property name="password" value=""/>
    14. dataSource>
    15. environment>
    16. environments>
    17. <mappers>
    18. <mapper resource="mapper/userMapper.xml"/>
    19. mappers>
    20. configuration>

     4.定义mapper ----编写我们mybatis 相关 sql语句 每个表 对应一个mapper

    1. "1.0" encoding="UTF-8" ?>
    2. mapper
    3. PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
    4. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
    5. <mapper namespace="userMapper">
    6. <select id="getByUsers" resultType="com.entity.UserEntity">
    7. select * from mayikt_user
    8. select>
    9. mapper>

     5.定义java对象--需要注意下 类中的 成员属性与数据库表中字段 映射 默认 类中的 成员属性数据库表中字段名称对应的

    1. /*
    2. * Copyright (c) 2020, 2023, All rights reserved.
    3. *
    4. */
    5. package com.entity;
    6. /**
    7. *

      Project: mybatis-dome - UserEntity

    8. *

      Powered by scl On 2023-09-08 10:18:39

    9. *

      描述:

    10. *
    11. * @author 孙臣龙 [1846080280@qq.com]
    12. * @version 1.0
    13. * @since 17
    14. */
    15. public class UserEntity {
    16. private Integer id;
    17. private String username;
    18. private String userpwd;
    19. public Integer getId() {
    20. return id;
    21. }
    22. public void setId(Integer id) {
    23. this.id = id;
    24. }
    25. public String getUsername() {
    26. return username;
    27. }
    28. public void setUsername(String username) {
    29. this.username = username;
    30. }
    31. public String getUserpwd() {
    32. return userpwd;
    33. }
    34. public void setUserpwd(String userpwd) {
    35. this.userpwd = userpwd;
    36. }
    37. @Override
    38. public String toString() {
    39. return "UserEntity{" +
    40. "id=" + id +
    41. ", username='" + username + '\'' +
    42. ", userpwd='" + userpwd + '\'' +
    43. '}';
    44. }
    45. }

     6.测试,使用 mybatis api开始执行该 sql语句即可 得到结果

    1. /*
    2. * Copyright (c) 2020, 2023, All rights reserved.
    3. *
    4. */
    5. package com.test;
    6. import com.entity.UserEntity;
    7. import org.apache.ibatis.io.Resources;
    8. import org.apache.ibatis.session.SqlSession;
    9. import org.apache.ibatis.session.SqlSessionFactory;
    10. import org.apache.ibatis.session.SqlSessionFactoryBuilder;
    11. import java.io.IOException;
    12. import java.io.InputStream;
    13. import java.util.List;
    14. /**
    15. *

      Project: mybatis-dome - Test01

    16. *

      Powered by scl On 2023-09-08 10:29:37

    17. *

      描述:

    18. *
    19. * @author 孙臣龙 [1846080280@qq.com]
    20. * @version 1.0
    21. * @since 17
    22. */
    23. public class Test01 {
    24. public static void main(String[] args) throws IOException {
    25. // 1.读取加载mybatis-config.xml
    26. String resource = "mybatis-config.xml";
    27. InputStream inputStream = Resources.getResourceAsStream(resource);
    28. SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
    29. // 2.获取到获取到
    30. SqlSession sqlSession = sqlSessionFactory.openSession();
    31. // 3.根据 mapper id=getByUsers 执行该s ql 语句 通过 sql语句得到我们的对象 orm
    32. List userEntitys = sqlSession.selectList("getByUsers", UserEntity.class);
    33. System.out.println(userEntitys);
    34. sqlSession.close();
    35. }
    36. }

  • 相关阅读:
    iOS打基础之Block二三事
    UE5简化打包大小
    关于测试计划的前世今生
    三面“有赞”Java岗斩获offer:Spring+JVM+并发锁+分布式+算法
    2023-10-21:用go语言,一共有三个服务A、B、C,网络延时分别为a、b、c 并且一定有:1 <= a <= b <= c <= 10^9 但是具体的延时数字丢失了,只有单次调用的时间 一次调
    使用open as方法对文件进行操作
    蓝桥杯递推与递归法|斐波那契数列|数字三角形|42点问题|数的计算|数的划分(C++)
    java面试题(17):链表两数相加
    2024022502-数据库绪论
    Slimming剪枝方法
  • 原文地址:https://blog.csdn.net/qq_64847107/article/details/132755314