`
- 浏览:
37641 次
- 性别:
-
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。下面来看jsp开发技术应用的29个注意事项。
1. 服务器端必须提供输入数据正确性的验证,客户端的Javascript验证可以没有。这是基于安全性的考虑,因为Javascript是很容易被绕过的, 增加客户端验证只是为了减少服务器压力、界面更加容易使用。
2. 适度使用Session,尽量不要在Session里放很大的集合对象,以免内存消耗过大,因为很多用户访问的时候会产生很多的Session。参数传递 应该尽量通过Request。熟悉HTTP有助于更好的理解Session、Cookie、Request等的机制。
3. 在带有分页的查询界面,尽量不要使用POST方法来传递参数,POST传递的参数在地址栏里是看不到的,刷新后会有重新提交表单的提示。使用GET方法传 递参数要注意URL的长度不能超过1K。
4. 分层应该清晰,一般目前我们分为View(Jsp或FreeMarker加上Action)、Bean(Service)、DAO这么三层,即显示层、业 务层、数据层。记录集ResultSet这种只能出现在DAO层中的对象不能出现在Bean(Service)层中,同样 HttpServletRequest这种只能出现在View层的对象也不应出现在Bean(Service)层中。这并不是绝对的。
5. 尽量使用简单SQL,避免两表以及多表联查。多表联查会导致数据库压力大幅增加,而且不利于在内存中对部分记录进行缓存,代码的重用性也难以提高。
6. 避免在循环里执行findXXById这样的方法,不如执行一个findXXByIds这样的方法一次性把记录取到Map里。大部分有实际对象对应的表应 该提供这样一个方法。
7. 如果使用最原始的jdbc编程的话需要注意资源的正确释放,在循环里new出来的Statement或者ResultSet就要在循环里关闭。
8. 在编写SQL进行查询的时候,需要能够判断这个SQL是否已经使用了索引,避免全表扫描,必要的时候增加索引。
9. 在写一个方法前,首先查看有没有相同功能或者很类似功能的方法已经有了,尤其是工具类方法,往往已经写过了,避免重复代码的产生,发现重复代码及时进行处 理。如果一段代码被重复使用两遍或以上,那么可以考虑专门写个方法来放这段代码,同样多次使用的常量也应该专门定义出来。
10. 在一个方法里并不一定只能有一个return,如果已经有结果了尽早return,没必要增加嵌套的层次,那样会导致代码可读性不佳,但也不能 return太多,代码看起来比较舒服就可以了。
11. 不要满足于能够熟练的编写DAO和Bean(Service)的代码,相比较而言,后台如果在成熟框架的支持下,编码是没有太大难度的,也不值得沾沾自 喜,因为这是对Java研发工程师基本的要求。适当的培养一下前台的编码能力,学会使用Dreamweaver。不要轻视界面,也别认为这是界面设计的事 情,界面对用户来说就是软件,学会编写CSS和调整界面对你没有坏处。
12. 非常明确Java和javascript作用的范围,明确它们能做的事情。
13. 一般很奇怪的现象都是由一些低级错误引起的,如果你查了一段时间也没有结果,那么让别人来查吧。
14. 不要用可能被修改的字段来做主键,那样会让相关记录的更新成为一个大麻烦。
15. 如果被迫使用Hibernate和jdbc混合操作数据库的话,不要用Hibernate来做复杂查询和统计。Hibernate用的不好的话,带来的便 利是非常有限的。
16. 数据库中经常被读取,但是很少修改的话,应该把这样的数据读到内存中用OSCache之类的缓存起来,然后定期或者触发的去更新,有助于减少读数据库次 数,提升性能。
17. 编码的时候应该注意部署环境带来的影响,这种影响包括操作系统不同带来路径的差异;应用服务器和数据库服务器之间时间的差异;外网可能部署在多台服务器 上,放到Session里的对象因为需要复制所以要实现java.io.Serializable接口等。
18. 尽量不要在jsp上编写太多代码,保持jsp的整洁很重要,用Dreamweaver打开不至于一塌糊涂,根本看不出来这是个什么界面。
19. 目前我们的项目一般都使用Spring来管理数据库事务,而且一般都配置在Bean(Service)即业务层这一层,应该注意要保持事务的完整性,不要 把一些应该放在一起的操作分散在Action这一层。相关的更新操作可以认为是一个事务,比如:增加一个家长,同时更新学生是否有家长的字段。
20. 在Spring的配置中,对于有些需要保持独立事务的方法操作,比如生成主键等,应该声明该方法为独立事务 ROPAGATION_REQUIRES_NEW。Bean(Service)里如果抛出checked exception,事务默认是不会回滚的,需要加以声明,比如<prop key="*">PROPAGATION_REQUIRED,-PassportException</prop>。
21. 在一个Bean(Service)中引用其他Bean(Service)的时候尽量引用Bean(Service),而不是DAO。因为其他的Bean (Service)往往封装DAO的操作后,又做了进一步的完善,比如增加校验等,所以应该重用这些方法,而不必要去引用DAO的方法来重写这些操作。
22. 至少在Bean(Service)的接口定义上增加注释,方便他人引用你写的方法。
23. 好好利用集合框架里的Map、List、Set。尤其是HashMap、ArrayList、HashSet用的最多,这些类是多条数据操作的基础,它们 都不是线程安全的。
24. 现在跑的快的页面,随着数据量的增加,可能会变的很慢,所以应该意识到页面可能变慢的原因,而不是现在看起来很快。影响速度的大部分原因是对数据库的压力 太大了,在java代码执行上花费很多时间的情况是不常见的。
25. 避免不必要的跳转,如果页面执行的足够快,那么中间的载入进度提示页是不必要的,那样会让用户觉得闪烁。
26. 注意页面的文件大小,并不是每个用户的带宽都是非常理想的,文件小一点,速度快一点,总是感觉更好一点。
27. 不要去修改用户的浏览器,比如隐藏他们的地址栏、菜单、右键菜单等,这可能会引起部分用户的反感。尽量不要使用弹出窗口,可能会被拦截。
28. 网站的权限控制至少应该保证有访问权限的用户才能访问页面,通过隐藏链接之类的方法是很不安全的,用户看不见了并不表示安全了。权限的控制尽量使用框架里 的拦截器这样的机制,而不是把权限控制代码写的到处都是。过滤器不宜过多的使用,不仅因为过滤器的作用范围很难控制,而且容易引起页面执行效果的混乱,错误不易排查。
29. 页面里大部分情况使用相对路径,保持Action路径层次和页面一致,这样应用就可以发布在各种目录下。
众所周知,JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。希望通过本文的介绍,能够给你带来帮助。
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
随书光盘提供的资源丰富多样,有助于读者深入理解并实践JSP开发: 1. 文件`lxwm.dxr`可能是一个文档索引或目录文件,它可能包含了书中的示例代码或项目的结构,方便读者快速查找和学习。 2. `play.exe`通常是一个...
ZK开发手册和注意事项 ZK是一个基于Java的开源Ajax Web应用框架,它允许开发者创建富互联网应用(RIA)。ZK框架基于服务器端技术,其特性在于能够在不需要AJAX和JavaScript编程的情况下,提供强大的前端组件和应用...
**JSP接口开发应用手册(OA)** 在企业级应用中,JSP(JavaServer Pages)接口开发是构建高效、可扩展的协同办公系统的关键环节。JSP接口允许不同的应用程序和服务之间进行数据交换和功能调用,从而实现系统的集成...
12. session和cookie在JSP开发中的应用场景和注意事项。 四、JSP页面跳转与重定向 13. 什么是请求转发和重定向,它们的区别在哪里? 14. 在JSP中如何实现URL编码和解码? 五、MVC设计模式与JSP 15. MVC设计模式...
#### 六、注意事项 - 在编写JSP页面时,请确保所有的数据库连接信息(如URL、用户名和密码)都是正确的。 - 如果遇到任何异常或错误,检查环境变量配置是否正确,以及数据库驱动是否已经正确加载。 - 在实际部署...
【jsp自定义标签库注意事项】 在Java服务器页面(JSP)开发中,自定义标签库是一种强大的工具,它能够帮助开发者创建可重用的代码片段,提高代码的可读性和可维护性。以下是对JSP自定义标签库的详细解释和使用注意...
**注意事项** 在实际开发中,为了提高效率和代码可维护性,通常会采用更高级的框架如Spring MVC,它简化了Servlet的使用并提供了更多的功能。不过,理解Servlet的基础知识对于理解这些高级框架的工作原理至关重要。...
Servlet和JSP(JavaServer Pages)是Java Web开发中的核心技术,用于构建动态Web应用程序。Servlet是一种Java编程接口,用于扩展服务器的功能,而JSP则是一种基于Java的动态网页技术,它将HTML、XML或其他标记语言与...
JAVA环境的安装是jsp开发的基础,jdk是java应用程序的根底,jsp是基于java技术的,所以配置jsp环境之前必须要安装jdk。jdk的最新版本是1.6,可以从官方网站下载。安装完成后,需要配置环境变量,包括设置JAVA_HOME...
【标题】"JSP应用开发详解第二版18-25章源码"涉及的知识点主要涵盖JSP(JavaServer Pages)技术的高级应用和开发实践。这些章节通常会包括以下核心内容: 1. **JSP语法与指令**:18-25章可能深入讲解JSP基本语法,...
JSP课程设计管理系统 是一套完善的WEB网页系统,对理解JSP java编程开发语言有帮助系统采用B/S模式网页浏览器,系统具有完整的源代码和数据库,系统主要采用B/S模式开发应用技术:java|jsp+SQLSERVER 开发工具:...
在Java Web开发中,JSP(JavaServer Pages)是一种用于创建动态网页的技术。为了提高代码复用性和组织性,开发者通常会创建工具类(Util Classes),这些类包含了一系列静态方法,方便在JSP页面中调用。本篇将详细...
### Servlet JSP开发运行环境配置详解 #### 一、概述 Servlet 和 JSP 是 Java Web 开发中的核心技术,为了能够顺利地进行开发与部署,必须首先搭建好开发环境。本文档将详细介绍如何配置一个基本的 Servlet 和 JSP...
在实际应用中,`必读.txt`文件可能包含了实现这一功能的详细步骤和注意事项,而`demo-javaniu`可能是包含示例代码或者演示项目的文件。对于初学者,通过阅读这些材料,结合上述概念,应该能更深入地理解和实现JSP下...
在IT行业中,EL(Expression Language)是Java...总之,掌握EL的使用技巧,并了解其与JSTL的配合,是提升JSP开发效率和代码质量的关键。理解EL的工作原理和注意事项,能帮助开发者编写出更加高效、安全的Web应用。
三、注意事项 1、管理员账号:admin密码:admin 数据库配置文件DBO.java 2、开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为mysql5.0,使用java语言开发。 3、数据库文件名是jspfilm.sql ,系统名称film
**JSP2.0技术手册**是Web开发领域中针对JavaServer Pages 2.0版本的一本详尽指南。JSP2.0是Java EE 5规范的一部分,它提供了更强大的功能和改进,以帮助开发者更高效地创建动态网页内容。在本手册中,你将深入理解...
#### 二、JSP开发环境搭建步骤 ##### 1. IDE开发环境 - Eclipse Eclipse是一款流行的开源集成开发环境(IDE),非常适合Java和JSP项目的开发。对于JSP项目,建议使用支持J2EE的Eclipse版本,以便更好地支持Dynamic...
综上所述,这个项目提供了一个学习和实践JSP和JavaBean结合开发Web应用的实例,同时也展示了完整的论坛系统开发流程。对于想要深入了解这两种技术或者想要动手开发论坛系统的开发者来说,这是一个宝贵的学习资源。