0 0

JAVA 的异常处理!10

我一向对DAO以及Service层的异常处理有点儿蒙!

假如是如下结构:


---------------            -----------------             ----------------
-   action      ---------->-   service     ---------->-   dao       -
---------------            -----------------             ----------------

在这三层中,Dao直接利用JDBC与物理数据库发生交互,比如CURD某User表中的记录,这个时候一定会有受查异常SQlException抛出,我们暂且把这点称之为异常处理点(1),如果选择抛出异常,那么在service中会要求处理异常, 比如在Service中有registeUser(User user)方法,我们把此处称之为异常处理点(2),然后在Action层中,我们捕捉到此异常,判断该异常,在UI界面上给用于提示,这里称之为异常处理点(3);


如何处理(1)(2)(3)出的异常,是否抛出异常,抛出什么异常,如何抛出异常,是否做日志记录,如何避免日志重复?


个人认为,
(1)在Dao中,选择记录调试日志(面向开发人员),然后选择抛出异常;(注意此处可能同时抛出多种异常),因为DAo相对于Service而言不存在业务逻辑或者服务概念,故可以选择直接将原生态的异常抛出;


(2)在Service中,个人认为service是门面或者服务,业务逻辑含义很重,故在此处判断Dao层的原生态异常,然后包装成为自定义的应用程序异常,如UserExistsException(“用户名已经存在”)等异常抛出,然后选择在此处记录应用日志(面向系统管理员的);


(3)处理应用程序异常,在此处导航至相应的UI提示页面;异常处理链条至此结束;



希望大家能给出解决的方式,多多交流;

DAO 
2009年12月22日 21:33

3个答案 按时间排序 按投票排序

0 0

采纳的答案

只需要在action 处理一场,同时记录log,dao,service都抛出。

2009年12月24日 11:08
0 0

异常处理确实是门学问,需要不断摸索,处理太通用就没法满足问题定位,处理的太复杂又无法满足组件化开发,一次开发,各个系统通用的目的。希望能和大家多交流。我的想法是多模拟异常出现及应用的场景,然后找出共性的东西进行设计。

2009年12月23日 09:28
0 0

建议看看这篇文章http://www.iteye.com/topic/72170

2009年12月23日 08:43

