springboot+mybatis+oracle

             最近自学了springboot,简单的玩了下,写了个简单的demo,供初学的朋友参考有不正确的地方还请指出。

 1.创建项目,开发工具是IDEA,File->New Project(低版本的idea是没有这个选项的。15版以后就有了。)




然后finish就好了。



2.配置好Maven。

File->Settings



3.数据库配置

application.properties文件里面加上你的数据库配置。

application.properties

spring.datasource.primary.url=jdbc:oracle:thin:@ip:1521/服务名
spring.datasource.primary.username=
spring.datasource.primary.password=
spring.datasource.primary.driver-class-name=oracle.jdbc.driver.OracleDriver
spring.datasource.primary.min-idle=5
spring.datasource.primary.max-active= 10
spring.datasource.primary.max-idle=10

4.配置pom.xml文件

pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
   <modelVersion>4.0.0</modelVersion>

   <groupId>com.dql</groupId>
   <artifactId>springboot-mybatis-oracle-demo</artifactId>
   <version>0.0.1-SNAPSHOT</version>
   <packaging>war</packaging>

   <name>springboot-mybatis-oracle-demo</name>
   <description>springboot-mybatis-oracle-demo</description>

   <parent>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-parent</artifactId>
      <version>1.5.6.RELEASE</version>
      <relativePath/> <!-- lookup parent from repository -->
   </parent>

   <properties>
      <commons-lang3.version>3.3.2</commons-lang3.version>
      <commons-io.version>1.3.2</commons-io.version>
      <ojdbc6.version>11.2.0.2.0</ojdbc6.version>
      <mail.version>1.4</mail.version>
      <java.version>1.7</java.version>
      <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
   </properties>

   <dependencies>
      <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-test</artifactId>
         <scope>test</scope>
      </dependency>

      <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter</artifactId>
      </dependency>

      <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-jdbc</artifactId>
      </dependency>

      <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-web</artifactId>
      </dependency>

      <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-aop</artifactId>
      </dependency>

      <dependency>
         <groupId>org.apache.commons</groupId>
         <artifactId>commons-lang3</artifactId>
         <version>${commons-lang3.version}</version>
      </dependency>
      <dependency>
         <groupId>org.apache.commons</groupId>
         <artifactId>commons-io</artifactId>
         <version>${commons-io.version}</version>
      </dependency>
      <!-- oracle -->
      <dependency>
         <groupId>com.oracle</groupId>
         <artifactId>ojdbc6</artifactId>
         <version>${ojdbc6.version}</version>
      </dependency>
      <dependency>
         <groupId>org.mybatis.spring.boot</groupId>
         <artifactId>mybatis-spring-boot-starter</artifactId>
         <version>1.3.0</version>
      </dependency>
   </dependencies>

   <build>
      <plugins>
         <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
         </plugin>
      </plugins>
   </build>


</project>

5.建立对应的目录结构,根据自己的项目规范来。



6.创建读取数据库配置Java文件DataSourceConfit.java

DataSourceConfig.java
 
@Configuration
@MapperScan(basePackages = "com.dql.mapper", sqlSessionTemplateRef = "primarySqlSessionTemplate")

@EnableTransactionManagement
public class DataSourceConfig {

    @Bean(name = "primaryDataSource")
    @ConfigurationProperties(prefix = "spring.datasource.primary")
    public javax.sql.DataSource primaryDataSource() {
        return DataSourceBuilder.create().build();
    }

