这是 一个 基于 Maven 父工程下 搭建的 项目
一. 创建一个 Maven 父工程
二.创建一个 子工程 war 项目 进入正题
第三步.创建好项目之后 配置 指向maven库的 settings.xml 文件 配置库工具
四. 在 父工程下引入 jar 依赖 进行管理
<?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>boot-oracle-mybatis</groupId> <artifactId>boot-parent</artifactId> <packaging>pom</packaging> <version>1.0-SNAPSHOT</version> <modules> <module>bom-test</module> </modules> <!-- 下方 开始 依赖引入 请直接从 parent标签开始剪切 --> <parent> <!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot --> <!-- 引入 springboot的 parent 父依赖--> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-parent</artifactId> <version>2.1.4.RELEASE</version> <relativePath/> </parent> <!-- 管理 jar 版本--> <properties> <boot.alibaba.druid>1.1.10</boot.alibaba.druid> <alibaba.fastjson>1.2.73</alibaba.fastjson> <oracle.version>12.1.0.2.0</oracle.version> <mysql>5.1.6</mysql> <boot.mybatis>1.3.2</boot.mybatis> <lombok>1.18.12</lombok> <log4j>2.12.1</log4j> <alibaba-fastjson.version>1.2.47</alibaba-fastjson.version> <commons.lang3>3.8.1</commons.lang3> </properties> <dependencies> <!-- https://mvnrepository.com/artifact/com.alibaba/druid-spring-boot-starter --> <!-- druid 数据连接池 --> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>${boot.alibaba.druid}</version> </dependency> <!--oracle 用于连接Oracle数据库的依赖 Oracle的数据配置 --> <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc7</artifactId> <version>${oracle.version}</version> </dependency> <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> <!-- mysql数据库 --> <!--<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>${mysql}</version> </dependency>--> <!-- mybatis --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>${boot.mybatis}</version> </dependency> <!-- https://mvnrepository.com/artifact/com.alibaba/fastjson --> <!-- json转换 --> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>${alibaba.fastjson}</version> </dependency> <!-- https://mvnrepository.com/artifact/org.projectlombok/lombok --> <!-- lombok --> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>${lombok}</version> </dependency> <!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-core --> <!-- 日志依赖--> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>${log4j}</version> </dependency> <!-- 阿里巴巴 JSON的格式 模型 --> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>${alibaba-fastjson.version}</version> </dependency> <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 --> <!-- 工具类 --> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>${commons.lang3}</version> </dependency> </dependencies> <!-- 上方 结束 依赖引入 剪切截止到 dependencies标签 --> </project>
oracle依赖 不宜下载 请使用 我的 oracle 依赖压缩包
链接:https://pan.baidu.com/s/13y49Vx5gcEVfILIF86MyTg
提取码:3306
复制这段内容后打开百度网盘手机App,操作更方便哦
解压到 maven 库 中的 com/下
以来下载完毕之后 请使用
<dependencyManagement>标签 包住<dependencies> 标签内的所有依赖
五. 在子项目中 pom文件中引入 依赖
<dependencies> <!-- https://mvnrepository.com/artifact/com.alibaba/druid-spring-boot-starter --> <!-- druid 数据连接池 --> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> </dependency> <!--oracle 用于连接Oracle数据库的依赖 Oracle的数据配置 --> <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc7</artifactId> </dependency> <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> <!-- mysql数据库 --> <!--<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency>--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- mybatis --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> </dependency> <!-- https://mvnrepository.com/artifact/com.alibaba/fastjson --> <!-- json转换 --> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> </dependency> <!-- https://mvnrepository.com/artifact/org.projectlombok/lombok --> <!-- lombok --> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> </dependency> <!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-core --> <!-- 日志依赖--> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> </dependency> <!-- 阿里巴巴 JSON的格式 模型 --> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> </dependency> <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 --> <!-- 工具类 --> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> </dependency> </dependencies>
配置yml文件
名称为 application.yml
#设置端口 server: port: 9001 #设置spring名称 spring: application: name: boot-test #dev 为 开发环境 profiles: active: dev #配置数据源 datasource: # oracle 的 type: com.alibaba.druid.pool.DruidDataSource driver-class-name: oracle.jdbc.driver.OracleDriver url: jdbc:oracle:thin:@localhost:1521:ORCL #这里是自己的oracle数据库 username: PCQSON #这里是自己的oracle数据库账号 PCQSON 是我自己的!! password: PCQSON #这里是自己的oracle数据库密码 PCQSON 是我自己的!! # mysql 的 # type: com.alibaba.druid.pool.DruidDataSource # driver-class-name: com.mysql.jdbc.Driver # #这里是自己的mysql数据库 # url: jdbc:mysql://127.0.0.1:3306/jlpcq?useUnicode=true&characterEncoding=utf8 # username: root #这里是自己的mysql数据库账号 root 是我自己的!! # password: 97972171 #这里是自己的mysql数据库账号 97972171 是我自己的!! mybatis: #配置批量扫描 mapper-locations: classpath*:mapper/*Mapper.xml #配置 打印 sql configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
六.创建 文件 命名为 mapper
创建包 com-->pcq-->test
创建启动类
我命名为 BootTestApplication
package com.pcq.test; import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication //自动装配并表示这是主启动类 @MapperScan("com.pcq.test.*.mapper") //批量扫描 com.pcq.test.*.mapper 包下的所有mapper public class BootTestApplication { public static void main(String[] args) { SpringApplication.run(BootTestApplication.class,args); } }
创建 实体类 并使用 lombok
package com.pcq.test.entity; import lombok.*; import java.io.Serializable; @Data @NoArgsConstructor @AllArgsConstructor @ToString @EqualsAndHashCode(callSuper = false) public class UserInfo implements Serializable { private Integer id; private String userName; private String passWord; }
创建mapper 数据访问层
package com.pcq.test.mapper; import com.pcq.test.entity.UserInfo; import java.util.List; public interface UserInfoMapper { /** * 查询 用户 测试 * * @return */ List<UserInfo> selectUserInfoList(); }
<?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.pcq.boot.mapper.UserInfoMapper"> <sql id="userInfoColumn">ID,USERNAME,PASSWORD</sql> <select id="selectUserInfoList" resultType="com.pcq.boot.entity.UserInfo"> SELECT <include refid="userInfoColumn"/> FROM USER_INFO </select> </mapper>
创建 service 业务逻辑层
package com.pcq.test.service; import com.pcq.test.entity.UserInfo; import java.util.List; public interface UserInfoService { /** * 查询 用户 测试 * * @return */ List<UserInfo> selectUserInfoList(); }
package com.pcq.test.service.impl; import com.pcq.test.entity.UserInfo; import com.pcq.test.mapper.UserInfoMapper; import com.pcq.test.service.UserInfoService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; @Service @Slf4j public class UserInfoServiceImpl implements UserInfoService { @Autowired private UserInfoMapper userInfoMapper; @Override public List<UserInfo> selectUserInfoList() { log.info("进入了 Service层的 selectUserInfoList()方法"); return userInfoMapper.selectUserInfoList(); } }
创建 controller 控制层
package com.pcq.test.controller; import com.pcq.test.entity.UserInfo; import com.pcq.test.service.UserInfoService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.List; @RestController @Slf4j public class UserInfoController { @Autowired private UserInfoService userInfoService; @Value("${server.port}") private String ports; @RequestMapping("/selectUserInfoList") public List<UserInfo> selectUserInfoList() { log.info("当前服务端口为 ===>{}", ports); List<UserInfo> userInfos = null; try { userInfos = userInfoService.selectUserInfoList(); } catch (Exception e) { log.info("当前/selectUserInfoList方法异常 ===>{}", e); } return userInfos; } }
启动服务测试接口
我重新创建一下 demo 包 把这些 类包放入 demo 模块包下
重新启动并执行!
启动成功测试接口 http://127.0.0.1:9001/selectUserInfoList
(如果使用 mysql 的 话 可以直接注释掉 oracle的 以来 和 配置文件 然后打开 mysql的 依赖和配置)
搭建完毕 !!!