首页 > 代码库 > MyBatis与JDBC的对比

MyBatis与JDBC的对比

 1 //JDBC的步骤,1.加载驱动。2.获取连接。3.执行sql语句。4.处理结果集。5.关闭资源
 2 Class.forName("com.mysql.jdbc.Driver").newInstance();
 3 Connection conn=DrivateManager.getConnection(url,username,password);
 4 java.sql.PrepareStatement st=conn.prepareStatement(sql);
 5 st.setInt(0,1);
 6 st.execute();
 7 java.sql.ResultSet rs=st.getResultSet();
 8 while(rs.next()){
 9   String resultString=getString(columnname);      
10 }
11 //MyBatis的mapper配置文件
12 <mapper namespace="com.dao.UserMapper">
13     <select ifd="getList" resulType="user" parameterType="user">
14         select * from user
15     </select>
16 </mapper>
17 
18 MyBatis是将JDBC的几行代码分解包装
19 2,3行:是对数据库的数据源的管理包括事务管理
20 4,5行:Mybatis通过配置文件来管理Sql以及输入参数的映射
21 7,8,9行:Mybatis获取返回结果到java对象的映射,也是通过配置文件管理

补充:

 

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<!--通过这个配置文件,完成mybatis与数据库的连接  -->
<configuration>
   <!-- 引入database.properties文件 -->
   <properties resource="database.properties"/>
     <environments default="development">
        <environment id="development">
           <!-- 配置事务管理 ,采用JDBC管理事务-->
           <transactionManager type="JDBC"/>
           <!-- POOLED是mybatis的 数据源 -->
           <!-- JNDI是基于tomcat的数据源 -->
           <dataSource type="POOLED">
              <property name="driver" value="http://www.mamicode.com/${driver}"/>
              <property name="url" value="http://www.mamicode.com/${url}"/>
              <property name="username" value="http://www.mamicode.com/${username}"/>
              <property name="password" value="http://www.mamicode.com/${password}"/>
           </dataSource>
        </environment>
     </environments>

   <mappers>
      <!-- resource要写成路径 -->
      <mapper resource="com/wu/dao/UserMapper.xml"/>
      <package name=""/>
   </mappers>
</configuration>

 

MyBatis与JDBC的对比