    @Bean(name = "primarySqlSessionFactory")
    public SqlSessionFactory primarySqlSessionFactory(@Qualifier("primaryDataSource") javax.sql.DataSource dataSource)
            throws Exception {
        SqlSessionFactoryBean bean = new SqlSessionFactoryBean();
        bean.setDataSource(dataSource);
        bean.setTypeAliasesPackage("com.dql.domain");//扫描entity包 使用别名
        org.apache.ibatis.session.Configuration configuration = new org.apache.ibatis.session.Configuration();
        configuration.setUseGeneratedKeys(true);//使用jdbcgetGeneratedKeys获取数据库自增主键值
        configuration.setUseColumnLabel(true);//使用列别名替换列名
        configuration.setMapUnderscoreToCamelCase(true);//-下划线字段名转换骆驼属性名
        configuration.setCallSettersOnNulls(true);//解决空值映射问题
        bean.setConfiguration(configuration);
        bean.setFailFast(true);
        bean.setMapperLocations(
                new PathMatchingResourcePatternResolver().getResources("classpath:mybatis/mapper/*.xml"));
        return bean.getObject();
    }

    @Bean(name = "primaryTransactionManager")
    public DataSourceTransactionManager primaryTransactionManager(
            @Qualifier("primaryDataSource") javax.sql.DataSource dataSource) {
        return new DataSourceTransactionManager(dataSource);
    }

    @Bean(name = "primarySqlSessionTemplate")
    public SqlSessionTemplate primarySqlSessionTemplate(
            @Qualifier("primarySqlSessionFactory") SqlSessionFactory sqlSessionFactory) throws Exception {
        return new SqlSessionTemplate(sqlSessionFactory);
    }

}


7.其他的就是增删改查了。

SysUserController.java

@RestController
public class SysUserController {

    @Autowired
    private SysUserService sysUserService;

    @RequestMapping("/findAdminUser")
    public SysUserVo findAdminUser(){
        return sysUserService.findAdminUser();
    }
}

SysUserVo.java

public class SysUserVo implements Serializable{
   private Long id;                 //ID
   private String userName;         //用户姓名
   private String loginName;         //登录名
   private String password;         //登陆密码
   private String phone;            //手机
   private String email;            //邮箱
   private String userStatus;       //用户状态
   private Long createUser;      //创建人
   private Date createTime;         //创建时间
   private Long updateUser;      //更新人
   private Date updateTime;         //更新时间
   public Long getId() {
      return id;
   }

   public void setId(Long id) {
      this.id = id;
   }

   public String getUserName() {
      return userName;
   }

   public void setUserName(String userName) {
      this.userName = userName;
   }

   public String getLoginName() {
      return loginName;
   }

   public void setLoginName(String loginName) {
      this.loginName = loginName;
   }

   public String getPassword() {
      return password;
   }

   public void setPassword(String password) {
      this.password = password;
   }

   public String getPhone() {
      return phone;
   }

   public void setPhone(String phone) {
      this.phone = phone;
   }

   public String getEmail() {
      return email;
   }

   public void setEmail(String email) {
      this.email = email;
   }

   public String getUserStatus() {
      return userStatus;
   }

   public void setUserStatus(String userStatus) {
      this.userStatus = userStatus;
   }

   public Long getCreateUser() {
      return createUser;
   }

   public void setCreateUser(Long createUser) {
      this.createUser = createUser;
   }

   public Date getCreateTime() {
      return createTime;
   }

   public void setCreateTime(Date createTime) {
      this.createTime = createTime;
   }

   public Long getUpdateUser() {
      return updateUser;
   }

   public void setUpdateUser(Long updateUser) {
      this.updateUser = updateUser;
   }

   public Date getUpdateTime() {
      return updateTime;
   }

   public void setUpdateTime(Date updateTime) {
      this.updateTime = updateTime;
   }
}

SysUserMapper.java

@Mapper
public interface SysUserMapper {

    SysUserVo findAdminUser();
}

SpringbootMybatisOracleDemoApplication.java

@SpringBootApplication
public class SpringbootMybatisOracleDemoApplication {

   public static void main(String[] args) {
      SpringApplication.run(SpringbootMybatisOracleDemoApplication.class, args);
   }
}

SysUserMapper.xml

<?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">
<mapper namespace="com.dql.mapper.SysUserMapper">
   <select id="findAdminUser" resultType="com.dql.domain.vo.SysUserVo">
      SELECT * FROM
      T_SYS_USER su
      WHERE
      su.login_name = 'admin'
   </select>
   
</mapper>

end





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值