`

Java Web开发, 你一定会遇到

    博客分类:
  • JSP
阅读更多
Java Web开发中,有许多共通的问题,是开发人员在开发过程中一定会遇到的,需要处理的问题:
1.  乱码问题

为何会出现乱码问题?既然有乱码问题,肯定是由于编码设置的不一致导致的。在Web开发过程中,涉及以下一些编码设置,客户端参数的编码设置,Web服务器的编码设置,服务器端应用程序的编码设置,数据库的编码设置等。只要这四处的编码设置有不相同的,就可能会出现乱码问题。开发人员在进行开发之前,不防先了解一下这四个编码在哪里设置,当前自己的项目设置是怎么样的,这样就可以很好的避免编码问题。



2.  权限控制

对于一个Java Web系统,不是所有的页面与功能都允许所有的用户访问的,这样就需要对用户能访问哪些页面进行控制了。一般的Java Web系统,都需要进行权限控制。进行权限控制的方法有很多,以前看到有不少项目直接在程序里写权限控制的代码,这样的弊端是显而易见的,太不利于扩展了,只要有任何的修改,都需要改动相当的代码,一是容易出错,二是修改的代价大。一个比较好的想法是基于AOP的思想,使用拦截器来进行权限控制,当然前提是系统要配置一定的数据库结构,如用户-角色-权限表这样的表结构。当然,目前有不少的权限控制开源框架如acegi



3.  参数验证

All Input Is Evil。对于输入参数的验证是少不了的。对于参数的验证,有客户端验证与服务器端验证,一般来说,能够在客户端进行验证的,优先考虑客户端验证以减少服务器端压力。现在有许多的Javascript框架可以很好的完成这一工作。如Jquery Validation插件。



4.  异常处理

应该说对于每个系统来说,异常处理都是很重要的。但在B/S结构的环境中,异常就显得更为重要,一个设计良好的异常处理框架可以减少很多的代码编写工作。



5.  参数传递

在B/S结构,基于HTTP来完成通信,每一次的客户端与服务器端的交互都是一次参数传递的过程。控制参数的传递过程就显得很重要了。要清楚的知道每一次的B/S的交互,需要传递哪些参数,哪些参数是合法的,哪些参数是不合法的,是通过GET方式还是通过POST方式,还是通过URL链接的方式。



6.  Ajax

现在的Java Web系统,不使用Ajax技术是不可能的了。Ajax实在是一项不错的技术,不刷新页面而完成与服务器端的通信,它使得基于B/S的结构功能更强大了,许多传统的Web应用程序所无法完成的功能现在大都可以用B/S架构来实现。对于Ajax现在已经有很多成熟的Javascript框架可以使用。首推jQuery,其提供的Ajax功能简单而实用。



7.  客户端Javascript技术

客户端技术有很多,Javascript应该说是功能最强大、应用最广泛的一个了。用好Javascript,在系统设计时多考虑客户端的实现方式,可以很好的辅助进行服务器端的功能设计。优秀的Javascript框架还是推荐jQuery,其功能简单、实用而强大。



暂时想到这些,欢迎补充。
分享到:
评论

相关推荐

    JessMA Java Web 应用开发框架 (v3.2.2-20130815).pdf

    同时,JessMA为应用开发提供了大量Util工具,用来处理应用程序开发过程中通常会遇到的一般性问题,进一步减少应用程序开发者的工作负担。 6) 平缓的学习曲线:学习使用JessMA只需掌握一定的Core Java与JSP/Servlet...

    JAVA Struts语音视频教程分页显示数据(WEB开发最好方法).rar

    大家好,我是陈亮,就要毕业于湖南科职软件学院,今天讲的是java企业级开发用Struts分页显示数据的一个语音视频教程,,这个方法是WEB开发最好的方法,直接用数据集的游标,也是今后一定会遇到的问题。只要你写查询代码...

    HTML5移动Web开发指南.pdf

    对手机Web开发技术感兴趣的开发者。 开设计算机课程的高等院校及培训机构的师生。 此外,本书也适合熟悉.net、Java、PHP等后端Web技术的开发者阅读。 前言编辑 你是否使用过智能手机浏览真正的网页? 你在使用智能...

    JAVA上百实例源码以及开源项目

     用JAVA开发的一个小型的目录监视系统,系统会每5秒自动扫描一次需要监视的目录,可以用来监视目录中文件大小及文件增减数目的变化。 Java日期选择控件完整源代码 14个目标文件 内容索引:JAVA源码,系统相关,日历,...

    JAVA上百实例源码以及开源项目源代码

     用JAVA开发的一个小型的目录监视系统,系统会每5秒自动扫描一次需要监视的目录,可以用来监视目录中文件大小及文件增减数目的变化。 Java日期选择控件完整源代码 14个目标文件 内容索引:JAVA源码,系统相关,日历,...

    java 面试题 总结

     GC是垃圾收集的意思(Gabage Collection),内存处理是编程人员容易出现问题的地方,忘记或者错误的内存回收会导致程序或系统的不稳定甚至崩溃,Java提供的GC功能可以自动监测对象是否超过作用域从而达到自动回收...

    JAVA自学之路

    首先我要恭喜你,遇见问题,意味着你又有涨经验的机会了,每解决一个问题,你的JAVA经验值就应该上升几百点,问题遇到的越多,知识提升的越快。 但是总是解决不了也是很恼人的,怎么办呢? 我一般要求我们的...

    JAVA面试题最全集

    在Web开发中需要处理HTML标记时,应做什么样的处理,要筛选那些字符(< > & “”) 3.在JSP中如何读取客户端的请求,如何访问CGI变量,如何确定某个Jsp文件的真实路径。 4.描述Cookie和Session的作用,区别和各自...

    java面试宝典

    22、我们在web 应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串? 10 23、String 和StringBuffer 的区别? 10 24、String, StringBuffer StringBuilder 的区别。 10 25、...

    超级有影响力霸气的Java面试题大全文档

     GC是垃圾收集的意思(Gabage Collection),内存处理是编程人员容易出现问题的地方,忘记或者错误的内存回收会导致程序或系统的不稳定甚至崩溃,Java提供的GC功能可以自动监测对象是否超过作用域从而达到自动回收...

    Google.Android开发入门与实战

    《Android开发入门与实战》适合具备一定软件开发经验,想快速进入Android开发领域的程序员;具备一些手机开发经验的开发者和Android开发爱好者学习用书;也适合作为相关培训学校的Android培训教材。 目录 第1章 掀起...

    最近工作中遇到需要用webpack做一个打包angular1的项目,于是写了一个基于webpack + es6 + .zip

    包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】: 所有源码都经过严格测试,可以直接运行。 功能在确认正常工作后才上传。 【适用人群】...

    javaweb物流配货项目源码(包含程序使用说明).7z

    该项目基于Java Web技术开发,采用了最新的编程语言和技术实现。 该程序具备多项实用功能,其中最重要的包括物流查询、订单管理和配货管理等等。通过物流查询功能,您可以随时随地查询物流信息,了解货物的实时位置...

    在线考试系统文献综述

    本系统使用的是JSP技术,JSP基于Java Servlet以及整个Java体系的Web开发技术。JSP被认为是最有发展前途的动态网站技术,是未来开发动态网站的主流技术,与其它技术相比有一定的优势,如JSP页面可重用跨平台的组件...

    外文翻译 stus MVC

    This article introduces Struts, a Model-View-Controller implementation that uses servlets and JavaServer Pages (JSP) technology. Struts can help you control change in your Web project and promote ...

    WebSocket客户端和服务端实例源码

    从上文可以看出,传统 Web 模式在处理高并发及实时性需求的时候,会遇到难以逾越的瓶颈,我们需要一种高效节能的双向通信机制来保证数据的实时传输。在此背景下,基于 HTML5 规范的、有 Web TCP 之称的 WebSocket ...

    android转正报告怎么写.docx

    主要负责web端的模块开发,通过开发的过程,学习和掌握了flex界面开发,hibernate和oracle数据库 因为自己在经验上的不足,所以,在项目的开发过程中碰到开发进度慢的问题。综合起来看原因在于: android转正报告...

    C#微软培训资料

    超越今天各自为营的 Web 站点 站点站点 站点 把 把把 把 Internet 建成一 建成建成 建成 个 一个一 一个可 可个可 可 以互相交换组件的地方 以互相交换组件的地方以互相交换组件的地方 以...

    千方百计笔试题大全

    22、我们在web 应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串? 10 23、String 和StringBuffer 的区别? 10 24、String, StringBuffer StringBuilder 的区别。 10 25、...

Global site tag (gtag.js) - Google Analytics