IDEA构建spring项目
这两天使用IDEA从零构建一个spring项目,之所以说从零,是因为,我这个小白呢,之前IDEA没有碰过,spring也只是知道个名字。
因为没有文档,遇到了好些坑,把这些记录一下吧。
- 构建的第一步,观察到了项目有个pom.xml,估计他是使用的maven进行构建的,然后,我就利用maven import了,这里注意的是:
把maven的源修改一下,否则从中央库下载,速度慢到哭。 - 利用maven下载好大部分JAR包,但是仍然有一些没有下载,去maven repository去找也没有(说明是私有库被),然后我就问了一下后面的韶杰大神,他说,的确是私有库,
然后让达晟把包给我,我以为直接引,用jar导入就行(又是坑。。),韶杰又提醒我,使用pom.xml导入私有库(去百度),然后导入成功了 - 接着就先弄tomcat开始跑被,我也不知道是不是坑,就下了个8,(尽管这个没遇到坑),跑出来,出现了一个卡一天的错误,
那就是classChangeError:impl..什么,这个错误,经过百度,Google,我认定就是传递依赖,JAR包冲突的问题。
然后我下了一个denpendency helper插件,一个一个排查(一开始有好多冲突哦),mvn dependency:tree > tree.txt 去查
最后各个工具真的都没有报错了,但是仍然还是 classChangeError:impl..什么,我就又问了一下韶杰,韶杰大神说是一个quarz的包1.6版本不需要。
我立刻把这个依赖,去除,然后就能跑了。 真是。。 - 项目跑起来了,就开始连数据库被,我一开始以为这得连远程库吧(其实我蒙蔽。。当时也没个思路),然后名扬告诉我在本地建个库,跑一下
达晟给了我一堆数据。 - 然后,我就又开始无脑了,我下了个8.0的mysql(后来才知道,看到dao层用的是5.0的驱动。。),这就又是个坑被。。
其实这个不应该是是坑的,如果一开始我就看一下pom.xml,就好了。 - 我也不想重新下,因为大家都知道,mysql不同版本下下来,在windows上会有各种各样奇葩问题,事实证明,我这个判断还是正确的。
然后子平大神来了。(哈哈哈,他来了他来了),子平百度了一番,主要修改两个地方:
一个是pom.xml中的jdbc的版本从5->8
一个是dao层的这个 com.jdbc.driver->com.cj.jdbc.driver
这是第一遍修改。。没有成功。
然后,我们又修改 dao层的下面 com.jdbc.driver->com.cj.jdbc.driver 这句加上了 时区同步的语句(网上人说的)
又没成功。。后来又在 这句前加上了 jdbc。。成功。。我服。
还有就是全局寻找使用vs code是真的好用,vs code 界面也挺好的,真不错。(子平告诉于我)
这其中,还有一个地方到现在也没明白的就是,项目有两个,dpdb.properties还有一个是db什么properties,到底这个连的哪个啊。。(反正我是都设了一遍)
- 数据库连上了之后,IDEA后台就没有报错信息了, 但是index.html,一堆图片没有显示出来,
看一下/image/是请求不到资源的。
结合达晟之前告诉我修改的两个地方,
把存在于本地计算机的实际路径映射到项目的虚拟路径上去。修改的地方,分别是:FILEPATHIMG(直接就是物理路径)
还有就是 image/的maping,这里注意,需要file:///进行转义,这是子平大神操作的,要是我。。估计又是个卡人的坑。。。 - 把图片链接上后,看一下image/**,果然是能够访问到了,但是主页还是有404,
是这个资源没有找到 /web/navigation/,然后我们用vs code全局搜了一下,发现这个@controller是有的,我当时就很疑惑了,这应该没问题啊。
子平大神立刻断定 :
出现这个问题的原因是: 我访问的路径是localhost:8080/项目名/,但是应该访问的路径名是localhost:8080/
我当时还是有些许的不认同。。然而现实啪啪打脸.
子平断定了问题后,修改tomcat中的deployment,将 /项目名 改为 / (这一步就是修改tomcat访问路径的)
然后就能访问了。
至此
项目跑起来。。难死我这个小白了。
总结一下呢:
- 就是遇到问题,首先别慌,冷静的思考一下,不要着急动手,分析一下问题 ,不会的原理一定要去看一看在开始。这是最为重要的
- 不会就问。。(比如quarz这个坑)
- 应该根据项目下载对应版本
IDEA构建spring项目的更多相关文章
- 使用java配置来构建spring项目
java配置是Spring4.x推荐的配置方式,可以完全代替xml配置,java配置是通过@Configuration和@Bean来实现的.@Configuration声明当前类是一个配置类,相当于S ...
- Maven的学习资料收集--(七) 构建Spring项目
在这里,使用Maven构建一个Spring项目 构建单独项目的话,其实都差不多 1. 新建一个Web项目 参考之前的博客 2.修改 pom.xml,添加Spring依赖 <project xml ...
- maven学习4 使用Maven构建Spring项目
1. 新建一个Web项目 参考之前的博客 2.修改 pom.xml,添加Spring依赖 <project xmlns="http://maven.apache.org/POM/4.0 ...
- JAVA WEB快速入门之通过一个简单的Spring项目了解Spring的核心(AOP、IOC)
接上篇<JAVA WEB快速入门之从编写一个JSP WEB网站了解JSP WEB网站的基本结构.调试.部署>,通过一个简单的JSP WEB网站了解了JAVA WEB相关的知识,比如:Ser ...
- springboot学习之构建简单项目搭建
概述 相信对于Java开发者而言,spring和springMvc两个框架一定不陌生,这两个框架需要我们手动配置的地方非常多,各种的xml文件,properties文件,构建一个项目还是挺复杂的,在这 ...
- Maven学习- 使用Maven构建Web项目
从网上查了一些资料,才算明白(也就是怎么操作吧),怎么使用Maven构建一个Web项目,找到一篇文档,主要都是从这里学到的: 下载地址:使用Eclipse构建Maven的Web项目.docx 现自己在 ...
- Eclipse Maven构建Spring MVC项目
工作中项目开发使用Maven管理项目的构建.打包.编译,框架採用的是Spring MVC框架,而且实现了多模块.多项目的管理.自己也简单的參与了架构的设计.对于刚開始学习的人来说,使用Maven构建项 ...
- 用Gradle构建Spring Boot项目
相比起Maven的XML配置方式,Gradle提供了一套简明的DSL用于构建Java项目,使我们就像编写程序一样编写项目构建脚本.本文将从无到有创建一个用Gradle构建的Spring Boot项目, ...
- eclipse环境下基于已构建struts2项目整合spring+hibernate
本文是基于已构建的struts2项目基础上整合 spring+hibernate,若读者还不熟悉struts2项目,请先阅读 eclipse环境下基于tomcat-7.0.82构建struts2项目 ...
随机推荐
- MVC过滤器:过滤器执行顺序
如果某个Action过滤器运用了多种过滤器,那么过滤器的执行顺序是如何呢? 规则一:不同类型的过滤器有一个先后顺序 即执行顺序是:授权过滤器->动作过滤器->结果过滤器->异常过滤器 ...
- Python小练习:StringIO和BytesIO读写操作的小思考
from io import StringIO; f = StringIO(); f.write('Hello World'); s = f.readline(); print s; 上面这种方法&q ...
- MyBatis的事物管理和缓存
MyBatis的事物 事物的概念 在Java语言数据库框架中,数据库的事务管理都是非常重要的. 每个业务逻辑都是由一系列数据库访问完成的,这些访问可能修改多条数据记录,这一系列修改应该是一个整体,绝对 ...
- 简单学习HTML
最近突然就对静态页面很有兴趣,主要是看到几个比较酷炫的页面效果,也想自己做一下,但是我的前端页面就是菜鸡,还停留在html+css+jquery的简单使用上,而且还忘记得差不多了! 而且我感觉前端比后 ...
- 剑指offer 27:二叉搜索树与双向链表
题目描述 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表.要求不能创建任何新的结点,只能调整树中结点指针的指向. 解题思路 采用中序遍历遍历二叉树,利用二叉排序树的特性,顺次连接节点,形成 ...
- 简单的jquery表单验证+添加+删除+全选/反选
//布局 <body> <h4><a href="#">首页</a>><a href="#"> ...
- 解决vue修改路由的查询字符串(query)url不改变,页面不刷新问题
我个人猜测可能是对路由的数据检测深度不够吧,单纯修改query里面的属性是不能触发数据驱动的,因此要直接给query赋值新的对象才能驱动数据更新,做法如下 第一种 var query=JSON.par ...
- 小程序开发技术总结(wepy)
创建wepy项目 全局安装或更新WePY命令行工具:npm install wepy-cli -g 在开发目录中生成Demo开发项目:wepy new myproject , 1.7.0之后的版本使用 ...
- fuse3 编译相关简要记录 与 fuse3 系统调优;
下面是在使用fuse3 编译bbfs 过程中一些参数,用于备忘: FUSE_CFLAGS="-I/usr/local/include/fuse3" FUSE_LIBS=" ...
- 初级模拟电路:3-8 BJT数据规格书(直流部分)
回到目录 本小节我们以2N4123通用型BJT硅基晶体管为例,来介绍如何阅读BJT的数据规格书,点此链接可以阅读和下载2N4123的数据规格书. 1. 总体性能 打开datasheet后,首先看标题: ...