相关推荐

    java异常处理习题

    Java 异常处理习题 Java 异常处理是 Java 编程语言中的一种重要机制,用于处理程序在运行时可能出现的错误或异常情况。下面是关于 Java 异常处理的习题和知识点总结: 一、Java 异常处理关键字 * Java 中用来抛出...

    Java论文异常处理论文:JAVA异常处理的分析与研究.doc

    Java 异常处理论文:JAVA 异常处理的分析与研究 Java 异常处理是 Java 语言的一大特色,该文在介绍 Java 语言的异常处理技术的基础上,提出了异常处理的设计原则,从而为 Java 的程序设计实现提供技术上的借鉴。 ...

    java异常处理练习题

    java异常练习题,北大青鸟学士后课后练习,主要是异常处理的小测验

    java异常处理java异常处理

    java异常处理java异常处理java异常处理java异常处理java异常处理java异常处理java异常处理java异常处理java异常处理java异常处理java异常处理java异常处理java异常处理

    Java异常处理体系

    这个主题,"Java异常处理体系",涉及到Java如何优雅地处理程序运行时的异常,确保程序的健壮性和稳定性。这篇博文链接(已提供但无法直接访问)可能详细解释了Java异常处理的基本概念、机制以及最佳实践。 Java异常...

    java 异常处理ppt

    Java异常处理是编程中至关重要的一个环节,它允许开发者优雅地处理程序运行时可能出现的错误,确保程序的健壮性和稳定性。Java中的异常处理机制基于一个独特的概念——异常(Exception),这是一种表示程序运行中...

    零基础学Java异常处理

    零基础学Java异常处理零基础学Java异常处理零基础学Java异常处理零基础学Java异常处理零基础学Java异常处理零基础学Java异常处理零基础学Java异常处理零基础学Java异常处理零基础学Java异常处理零基础学Java异常处理...

    第7章 java异常处理

    第7章 java异常处理

    Java异常处理终结篇——如何进行Java异常处理设计 - 望远的个人页面 - 开源中国社区1

    Java异常处理设计是Java编程中一个至关重要的环节,它直接影响到程序的稳定性和可维护性。在Java中,异常处理是通过try-catch-finally语句块来实现的,主要涉及两大类异常:编译时异常(Checked Exception)和运行时...

    浅析JAVA异常处理机制.pdf

    ### 浅析JAVA异常处理机制 #### 一、Java异常处理机制概述 异常处理是Java语言中的一个重要机制,它能够确保程序在遇到不可预料的情况时仍能维持稳定运行。异常处理主要包括三个方面:捕获异常、控制程序流程以及...

    java 异常处理 代码实例

    Java异常处理是编程中至关重要的一个环节,它确保了程序在遇到错误时能够优雅地运行,而不是突然崩溃。本篇文章将深入探讨Java异常处理的概念、机制以及如何通过代码实例进行有效的异常管理。 Java异常处理的核心...

    Java异常处理总结

    ### Java异常处理总结 #### 一、Java异常的基础知识 在Java编程中,异常处理是一项极其重要的技术。异常处理能够帮助开发者优雅地处理程序运行时遇到的问题,避免程序崩溃,并提供给用户友好的反馈信息。 **什么...

    C++ Java异常处理比较

    本文将对C++和Java两种语言的异常处理机制进行深入的比较和分析,探讨它们的相似之处以及不同之处,以帮助开发者更好地理解和应用这两种语言。 首先,异常处理的基本目的是捕获并处理运行时错误,这些错误通常包括...

    java实验报告4-异常处理

    Java异常处理是编程中至关重要的一个环节,它确保了程序在遇到错误时能够优雅地运行,而不是突然崩溃。本实验报告“java实验报告4-异常处理”旨在帮助初学者掌握Java中的异常处理机制,以及如何利用log4j进行日志...

    Java异常处理,非常适合Java爱好者

    Java异常处理是Java编程语言中的一个关键特性,它允许程序员优雅地处理程序运行时可能出现的错误和不正常状况。在Java中,异常是程序执行过程中出现的问题,它们中断了正常的控制流程,使得程序无法继续按照预期的...

    14.java异常处理机制.zip

    14.java异常处理机制.zip14.java异常处理机制.zip14.java异常处理机制.zip14.java异常处理机制.zip14.java异常处理机制.zip14.java异常处理机制.zip14.java异常处理机制.zip14.java异常处理机制.zip14.java异常处理...

    java高端技术课程--Java异常处理详解

    Java异常处理是Java编程中一个至关重要的概念,它关乎到程序的健壮性和稳定性。在Java语言中,异常处理提供了一种机制,使得程序在遇到错误或非正常情况时能够优雅地处理问题,而不是突然崩溃。这个“java高端技术...

    高效java异常处理机制

    通过遵循上述最佳实践,开发者可以编写出更健壮、可维护的Java代码,有效地利用Java异常处理机制来提高程序的稳定性。同时,阅读并理解"Effective Java Exceptions"文档可以帮助进一步深化对Java异常处理的理解。

    高效的java异常处理框架高效的java异常处理框架高效的java异常处理框架

    本文将从 Java 异常的基本概念和语法开始,讲述 Java 异常处理的基本知识,分析 Java 异常体系结构,对比 Spring 的异常处理框架,阐述异常处理的基本原则,并提出了自己处理一个大型应用系统异常的思想,并通过设计...

    实验五 Java异常处理实验.docx

    Java 异常处理实验 Java 异常处理是 Java 语言中的一种错误处理机制,用于捕获和处理程序执行过程中出现的异常情况。异常是指程序执行过程中出现的非正常情况,例如除零错误、数组下标越界等。 实验目的 本实验的...

Global site tag (gtag.js) - Google Analytics