毕业设计需要用的springmvc,之前上课有学过一些。一开始在创建动态网站项目里面,问题集中在springmvc中。后面因为要和网站要和虚拟机的hadoop集群连接,因此maven项目会更方便(主要是非maven项目里面不太会搞)。然后创建maven项目的webapp中出现了不少问题。最后发现都是很多菜鸟问题,总结回顾一下,也给大家提醒。
关于maven项目中构建springmvc的问题
- 安装完maven后,需要在eclipse中配置。新的工作空间重新设置。检查配置文件地址与本地仓库地址(我就是setting.xml中的本地仓库地址多了双引号,导致各种运行失败)
- 创建maven项目时 框架选择 maven-archetype-webapp。而非j2ee(我是不会用这个)
- maven创建项目失败后,可以考虑切换工作空间或者重装maven(在其他方法无效的时候)
- 需要项目右键选择属性,检查对应的jdk版本
- 项目在tomcat上运行,初始化出错的时候。先检查上述问题是否出现,再检查pom.xml与springmvc的配置文件是否出错,其次检查依赖包是否有缺失,版本是否有出错。最后在检查是否是代码出错。(我寻找了一天配置文件与代码的错误,最后发现是maven没有设置)
关于springmvc的一些问题
- 页面跳转或请求静态资源时,要注意路径问题。springmvc中是从webapp中寻找的,并且有相对路径与绝对路径之分,具体区别限于本人水平有限,难以阐述。可以考虑使用如下代码来定位,具体理论也不太懂,大家自行搜索吧
${pageContext.request.contextPath }
- 前端知识很重要!限于本人前端水平十分浅薄,因此开发过程中大部分都是前端的问题。(本身网站业务逻辑也较为简单)。springmvc的前端与其他的前端好像没有太大区别。主要就是通过拦截器拦截url请求来实现请求。具体的还要用的ajax与json
- 接上一条的ajax与json。一开始ajax方法怎样都实现不了,后面找了半天才发现是jquery库的问题。引用的本地的jquery库无效,个人感觉还是路径问题。但是搞了半天也没搞好,最后直接使用在线库,方便快捷。如下
<script type="text/javascript" src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
- 静态资源放行需要单独配置。配置在核心控制器DispatcherServlet的xml文件中。例如
<mvc:annotation-driven/>
<mvc:resources mapping="/css/**" location="/WEB-INF/css/" />
总结:
目前前期开发过程中的主要时间都花在搭建配置项目和前端上面,业务逻辑部分还未真正开展。但还是出现了很多“简单”错误。后续要将springmvc与hadoop集群进行连接。