在第一次使用mybatis框架的时候,遇见The last packet sent successfully to the server was 0 milliseconds ago. 异常。
该异常的出现地方是
package com.offcn.test;
import com.offcn.dao.UserDao;
import com.offcn.entity.User;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.Test;
import java.io.IOException;
import java.io.InputStream;
public class MybatisTest {
@Test
public void testInsert() throws IOException {
//创建一个user对象
User u = new User();
u.setUname("张三");
u.setUpwd("123");
//读取配置文件
InputStream is = Resources.getResourceAsStream("mybatis.xml");
//创建构造者对象
SqlSessionFactoryBuilder sfb = new SqlSessionFactoryBuilder();
//根据创造者对象中的方法,把读取到的配置文件创造出一个会话工厂对象
SqlSessionFactory build = sfb.build(is);
//创建会话,类似于connection
SqlSession session = build.openSession();
//由框架帮助我们自动生成一个对应接口的实现类对象,通过反射
//通过接口引用实现对象,获取到对象,该对象叫做代理对象
UserDao ud = session.getMapper(UserDao.class);
//完成功能
ud.insert(u); //这里会报出异常
//提交SQL语句,mybatis中关闭了MySQL的自动提交
session.commit();
//关闭资源
session.close();
is.close();
}
}
一直提示SQL没有发送成功。
该异常的报错信息中有jdbc,检查代码发现无误,又去检查了配置文件中配置信息,也正确。然后重启MySQL服务就正确了。