Mybatis入门

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

Mybatis入门

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

Mybatis基础增删改查
Mybatis动态SQL

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

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 )
Mybatis入门_第5张图片

  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中自带)*/

你可能感兴趣的:(java学习,mybatis)