MyBatis是一款优秀的持久层框架,用于简化JDBC的开发。
netstat -aon | findstr “3306” 查看3306端口是否被占用
IDEA连接mysql报错
Server returns invalid timezone. Go to ‘Advanced’ tab and set ‘serverTimezone’ property manually.
设置时区
Mybatis入门
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 )
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中自带)*/