zoukankan      html  css  js  c++  java
  • MyBatis基础

    一.大配置

    <?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">
    <!--根节点,XMl只能有一个-->
    <configuration>
        <!--一个environments有N个environment-->
        <typeAliases>
            <package name="cn.bdqn.entity"></package>
        </typeAliases>
        <environments default="development">
    
            <environment id="development">
                <!--
               transactionManager:JDBC保证事务的
               update
               delete
               事务分类:JDBC:编程式事务
                           xxx.beginTransaction()
    
                           tx.commit()
                           tx.rollback()
                         配置式事务
                         JDBC|MANAGED
                         区别
    
               -->
                <transactionManager type="JDBC"></transactionManager>
                <!--
                   POOLED:MyBatis内置的连接池
                   c3p0连接池
                           POOLED 、UNPOOLED  、JNDI
               -->
                <dataSource type="POOLED">
                    <property name="driver" value="com.mysql.jdbc.Driver"/>
                    <property name="url" value="jdbc:mysql:///blog"/>
                    <property name="username" value="root"/>
                    <property name="password" value="1234"/>
                </dataSource>
    
            </environment>
        </environments>
    
    <mappers>
    <mapper resource="cn/bdqn/dao/DeptMappr.xml"></mapper>
            </mappers>
            </configuration>

    二.小配置

    <?xml version="1.0" encoding="UTF-8"?>
    <!--头文件-->
    <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
    <!--namespace:
         命名空间:区分不同空间下的同名SQLID
         A: findlAll
         B:  findAll
        -->
    <mapper namespace="cn.bdqn.dao.IDeptDao">
        <!--SQL标签
          id:唯一锁定到SQL标识
          paramenterType:SQL语句的入参  可以省略
          resultType:
          增删除操作:不能 写
          查询:单个实体的类型
        -->
        <select id="getAll"  resultType="Dept">
      /*SQL文:SQL语句*/
        SELECT * FROM  bloginfo
        </select>
        <select id="getid"  resultType="Dept">
            /*SQL文:SQL语句*/
            SELECT * FROM  bloginfo WHERE blogId=#{blogId}
        </select>
    </mapper>

    三.jar包

       <dependency>
                <groupId>org.mybatis</groupId>
                <artifactId>mybatis</artifactId>
                <version>3.2.2</version>
            </dependency>
    
    
            <!--mysql  jar包-->
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>5.1.38</version>
            </dependency>

    四.实体类

         public class StudentInfo {

         private Integer stuId;

         private String stuName;

         private Integer  stuAge;

         private Date stuDate;

    }

    五.更新POM.xml文件中build节点

     <build>

        <resources>

          <resource>

            <directory>src/main/java</directory>

            <includes>

              <include>**/*.xml</include>

            </includes>

          </resource>

        </resources>

      </build>

    六.测试类 

    InputStream is=Resources.getResourcesAsStream(path);

    SessionFactory factory=new SessionFactoryBuilder().build(is);

    SqlSession session=factory.openSession();

    <?xml version="1.0" encoding="UTF-8" ?>
    <!--文档类型,头文件-->
    <!DOCTYPEconfiguration
    PUBLIC"-//mybatis.org//DTD Config 3.0//EN"
    "http://mybatis.org/dtd/mybatis-3-config.dtd">
    <!--根节点,XMl只能有一个-->
    <configuration>
    <!--一个environments有N个environment-->
    <typeAliases>
    <package name="cn.bdqn.entity"></package>
    </typeAliases>
    <environments default="development">

    <environment id="development">
    <!--
    transactionManager:JDBC保证事务的
    update
    delete
    事务分类:JDBC:编程式事务
    xxx.beginTransaction()

    tx.commit()
    tx.rollback()
    配置式事务
    JDBC|MANAGED
    区别

    -->
    <transactionManager type="JDBC"></transactionManager>
    <!--
    POOLED:MyBatis内置的连接池
    c3p0连接池
    POOLED 、UNPOOLED 、JNDI
    -->
    <dataSource type="POOLED">
    <property name="driver" value="com.mysql.jdbc.Driver"/>
    <property name="url" value="jdbc:mysql:///blog"/>
    <property name="username" value="root"/>
    <property name="password" value="1234"/>
    </dataSource>

    </environment>
    </environments>

    <mappers>
    <mapper resource="cn/bdqn/dao/DeptMappr.xml"></mapper>
    </mappers>
    </configuration>
  • 相关阅读:
    表现层(jsp)、持久层(类似dao)、业务层(逻辑层、service层)、模型(javabean)、控制层(action)
    理解HTTP session原理及应用
    “不同浏览器对于同一域名的并发获取(加载)资源数是有限的”
    URL编码与解码
    URL和URI的区别与联系
    spring 源代码地址
    java_ant详解
    Struts2 Convention插件的使用
    Struts2的@ResultPath
    Java Annotation原理分析(一)
  • 原文地址:https://www.cnblogs.com/qjt970518--/p/7144255.html
Copyright © 2011-2022 走看看