前情
从毕业到现在很多年没碰Java web开发,以前熟悉的技术现在也淡忘了。如今想重新拾起,却发现并没有自己刚开始想的那么简单。在跟着网上案例搭建SSH项目的过程中,淡忘的东西慢慢的变得清晰,而且也让我从另外一个角度来解读以前似懂非懂的技术。
写下这篇博文,一则是记录我搭建项目时犯的各种错误及解决方案,为自己提供知识储备。二则,在搭建项目的过程中,通过网络查阅了许多前人的经验之贴,算是为后来人留下一个参照。如果能让其他人从帖子中收获到一丝一毫,都是莫大的欣喜。
项目环境
MyEclipse6.5+Tomcat6.0.29+Struts2.3.20+Hibernate3.2.1+spring-framework-3.2.3.RELEASE
项目参考的博客:http://blog.csdn.net/yeohcooller/article/details/9316923
版本问题
因为好几年没有触碰java web,也不知道搭建SSH的各技术框架的版本现在已经发展到什么程度。我就考虑如果要我搭建一个SSH项目该什么样的技术,什么样的版本。工作了几年以后,当然了解技术版本并非越新越好,版本越新出现未知问题的可能性就越大。所以,我最终在诸多SSH项目示例中选择了上面的这份。
关于这些技术的版本,我也有过疑惑,不知道他们怎么进行搭配,如何选择以及为什么用XX版本。在网上找过不少资料后,终于明白了,兼容问题。不同的版本对jdk的支持不一样,调用的方法发生变化,这都是很正常的事情。因此,每一次软件版本升级都是一次冒险。需要慎重!
MyEclipse
1、快捷键 Alt+/ 无效。
网上找了些资料后,发现有可能是:
a、其他软件的热键冲突。
b、参考http://www.apkbus.com/android-104663-1-1.html
2、快速创建java动态项目,并配置好tomcat应用服务器
a、创建java动态项目
1)File ==> New ==> other
在输入框中搜索 Dynamic Web Project,如果没有,则单击下方的选择框 Show All Wizards。取好项目名称,然后finish。也可以Next一步步执行,看看动态项目到底配置了些什么内容。
b、创建应用Server
1) File ==> New ==> other
在输入框中搜索 Server,如果没有,则单击下方的选择框 Show All Wizards。
2)选择Server需要的tomcat版本
3)配置tomcat以及JRE
4) 配置动态项目到Server
3、java动态项目与普通java web项目的差别
a、他们配置应用服务器的方法不相同,个人觉得java动态项目的应用服务器更为便捷,出错的几率更低。
Tomcat
1、目前,Myeclipse6.5的tomcat配置中只有tomcat6.X的配置。如果要使用tomcat7,那么在配置的时候就必须要注意了。在中配置完成后,还需要再配置一个地方。(非java动态项目)
打开window>>Preferences>>MyEclipse Enterprise Workbench>>Servers>>Tomcat>>Tomcat 6.X>>Paths树形目录,在右边Prepend to classpath处点“Add JAR/ZIP”按钮,添加JAR包“D:\Tomcat7\bin\tomcat-juli.jar”
参考:http://blog.163.com/mingtian_wangyajun/blog/static/202957052201292702519324/
2、当我们访问项目的时候,即访问Tomcat服务器。而访问Tomcat服务器时,它会首先阅读web.xml,然后根据web.xml中的配置,进行下步操作。
3、我们在启动tomcat服务器时,tomcat服务器会加载整个项目到webapps目录中。这时,加载web.xml以及struts.xml等配置文件时,很容易出现问题,一般都是路径或者配置文件中配置有误。
Struts2
1、我把struts.xml放在src下,web.xml没有相关配置,在启动tomcat时报找不到struts.xml文件异常,如下:
网上找到的资料都说struts.xml是放在src下,示例项目中web.xml也没有相关配置。直到后来问公司同事,在web.xml中增加了这行配置(init-param),才解决这个问题。不过,为什么会出现这个问题,我还是没有弄明白,希望有高手可以为我解惑。
重点:struts.xm位于src下是为了编译后能找到struts配置文件,确保其在WEB-INF下才是根本
<filter> <filter-name>SSH</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> <init-param> <param-name>config</param-name> <param-value>struts-default.xml,../config/struts.xml</param-value> </init-param> </filter>
1、eclipse中配置struts2出现There is no Action mapped for namespace [/] and action name [Login] associated wi
参考资料:http://blog.csdn.net/liu578182160/article/details/17266879
struts2中改变struts.xml默认路径 或可能遇到的问题
参考资料:http://my.oschina.net/jawayjiang/blog/88077
相关推荐
云的学习笔记-云的学习笔记系统-云的学习笔记系统源码-云的学习笔记管理系统-云的学习笔记管理系统java代码-云的学习笔记系统设计与实现-基于ssm的云的学习笔记系统-基于Web的云的学习笔记系统设计与实现-云的学习...
总结来说,"Eclipse搭建SSH框架开发学习笔记"涵盖了从基础环境准备(JDK安装与环境变量配置)、开发工具(Eclipse与Tomcat配置)、数据库(MySQL服务器搭建)到系统服务管理等多个环节,为初学者提供了详尽的步骤...
ssh学习笔记1 ssh学习笔记1 ssh学习笔记1 ssh学习笔记1 ssh学习笔记1 ssh学习笔记1 ssh学习笔记1
以上只是Java学习笔记的部分概览,具体的学习过程还需深入每个知识点,通过实践项目巩固理解。在学习过程中,遇到问题时,可以查阅这些笔记,或者寻求更深入的资源,如官方文档和在线教程,不断提升自己的编程能力。
云的学习笔记-云的学习笔记系统-云的学习笔记系统源码-云的学习笔记管理系统-云的学习笔记管理系统java代码-云的学习笔记系统设计与实现-基于ssm的云的学习笔记系统-基于Web的云的学习笔记系统设计与实现-云的学习...
2024届求职-C++后端-学习笔记-操作系统、计算机网络、C++语言+算法 2024届求职-C++后端-学习笔记-操作系统、计算机网络、C++语言+算法 2024届求职-C++后端-学习笔记-操作系统、计算机网络、C++语言+算法 2024届求职-...
本压缩包“SSH学习笔记--整理.rar”包含了一份精心整理的SSH学习资源,对于想要深入理解SSH的初学者或者开发者来说,是一份非常有价值的资料。 首先,我们来看“马士兵Struts2学习笔记2011.doc”。Struts2是一个...
Android学习笔记-SQLite介绍-以及使用Sqlite-进行数据库的创建-完成数据.pdf
Linux课程学习笔记 -韩顺平 包含c/c++/python/java 专项 面试题 PDF PPT 笔记 面试题 (百度网盘链接 永久有效) 自学,做笔记,复习可用
学习笔记HTML-css-JS.zip学习笔记HTML-css-JS.zip学习笔记HTML-css-JS.zip 学习笔记HTML-css-JS.zip学习笔记HTML-css-JS.zip学习笔记HTML-css-JS.zip 学习笔记HTML-css-JS.zip学习笔记HTML-css-JS.zip学习笔记...
Python学习笔记--皮大庆
大数据系统学习笔记-0002 - Hadoop集群搭建 - 资源包 资源列表: hadoop-2.7.4.tar.gz jdk-8u301-linux-x64.tar.gz zookeeper-3.4.10.tar.gz
SSH学习笔记 SSH学习笔记 SSH学习笔记 SSH学习笔记 SSH学习笔记 SSH学习笔记 SSH学习笔记 SSH学习笔记 SSH学习笔记 SSH学习笔记 SSH学习笔记 SSH学习笔记 SSH学习笔记
Oracle Apex 5.1.4的环境搭建文档,参考了官方的文档。