靖烜小哥哥之mybatis总结

MyBatis是一个半自动映射的框架。“半自动”是相对于Hibernate全表映射而言的,MyBatis需要手动匹配提供POJO、SQL和映射关系,而Hibernate只需提供POJO和映射关系即可。

与Hibernate相比,虽然使用MyBatis手动编写SQL要比使用Hibernate的工作量大,但MyBatis可以配置动态SQL并优化SQL,可以通过配置决定SQL的映射规则,它还支持存储过程等。对于一些复杂的和需要优化性能的项目来说,显然使用MyBatis更加合适。

 public class MybatisUtils {

          private static SqlSessionFactory sqlSessionFactory = null;

          static {

              try {

    Reader reader = Resources.getResourceAsReader("mybatis-config.xml");

    sqlSessionFactory =  new SqlSessionFactoryBuilder().build(reader);

              } catch (Exception e) {

    e.printStackTrace();

              }

          }

          public static SqlSession getSession() {

               return sqlSessionFactory.openSession();

          }

    }

<properties resource="db.properties" />

<dataSource type="POOLED">

    <!-- 数据库驱动 -->

    <property name="driver" value="${jdbc.driver}" />

    <!-- 连接数据库的url -->

    <property name="url" value="${jdbc.url}" />

    <!-- 连接数据库的用户名 -->

    <property name="username" value="${jdbc.username}" />

    <!-- 连接数据库的密码 -->

    <property name="password" value="${jdbc.password}" />

</dataSource>

 <environments default="development">

          <environment id="development">

      <transactionManager type="JDBC" />

            <dataSource type="POOLED">

                   <property name="driver" value="${jdbc.driver}" />

                   <property name="url" value="${jdbc.url}" />

                   <property name="username" value="${jdbc.username}" />

                   <property name="password" value="${jdbc.password}" />

         </dataSource>

          </environment>

            ...

     </environments>

猜你喜欢

转载自www.cnblogs.com/jxxgg/p/11600818.html