1.mybatis是什么和用法
MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。2013年11月迁移到Github。
iBATIS一词来源于“internet”和“abatis”的组合,是一个基于Java的持久层框架。iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAOs)。当前,最新版本是MyBatis 3.5.1 ,其发布时间是2019年4月8日。.
平时我们都用JDBC访问数据库,除了需要自己写SQL之外,还必须操作Connection, Statement, ResultSet 这些其实只是手段的辅助类。 不仅如此,访问不同的表,还会写很多雷同的代码,显得繁琐和枯燥。用了Mybatis之后,只需要自己提供SQL语句,其他的工作,诸如建立连接,Statement, JDBC相关异常处理等等都交给Mybatis去做了,那些重复性的工作Mybatis也给做掉了,我们只需要关注在增删改查等操作层面上,而把技术细节都封装在了我们看不见的地方。
2.mabatis相关包的导入
另外,此项目还选需要导入sql操作相关jar包
3.编写Mybatis的.xml配置文件
这个配置文件的包含:数据库基本信息中的数据库驱动路径Driver,数据库路径url,数据库用户名username,数据库用户密码password和数据库操作配置文件.xml。
管理数据源的代码:
12 3 4
注:value=""中填写相应的数据 管理数据库操作映射(另一个.xml文件)的带按摩
12 3
注:xxx中填写相对应的创建的.xml文件名
4.编写xxx.xml的配置文件(数据库增删改查操作)
insert into person (name,nickname) values('张三','王麻子') insert into person (name,nickname) values(#{name},#{nickname}) update person set name=#{name},nickname=#{nickname} where pid=#{pid} delete from person where pid=#{pid} insert into person (name,nickname) values(#{name},#{nickname})
5.在java类中调用
public class MybTest { public void MybTest() throws IOException{ String resource = "com/mybatis1.xml"; InputStream inputStream = Resources.getResourceAsStream(resource); SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); SqlSession sqlSession = sqlSessionFactory.openSession(); //操作数据库,第一个参数是映射的Mapper.xml设定的sql语句,第二个是动态生成sql语句的参数 sqlSession.insert("Test1.insertPerson", user);//增 sqlSession.selectOne("Test1.findById", 1);//查 sqlSession.commit(); sqlSession.close(); }}