SpringBoot+Mybatis+Oracle+Html5入门-D1
开始
今天开始完成如下图所示需求的某系统功能
包括界面(简单完成),数据库,前后端框架
工具选型
开发语言:Java+h5
开发框架:springboot+mybatis
开发工具:idea
数据库:Oracle
安装jdk
在网上下载jkd,一般用jdk8
安装maven
参考Maven3.5安装配置
因为安装的是idea2018,与maven3.6不适配,将会导致各种错误,因此这边下载maven3.5
安装idea
在网上下载idea,笔者认为idea2018版本较稳定。
安装Oracle
在网上下载Oracle,此处笔者安装的是12c版本。
创建项目
打开idea,创建一个springboot项目,具体教程见从零开始配置Springboot+Mybatis+MybatisGenerator
遇到的错误
1 maven仓库配置
参考使用IDEA搭建一个简单的SpringBoot项目——详细过程 中的7-9步
2 Unable to import maven project: See logs for details
参考idea Maven报Unable to import maven project: See logs for details解决方法
3 Maven Plugins 里的插件报错
参考IDEA Maven Plugins 里的插件报错,有红色波浪线
不过有的时候有的插件在上面找不到对应的项,可以看看底部是是否有进程在运行(会有一个进度条),这时候稍作等待,等进度条跑完了就可以了。
4 加入依赖或者plugin标红报错
在右侧点击maven中的刷新,底部是会有进程在运行(会有一个进度条),这时候稍作等待,等进度条跑完了就可以了。
5 Could not autowire注入失败
利用generator自动生成的mapper,不仅要在前面加上@Mapper,还要加上一个@Repository防止注入失败。
参考@Autowired注解注入失败,提示could not autowire的解决办法
连接Oracle数据库
由于Oracle授权问题,Maven不提供Oracle JDBC driver,为了在Maven项目中应用Oracle JDBC driver,必须手动添加到本地仓库。
找到如图文件夹,确认ojdbc6.jar在该文件夹中(因为jdk为8,对应的版本为ojdbc6),清空地址栏输入cmd,在该目录下进入命令控制。
输入mvn命令(前面安装过maven就有mvn命令)
mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11.2.0.1.0 -Dpackaging=jar -Dfile=ojdbc6.jar
配置成功后结果如下图:
我们发现Maven安装的目录下已经包含了ojdbc6驱动包和Oracle数据库的依赖
ojdbc-11.2.0.1.0.pom文件是我们稍后要在pom.xml中要配置的依赖,在pom文件中添加依赖如下:
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>11.2.0.1.0</version>
</dependency>
然后在application.properties中加入以下代码
#加载数据库配置
spring.jpa.database=oracle
spring.datasource.url=jdbc:oracle:thin:@localhost:端口号:数据库名
spring.datasource.username=用户名
spring.datasource.password=密码
spring.datasource.driver-class-name=oracle.jdbc.OracleDriver
#配置映射文件位置
mybatis.mapper-locations=classpath:mapper/*.xml
mybatis.type-aliases-package=com.sunnada.athelete.model
#配置列名表名映射
mybatis.configuration.map-underscore-to-camel-case=true
遇到的错误
笔者在用mybatis-generator自动生成dao和model时遇到Failed to execute goal org.mybatis.generator:mybatis-generator-maven错误(Caused by: org.apache.maven.plugin.MojoExecutionException)。一般来说这边的错误是由于数据库连接错误,检查 【 spring.datasource.url=jdbc:oracle:thin:@localhost:端口号:数据库名 】 这句其中的Oracle数据库url是否正确,参考数据库url的写法
还有就是 【 spring.datasource.driver-class-name=oracle.jdbc.OracleDriver 】有可能因为这句导致错误,检查自己的OracleDriver在哪个路径下,有人是跟我一样,有人是在oracle.jdbc.driver.OracleDriver 下,具体看
展开jdbc以后可以看到自己的OracleDriver在哪里,我是直接在jdbc下
用postman测试ajax连接
不想写前端的友友看过来~
在resource/static里新建一个html文件,写一段js代码如下
<script>
$(function () {
$("#select").click(function () {
ajaxPost("/selectUser",{id:$("#select-userid").val()},function (data) {
alert(data.id);
})
})
})
function ajaxPost(url, data, fun) {
$.ajax({
url: url,
type: "post",
data: data,
dataType: "json",
success: fun,
error: function () {
alert("请求错误");
}
})
}
</script>
根据自己的需求调整,这里不做赘述,主要来看看如何使用postman
打开postman,跳过注册登录,然后操作如下:
这个名就是前面js代码里ajaxpost对应的名字,注意这里不要写错了
总结
第一天就是配置各种环境,做各种基本功,其实笔者调试上述内容已经调试了三天,因为笔者刚刚接触Oracle数据库并不熟练,外加maven连接Oracle数据库与连接MySQL数据库大不相同,网络上的各种资源良莠不齐,希望笔者整理的小小笔记能对大家有所帮助,有问题的话尽管私信评论笔者,这篇博客还有待完善。