MyBatis是一款优秀的 持久层 框架,用于简化JDBC的开发。
----------------------------------------------------------------------------
入门案例:
User.java:
package com.itheima.pojo;
public class User {
private Integer id;
private String name;
private Short age;
private Short gender;
private String phone;
public User(){
}
public User(Integer id, String name, Short age, Short gender, String phone) {
this.id = id;
this.name = name;
this.age = age;
this.gender = gender;
this.phone = phone;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Short getAge() {
return age;
}
public void setAge(Short age) {
this.age = age;
}
public Short getGender() {
return gender;
}
public void setGender(Short gender) {
this.gender = gender;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
@Override
public String toString() {
return "user{" +
"id=" + id +
", name='" + name + '\'' +
", age=" + age +
", gender=" + gender +
", phone='" + phone + '\'' +
'}';
}
}
UserMapper:(编写SQL语句:注解/XML)
package com.itheima.mapper;
import com.itheima.pojo.User;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import java.util.List;
@Mapper//在运行时,自动生成该接口的实现类对象(代理对象),并将该对象交给IOC容器管理
public interface UserMapper {
//查询全部用户信息
//一条记录放到一个List里面
//方法名就叫list()
@Select("select * from user")
public List<User> list();
}
SpringbootMybatisQuickstartApplicationTests.java:(单元测试)
package com.itheima;
import com.itheima.mapper.UserMapper;
import com.itheima.pojo.User;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.List;
@SpringBootTest
class SpringbootMybatisQuickstartApplicationTests {
@Autowired
private UserMapper userMapper;
@Test
public void testListUser(){
List<User> userList=userMapper.list();
userList.stream().forEach(user -> {
System.out.println(user);
});
}
}
-------------------------------------------------------------------------
JDBC: ( Java DataBase Connectivity ),就是使用Java语言操作关系型数据库的一套API。
-----------------------------------------------------------------------------
数据库连接池是个容器,负责分配、管理数据库连接(Connection)
它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个
释放空闲时间超过最大空闲时间的连接,来避免因为没有释放连接而引起的数据库连接遗漏
------------------------------------------------------------------------------
Lombok是一个实用的Java类库,能通过注解的形式自动生成构造器、getter/setter、equals、hashcode、toString等方法,并可以自动化生成日志变量,简化java开发、提高效率。