`

Springboot+Mybatis+oracle的整合

 
阅读更多

1.创建maven工程(ecplise配置集成maven插件)

    手动创建maven时,默认环境是jdk1.5的,要与自己的配置开发环境一致,要更改依赖环境

    也可用start.spring.io网站提供的工具自动创建,可同时添加依赖包,选用版本等等,

    创建好以后下载到本地导入即可,环境就是1.8的,与本地不一致时,要手动更改并update

2.添加配置pom.xml文件的依赖包

  <parent>

    <groupId>org.springframework.boot</groupId>

    <artifactId>spring-boot-starter-parent</artifactId>

    <version>1.5.6.RELEASE</version>

    <relativePath/> <!-- lookup parent from repository -->

  </parent>

  <dependencies>

  <!--  

    在pom文件中增加spring-boot-starter-web的maven依赖时,

    不做任何web相关的配置便能提供web服务,这还得归于spring boot 

    自动配置的功能(因为加了EnableAutoConfiguration的注解),

    帮我们创建了一堆默认的配置:servlet配置, filter配置,

    listener配置,修改filter的映射

  -->

    <dependency>  

      <groupId>org.springframework.boot</groupId>  

      <artifactId>spring-boot-starter-web</artifactId>  

    </dependency>  

  <!-- 

    spring boot整合mybatis 

    使用了该Starter之后,只需要定义一个DataSource即可,

    它会自动创建使用该DataSource的SqlSessionFactoryBean

    以及SqlSessionTemplate。会自动扫描你的Mappers,连接到

    SqlSessionTemplate,并注册到Spring上下文中

  -->

  <dependency>

        <groupId>org.mybatis.spring.boot</groupId>

        <artifactId>mybatis-spring-boot-starter</artifactId>

        <version>1.3.0</version>

    </dependency>

    

    <!-- 使用oracle数据库驱动 --> 

     <dependency>

        <groupId>com.oracle</groupId>

        <artifactId>ojdbc6</artifactId>

        <version>10.2.0.4.0</version>

     </dependency> 

     <!-- alibaba的druid数据库连接池 -->

     <dependency>

         <groupId>com.alibaba</groupId>

         <artifactId>druid</artifactId>

         <version>1.0.11</version>

     </dependency>

     <!--       

              进行数据解析Fastjson会自动处理对象中的泛型,

              将其解析成原来定义好的对象,

      -->

     <dependency>  

         <groupId>com.alibaba</groupId>  

         <artifactId>fastjson</artifactId>  

        <version>1.1.41</version>  

     </dependency>  

     <!-- 进行测试 -->   

    <dependency>

      <groupId>junit</groupId>

      <artifactId>junit</artifactId>

      <version>3.8.1</version>

      <scope>test</scope>

    </dependency>

  </dependencies>

  

  <!-- 

        添加mavenc插件 

        在添加了该插件之后,当运行“mvn package”进行打包时,会打包成一个可以

        直接运行的 JAR 文件,使用“java -jar”命令就可以直接运行。这在很大程度

        上简化了应用的部署,只需要安装了 JRE 就可以运行

  -->

  <build>  

        <plugins>  

           <plugin>  

                <groupId>org.springframework.boot</groupId>  

                <artifactId>spring-boot-maven-plugin</artifactId>  

            </plugin>  

       </plugins>  

    </build>  

</dependencies>

3.添加配置文件application.yml/application.properties

spring:

    datasource:

#       name: test   #可以省略

       url: jdbc:oracle:thin:@127.0.0.1:1521:ORCL

       username: ZY167

       password: ZY167

       #使用druid数据源

#       type: com.alibaba.druid.pool.DruidDataSource  #数据源类型不添加也可以

       driver-class-name: oracle.jdbc.driver.OracleDriver

 

#    profiles:

4.特别注意:自己创建的包要与springboot入口文件同级,否则会一直报错;

   

 5.写入口文件:

@SpringBootApplication        

//启用Spring应用程序上下文的自动配置,尝试猜测和配置您可能需要的bean。

//自动配置类通常基于类路径和定义的bean应用。例如,如果你有tomcat嵌入式。

//jar在您的类路径中,你可能会想要一个TomcatEmbeddedServletContainerFactory

//(除非你定义自己的EmbeddedServletContainerFactory bean)。

//@EnableAutoConfiguration

public class TestApplication {

   public static void main(String[] args) {

    SpringApplication.run(TestApplication.class, args);

   }

}

6.写mybatisConfig.java配置文件

@Configuration

//sqlSessionFactoryRef-------指定在spring上下文中有多个SqlSessionFactory使用的情况。

//通常,只有当您拥有多个数据源时才需要这样做。**要与SqlSessionFactory的@Bean的name一致

//basePackages----------用于扫描MyBatis接口的基本包。注意,只有具有至少一个方法的接口将被注册;具体的类将被忽略。

@MapperScan(basePackages="testData.dao",sqlSessionFactoryRef = "sessionFactory")   //要添加包扫描主解,否则无法正确启动,可配置到访问入口

public class MybatisConfig {

 

    @Autowired

    //Environment

    //接口,表示当前应用程序正在运行的环境。应用程序环境的两个关键方面:

    //概要文件和属性。与属性访问相关的方法通过PropertyResolver超接口公开。

    private Environment env;

    

    /**

     * @Title: defaultDataSource 

     * @Description: 创建数据源

     * @return DataSource

     */

    @Primary

    //@Primary

    //表示当多个候选对象具备自动连接单值依赖项的条件时,应该优先考虑bean。

    //如果候选对象中只有一个“主”bean,那么它将是自动连接的值。

    @Bean(name="dataSource")

    public DataSource dataSource() {

        //使用DruidDataSource数据源

        DruidDataSource dataSources = new DruidDataSource();

        //获取驱动

        dataSources.setDriverClassName(env.getProperty("spring.datasource.driver-class-name"));

        //获取访问路径

        dataSources.setUrl(env.getProperty("spring.datasource.url"));

        //获取用户名

        dataSources.setUsername(env.getProperty("spring.datasource.username"));

        //获取用户密码

        dataSources.setPassword(env.getProperty("spring.datasource.password"));

        return dataSources;

    }

    

    /**

     * @Title: sessionFactory

     * @Description: 获取session工厂

     * @param: @param dataSource 数据源

     * @param: @return   

     * @return: SqlSessionFactory   

     * @throws

     */

    @Primary

    @Bean(name="sessionFactory")

    public SqlSessionFactory sessionFactory(@Qualifier("dataSource")DataSource dataSource){

        SqlSessionFactoryBean sessionFactoryBean = new SqlSessionFactoryBean();

        sessionFactoryBean.setDataSource(dataSource);

        

      //添加XML目录

        ResourcePatternResolver resolver = new PathMatchingResourcePatternResolver();

        try {

            //resolver.getResources------将给定的位置模式解析为资源对象。

            //设置将在运行时合并到SqlSessionFactory配置中的MyBatis映射文件的位置。

            //sessionFactoryBean.setMapperLocations

            //这是在MyBatis配置文件中指定“< sqlmapper >”条目的替代方法。这个基于

            //Spring资源抽象的属性还允许在这里指定资源模式:例如:“classpath *:sqlmap / * -mapper.xml”。

            sessionFactoryBean.setMapperLocations(resolver.getResources("classpath:testData.dao.*.xml"));

            //返回一个实例对象的(可能共享或独立)由这个工厂管理。

            return sessionFactoryBean.getObject();

        } catch (Exception e) {

            System.out.println("mybatis初始化sqlSessionFactoryBean失败");

            e.printStackTrace();

        }

        return null;

    }

    

    /**

     * ---------该方法可省略-------------

     * @Title: sqlSessionTemplate

     * @Description: TODO(创建实例工厂)

     * @param: @param sqlSessionFactory

     * @param: @return   

     * @return: SqlSessionTemplate   

     * @throws

     */

    @Primary 

    @Bean("defaultSqlSessionTemplate")

    public SqlSessionTemplate sqlSessionTemplate(SqlSessionFactory sqlSessionFactory) {

        //构造一个Spring管理的SqlSession,并将SqlSessionFactory作为参数提供。

        return new SqlSessionTemplate(sqlSessionFactory);

    }

 

}

7.写mybatis的数据库操作语句的mapper文件和service层文件,此处代码省略;

8.写controller文件:

@RestController

public class TestController {

    @Autowired

    private AllService allService;

    @Autowired

    private RiskTypeService riskTypeService;

    

    @RequestMapping(value="/test",method = RequestMethod.GET)

    public String getTest() {

        List<RiskViewCfg> list =  allService.getAll();

        System.out.println("list集合的长度为:-----|||----------"+list.size());

        for (int i = 0; i < list.size(); i++) {

            RiskViewCfg riskViewCfg = new RiskViewCfg();

            System.out.println(riskViewCfg.getView_name()+"========"+riskViewCfg.getCreate_sql());

        }

        return "hello----------word";

    }

9.启动springboot的入口文件,访问默认的8080端口,会有返回值,则表示成功!

分享到:
评论

相关推荐

    SpringBoot+mybatis+Oracle整合代码

    在"SpringBoot+mybatis+Oracle整合代码"中,我们可以学习到以下几个关键知识点: 1. **SpringBoot的自动配置**:SpringBoot的核心特性之一就是自动配置,它能根据项目中的依赖自动配置相应的Bean。在整合MyBatis时...

    Springboot+Mybatis-plus+ SpringMvc+Shiro+Redis企业级报表后台管理系统.rar

    shiro作为安全框架,主流技术 几乎零XML,极简配置 两套UI实现(bootstrap+layer ui),可以自由切换 报表后端采用技术: SpringBoot整合SSM(Spring+Mybatis-plus+ SpringMvc),spring security 全注解式的权限管理和...

    Springboot+Mybatis-plus+ SpringMvc+Shiro+Redis企业级报表后台管理系统

    报表后端采用技术: SpringBoot整合SSM(Spring+Mybatis-plus+ SpringMvc),spring security 全注解式的权限管理和JWT方式禁用Session,采用redis存储token及权限信息 报表前端采用Bootstrap框架,结合Jquery Ajax,...

    springboot + mybatis-plus + oracle + 多数据源 + redis + hutool

    springboot + mybatis-plus + database+ 多数据源 + redis + hutool 框架干净,没有其他冗余的成分; 配置了MP的代码生成器,意见生成代码,节省开发时间! 可用于各种定时任务处理,各种夸库操作, 多数据源支持...

    SpringBoot+Mybatis+Atomikos+Mysql+Oracle 多数据源分布式事物后台搭建

    SpringBoot+Mybatis+Atomikos+Mysql+Oracle 多数据源分布式事物后台搭建 完整demo包,直接下下来解压,数据库配成自己的库,表自己的表,修改下脚本直接跑,网上大把资料,没一个能直接用的,这里花了点时间稍做...

    idea+springboot+oracle+mybatis

    标题 "idea+springboot+oracle+mybatis" 暗示了这个项目是基于IntelliJ IDEA的一个集成开发环境,使用Spring Boot框架,配合Oracle数据库和MyBatis持久层框架来构建的应用。以下是对这些技术栈的详细解释: 1. **...

    springBoot+mybatis简单demo完整详细版

    在本项目"springBoot+mybatis简单demo完整详细版"中,我们将深入探讨如何使用Spring Boot与MyBatis框架构建一个简单的应用。Spring Boot以其快速启动、自动化配置和开箱即用的特点,大大简化了Java应用程序的开发...

    springboot+mybatis+javafx项目

    该项目是一个集成SpringBoot、MyBatis和JavaFX的综合应用,...开发者可以通过SpringBoot来快速搭建服务端,利用MyBatis与Oracle数据库进行数据交互,同时通过JavaFX设计用户友好的交互界面,实现档案管理的高效和便捷。

    springboot+mybatis+mysql+layUI+thymeleaf实现增删改查

    总的来说,这个项目展示了如何将SpringBoot、MyBatis、MySQL、LayUI和Thymeleaf整合在一起,创建一个功能完善的Web应用,实现对数据的CRUD操作。这种技术栈组合具有较高的开发效率和良好的可维护性,是当前Web开发中...

    Springboot+mybatis+druid多数据源配置(oracle+mybatis)

    本篇将详细讲解如何在Spring Boot项目中结合Mybatis和Druid实现多数据源配置,以支持Oracle和MySQL两种数据库,并进行数据库的分离调试。 首先,我们要理解Spring Boot的自动配置机制。Spring Boot通过扫描`@...

    Springboot+Mybatis+Maven+Oracle+Cassandra+事务(Aop)+定时任务实现

    总的来说,"Springboot+Mybatis+Maven+Oracle+Cassandra+事务(Aop)+定时任务实现"这个主题涵盖了Web应用开发的关键技术,通过它们的集成,开发者可以构建出高性能、易于维护的后台系统。而提供的压缩包文件可能包含...

    SpringBoot+Mybatis项目搭建

    在`pom.xml`或`build.gradle`文件中,还需要添加Mybatis和Mybatis-SpringBoot的依赖,以及数据库驱动(如MySQL、Oracle等),例如: Maven: ```xml &lt;groupId&gt;org.mybatis.spring.boot &lt;artifactId&gt;mybatis-...

    idea配置maven+Springboot+mybatis+oracle

    **五、整合Spring Boot和MyBatis** 1. **配置MyBatis-Spring Boot Starter**: 在`pom.xml`中添加MyBatis-Spring Boot Starter依赖,它会自动帮助我们完成MyBatis与Spring Boot的集成。 2. **扫描Mapper**: 在Spring...

    springboot +mybatis+oracle 配置多个数据源,配置两个数据库信息

    本配置示例将详细介绍如何在Spring Boot中整合MyBatis与Oracle数据库,并配置两个不同的数据源。 首先,我们需要理解数据源(DataSource)的概念。数据源是Java应用程序与数据库之间的桥梁,它负责管理数据库连接,...

    IDEA+springboot+mybatis+oracle多模块项目

    这是一个基于IDEA集成开发环境,使用SpringBoot、MyBatis框架,并与Oracle数据库结合的多模块项目。在深入了解这个项目之前,我们先来逐一解析每个关键组件。 **1. IDEA (IntelliJ IDEA)**:IDEA是JetBrains公司...

    springboot+mybatis

    在实际的项目中,"SpringbootMybatis"可能包含以下部分: 1. **pom.xml**:Maven的配置文件,包含了项目依赖,如SpringBoot Starter Web、MyBatis、Oracle JDBC驱动、Thymeleaf等。 2. **application.properties/...

    SpringBoot整合Mybatis-Plus+Oracle+Mysql

    本教程将深入探讨如何利用SpringBoot整合Mybatis-Plus,同时支持Oracle和MySQL数据库,并通过Nacos作为注册中心,以及使用Swagger2进行API文档的生成。 首先,让我们了解SpringBoot的核心优势。SpringBoot简化了...

    springboot+oracle报表管理系统

    Java企业报表管理系统源码 运行环境: jdk8+oracle+redis+IntelliJ IDEA+maven 项目技术:Springboot+Mybatis-plus+ SpringMvc+Shiro+Redis 项目描述: Springboot+Mybatis-plus+ SpringMvc+Shiro+Redis企业级开发...

    springboot+mybatis+mysql

    SpringBoot与MyBatis的整合使得开发更加便捷。首先,我们需要在项目中引入MyBatis的SpringBoot起步依赖。然后,通过配置文件(application.yml或application.properties)设置数据源、MyBatis的配置路径、Mapper扫描...

    springboot整合mybatis调用oracle存储过程

    本文将深入探讨如何在Spring Boot项目中整合MyBatis,实现调用Oracle存储过程并处理游标返回的数据。 首先,我们需要在Spring Boot项目中引入相关的依赖。在`pom.xml`文件中添加Oracle JDBC驱动(ojdbc66-oracle...

Global site tag (gtag.js) - Google Analytics