zoukankan      html  css  js  c++  java
  • 课时13:多环境切换、注解方式与增删改返回值问题

    .1)多环境切换

      1.配置properties

    #mysql的配置环境
    mysql.driver=com.mysql.jdbc.Driver
    mysql.url=jdbc:mysql://localhost:3306/ssm
    mysql.username=root
    mysql.password=root
    
    #oracle的配置环境  这里需要自己动手改一下  改成上面的格式
    <property name="driver" value="oracle.jdbc.driver.OracleDriver"/>
    <property name="url" value="jdbc:oracle:thin:@localhost:1521:orcl"/>
    <property name="username" value="scott"/>
    <property name="password" value="tiger"/>

      2.配置主配置文件环境

     <environments default="envMysql">
    <!--        mysql配置环境-->
            <environment id="envMysql">
    <!--                配置事务-->
                <transactionManager type="JDBC">
                </transactionManager>
    <!--            配置数据库连接信息-->
                <dataSource type="POOLED">
                    <property name="driver" value="${mysql.driver}"/>
                    <property name="url" value="${mysql.url}"/>
                    <property name="username" value="${mysql.username}"/>
                    <property name="password" value="${mysql.password}"/>
                </dataSource>
            </environment>
    
    <!--        oracle环境配置-->
            <environment id="envOracle">
                <!--                配置事务-->
                <transactionManager type="JDBC">
                </transactionManager>
                <!--            配置数据库连接信息-->
                <dataSource type="POOLED">
                    <property name="driver" value="${oracle.driver}"/>
                    <property name="url" value="${oracle.url}"/>
                    <property name="username" value="${oracle.username}"/>
                    <property name="password" value="${oracle.password}"/>
                </dataSource>
            </environment>
        </environments>
    
    <!--    配置数据库支持类-->
        <databaseIdProvider type="DB_VENDOR">
                <property name="MySQL" value="mysql"/>
                <property name="Oracle" value="oracle"/>
        </databaseIdProvider>

        2.1 通过default来切换环境

        2.2 通过支持类来配置支持哪些数据库

      3.编写不同数据库sql

        3.1 列如oracle:rownum mysql:limit

      <select id="selectStudentById" resultType="student" parameterType="Integer" databaseId="oracle">
            select * from student where stuno=#{stuno}
        </select>   
        <select id="selectStudentById" resultType="student" parameterType="Integer" databaseId="mysql">
            select * from student where stuno=#{stuno}
        </select>

          3.1.1通过databaseId来找寻主配置里面配置的支持类别名

          3.1.2 .select标签两个id可以一样,当你的环境时oracle的时候就是执行oracle的id里面的sql,当你的环境时mysql的时候就是执行mysql的id里面的sql

    2.)注解方式开发

      1.推荐使用xml开发(而注解开发适用于一些小项目)

      2.如何使用注解开发

        2.1 配置主文件的mapper标签 通过class来映射接口 为了是让程序知道你的sql语句是存在接口中

    <mapper class="org.hbz.dao.IStudentDao"></mapper>

        2.2无论是注解还是xml都可以可以一劳永逸的方式直接填写包名存在哪里 (批量引入) 以下的语句两种方式都兼容

     <package name="org.hbz.dao"/>

      3. 将sql语句写在接口的方法的上面

    @Select("select * from student where stuNo=#{stuNo}")
        Student queryStudentByNo(int stuNo);

    .3)增删改的返回值问题

      1.返回值可以是void ,Integer,Long,Boolean

      2.如何操作?只需要在接口的方法修改返回值

     

  • 相关阅读:
    python的几个实例程序员节日快乐
    用python的time库写一个进度条
    用python绘画一些简单图片
    头文件板子
    Codeforces 606-C:Sorting Railway Cars(LIS)
    中南林业科技大学第十一届程序设计大赛- I:背包问题
    离散数学:用C语言来判断集合存在的二元关系
    中南林业科技大学第十一届程序设计大赛-C:有趣的二进制
    POJ 1611:The Suspects(并查集)
    POJ 2236:Wireless Network(并查集)
  • 原文地址:https://www.cnblogs.com/thisHBZ/p/12458174.html
Copyright © 2011-2022 走看看