Mybatis入门

2024-01-09 20:10:02

MyBatis是一款优秀的持久层框架,用于简化JDBC的开发。
在这里插入图片描述
netstat -aon | findstr “3306” 查看3306端口是否被占用
IDEA连接mysql报错
Server returns invalid timezone. Go to ‘Advanced’ tab and set ‘serverTimezone’ property manually.
在这里插入图片描述
设置时区
在这里插入图片描述
在这里插入图片描述

Mybatis入门

  1. 快速入门
  2. JDBC介绍
  3. 数据库连接池
  4. lombok

Mybatis基础增删改查
Mybatis动态SQL

Mybatis操作数据库的步骤:
1.准备工作 (创建springboot工程、数据库表user,实体类 user)
2.引入Mybatis的相关依赖,配置Mybatis(数据库连接信息)
使用UserMapper报错
在这里插入图片描述
在这里插入图片描述

3.编写SQL语句(注解/XML)
UserMapper.java文件中

@Mapper //Mybatis中的Mapper接口 程序运行时:框架自动生成接口的实现类对象
//并交给Spring的IOC容器管理
public interface UserMapper {
    //查询所有用户数据
    @Select("select id,name,age,gender,phone from  user")
    //代表的就是select查询,用于书写select查询语句
    public List<User> list();
}

在测试文件.java文件中写以下代码

/*该测试类在运行时,会自动通过引导类加载Spring的环境(IOC容器)。我们要测试那个bean对象,
    就可以直接通过@Autowired注解直接将其注入进行,然后就可以测试了。*/
    @Autowired(required = false)
    private UserMapper userMapper;
    @Test
    public void testList(){
        List<User> userList=userMapper.list();
        for(User user:userList){
            System.out.println(user);
        }
    }

在这里插入图片描述
数据库名字为你要连接的数据库
启动 报错

JDBC: ( Java DataBase Connectivity )
在这里插入图片描述

  1. 注册驱动
  2. 获取连接对象
  3. 执行SQL语句,返回执行结果
  4. 处理执行结果
  5. 释放资源
public void testJdbc() throws Exception{
        // 1.注册驱动
        Class.forName("com.mysql.cj.jdbc.Driver");
        //2.获取数据库连接
        String url="jdbc:mysql://127.0.0.1:3306/Xuexi";
        String username="root";
        String password="1201sjk";
        Connection connection = DriverManager.getConnection(url,username,password);

        //3.定义 SQl语句
        String sql="select * from user";

        //4.执行sql语句
        PreparedStatement preparedStatement = connection.prepareStatement(sql);
        ResultSet resultSet = preparedStatement.executeQuery();

        List<User> userList=new ArrayList<>(); //集合对象
        while (resultSet.next()){
            int id=resultSet.getInt("id");
            String name=resultSet.getString("name");
            short age = resultSet.getShort("age");
            short gender = resultSet.getShort("gender");
            String phone = resultSet.getString("phone");
            User user=new User(id,name,age,gender,phone);
            userList.add(user);
        }
        //释放资源
        resultSet.close();
        preparedStatement.close();
        connection.close();

        //遍历集合
        for (User user : userList) {
            System.out.println(user);
        }
    }

}

常见数据库连接池
C3P0
DBCP
Druid

Hikari(Springboot默认)

spring.datasource.druid.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.druid.url=jdbc:mysql://localhost:3306/Xuexi
spring.datasource.druid.username=root
spring.datasource.druid.password=

在这里插入图片描述
使用lombok
1.在pom.xml文件中引入依赖

 <!--在springboot的父工程中,已经集成了lombok并指定了版本号,故当前引入依赖
        时不需要指定version-->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>
@Data //getter方法、setter方法、toString方法、hashCode方法、、equals方法
@NoArgsConstructor //无参构造
@AllArgsConstructor //全参构造
/*Lombok的注意事项:
        Lombok会在编译时,会自动生成对应的java代码
        在使用lombok时,还需要安装一个lombok的插件(新版本的IDEA中自带)*/

文章来源:https://blog.csdn.net/qq_39033580/article/details/135411204
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。