我实习主要所用到的即老年SSH框架,网上有非常多的资料,我就根据我所学的整理一下;
初学者,还有太多的东西需要学,见谅;
–实习总结
|
|
|–基础(实际为Java Web所需要知道的一切,一下仅列出几项)
| |
| |–前端基础:http://www.w3school.com.cn/
| | (重点:form表单post/get方法,js,jquery,ajax,熟悉前后端请求响应流程)
| |
| |–jsp: http://www.cnblogs.com/xdp-gacl/tag/JavaWeb学习总结/default.html?page=3
| | (还是要熟悉前后端请求响应流程,基本的requst,response/标签/bean的理解等)
| |
| |–web.xml : http://blog.csdn.net/believejava/article/details/43229361
| 对于项目来说,web.xml文件的理解很重要
|
|
|
|
|–环境(Win+Myeclipse+Tomcat+Oracle+SVN):对一个大型项目,论工具的重要性…
| |
| |–配置: 自己搞得话可借鉴:https://zhuanlan.zhihu.com/p/20098083
| | 当然,公司一般都有自己环境配置的文档
| |
| |–导入项目:import; 编译:先clean在build等
| | 注:开启自动编译:即Project下Build Automatically,
| | 可以在每次修改文件并保存后很快完成编译,并在界面看到
| |
| |–启动:
| | Web项目运行结果的界面当然就是浏览器里可看到的啦,把服务器Tomcat端口设为8080
| | 或其他;在URL里输入localhost:8080 就是你 网站设置的主要了
| |
| |–SVN:http://blog.csdn.net/u014028835/article/details/24205623
| 原理以及checkout,update,commit,show log,get lock,clean等操作
|
|
|–框架(SSH + MVC模型各层的理解):我一路看着博客下来的 @永远的晴天
| |
| |–Struts:http://blog.csdn.net/lovesummerforever/article/details/18942381
| | 重点Action和 .xml文件 的理解
| |
| |–Hibernate: http://blog.csdn.net/lovesummerforever/article/details/19169779
| | 原理:持久化层,将实体对象与关系数据库进行映射
| | (在实习中更多的直接用到 DAO进行增删查改,当然还有Jquery sql,以及对应.xml文件)
| |
| |–Spring:http://blog.csdn.net/lovesummerforever/article/details/22500339
| | 原理:用容器来帮助我们管理对象
|
|
|–工具的使用
|
|–搜索(Myeclipse Ctrl+F,Ctrl+H,Ctrl+Shift+R等)
|
|–追页面的一些技巧,这个主要是熟悉框架,积累经验
|
|–Debug(Myeclipse->java,plsql->存储过程,chrome/IE->js)
| : http://www.cnblogs.com/zfyouxi/p/5326383.html
| : http://blog.csdn.net/LeonWang_Fly/article/details/50781822
| : http://blog.csdn.net/teresa502/article/details/5087241
|
|–反编译: http://blog.csdn.net/qiaqia609/article/details/9365987
| 对于封装好的框架,想知道简单的配置下面的原理,Java反编译是利器
备注:
①不同框架的.xml文件是有区别的
②一个Hibernate的实例:
在一次需求中,碰到要给一个表增加一个字段,利用该字段来控制某列的数据显示还是不显示(flag),
在数据库中增加该字段,并且在源代码BO(对应实体类)中也增加该字段,以及对于的get,set方法;但是没效果…
我当时的原因是忘记在相关 Tablename.hbm…xml 文件里建立映射,→_→…
③Spring:
在项目中经常看到在某个类前有@Service(Classname);这种标志,其实这就是在告诉编译器,该类由Spring管理;
可以看到类似 getBean()的创建方法
④追页面的实例:(仅个人实践)
Web 所要做的结果 最终一般要由浏览器界面显示出来,所以接到一个任务后,看懂需求,知道要改哪个界面很重要;
一般来说,对于IE,可以右键->属性看到页面url;但是ssh框架的话,有的页面可能会显示 以.do为结尾的路径,,,
怎么办? 这时候就是考验基础功底的时候了,,,原理不多解释; 比如 Customer.do;
此时可以Ctrl+H 全局搜 内容含有CustomerAction的.xml配置文件;底下可能有不同的分支,,,走哪条?
此时在Ctrl+Shift+R搜CustomerAction.java, 打开文件搜,按url 后面的参数查找到对应的路径标识
再已此路径标识 走.xml文件对应的分支
对于chrome,没有“右键->属性”这个操作,可以“右键->检查”打开后台,点击“Network”,清屏;
然后点开或刷新页面,这时Netwoek里就会出现响应的 请求界面 的 url
⑤经常要注意懂不同浏览器的兼容问题
⑥上面没有提及,但是实际上 对数据库的操作非常频繁,要有一定的sql基础
⑦关于模块化开发,并不像想象中随意改动代码,有时候配置一下就出来的
⑦关于未来的发展: https://zhuanlan.zhihu.com/p/27771694
其他扩展: http://blog.jobbole.com/100349/
总结:
不得已,从C++转到Java web,
我校计算机系并无Web课程,软件工程倒是开设了相关课程…
我之前只做过一个用来搞笑的小网站,连基本的增删查改都不全…
(其实最惨的是,我的原配电脑太老了,带不动这个项目,加了4G内存才勉强带起来,
然而有时候还是会卡到怀疑人生,→_→)
ssh虽然老了,但是基本的框架基础对我们这种小白很有用…
一开始接触大项目,什么都不会,但是我坚持下来了呀!
现在虽然懂一些原理,但并不是真正的懂了,要在不断的实践中积累经验;
其实每一个方向要做好,都要学习很多,贵在坚持.
更新:http://www.cnblogs.com/Qian123/p/5339164.html
一个比较清晰的MVC架构,只不过我的项目封装得更强而已,,,
比如CRUD操作写在xxxBO.java里;实际CRUD操作直接用封装好的DAO,,,