预览加载中,请您耐心等待几秒...
1/5
2/5
3/5
4/5
5/5

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

免责声明:图文来源于网络搜集版权归原作者所以若侵犯了您的合法权益请作者与本上传人联系我们将及时更正删除。一些前端开发优化的经验总结web项目前端开发经验总结最近这一个月完成了自己的第一个javaweb项目是给某杂志社做的在线投稿系统虽然进度很慢但是中间确实学到了不少东西深刻体会到了自己看几个月书都不如做一个项目来的实在。这个项目自己主要负责的是jsp页面、js脚本、css样式表的编写虽然主要做的是前端但是在设计前端后台交互功能时对mvc架构和数据库又多了一分了解这一个月的时间自己在技术上也确实成长了不少。下面分成几块总结一下自己的这个项目中的心得吧:1.项目开发流程。从确认需求开始到原型设计再到原型测试这些都没什么说的了主要是刚开始开发前端jsp页面时自己走了很多弯路想到有什么页面就写什么页面get和post的路径也是随心所欲想到什么名字就起什么名字结果发现这样做严重影响了项目开发的进度后来经过主管的提点后我幡然醒悟其实面向对象的思想就贯穿在整个项目当中在前面的原型设计的过程中除了页面的设计还有数据库的设计数据库的每个表就对应着java中的每个实体类这个类封装了数据库中的列作为属性封装了数据库的增删改查作为方法就拿这个投稿系统为例实体主要有用户、稿件等等实体间还有着一对一映射或者一对多映射等对应关系。其实整个系统的开发就是围绕着这些个实体进行的甚至于我们可以把实体名字做为二级目录把实体的增删改查作为get或post的路径譬如account/add、paper/delete等等有了这些路径那么与之对应的get和post的controller也就有了接下来我们要做的就是定义controller中返回的视图写完controller后再把与实体相关的增删改查方法写到服务层中再把项目的整个骨架搭起来再去处理细节很快的这个项目就成型了。这里前端和后台的配合尤为重要数据交互是整个系统的核心。2.jsp页面设计。提到jsp页面在这里我想说的一点是其实jsp页面是在服务器生成的那么传给jsp页面的变量、参数都会在服务器转化为它们具体的值然后再传给客户端。jsp页面可以实现很多服务器端的功能因为可以直接在页面嵌入java代码但是我们必须明确的一点是jsp页面主要是用来呈现视图的不要再其中套入大量的代码要明确前端与后台的分工。3.jstl标签:jstl标签就是jspstandardtaglib即jsp标准标签库首先el表达式可以非常方便的取出controller返回的view包含的model甚至都无需声明el表达式。其次jstl标签可以实现很多的逻辑控制功能比如最基本的c:if判断、c:foreach循环甚至有更强大的c:choose有了这些我们可以大大简化代码量jsp页面中用几十行java写的代码有时用几句jstl标签组合就实现了此外像fmt:parsedate和fmt:formatdate也是很好用的标签用于日期的解析和格式化此外jstl更有强大的函数标签库fn:项目中我也只用到了fn:length取后台传的list的长度。要善用jstl标签但是又不要完全依赖于它jstl标签很方便、快捷但是切记jstl功能有限不要完全依赖于它。4.shiro框架。shiro框架是apache的一款面向javaweb项目的权限控制框架这个框架无论前端、后台都十分好用在前端我们可以使用shiro强大的标签库通过用户角色赋予用户不同的访问权限。譬如如果一个系统的用户有访客、用户、管理员三种角色我们就可以通过shiro标签来控制游客不能访问哪些内容页面向用户和管理员呈现的不同内容这就是shiro标签的神奇之处。5.sitemesh框架。这个主要是用来将所有页面套用固定格式用以页面的复用其实有些时候标签更为方便而且sitemesh框架的内存开销是的二倍还会导致拦截器出现一些莫名的bug所以并不推荐使用。6.jquery:在这个项目中写了很多的jquery代码发现jquery确实是个神奇的东西jquery的神奇之处就在于jquery强大的选择器可以方便的取到页面的dom元素并且给这些元素绑定不同的事件提到绑定事件说一下on、live和bind的区别:bind是jquery最早的绑定事件方法on是jquery1.7.0以后才有的方法bind和on都不能将事件绑定给dom加载完毕后后添加到页面的dom元素这时就需要live了。还有一个经常使用的就是jquery的ajax了其实在做这个项目之前自己一直不理解ajax的作用机理只是心里又个概念而已但是在真正使用的ajax之后才发现ajax的强大之处确实如ajax自身描述一样异步加载javascript这就允许我们在不打开新页面的情况