Java 如何在UML序列图中用SQLException throw表示try-catch块?

Java 如何在UML序列图中用SQLException throw表示try-catch块?,java,jdbc,uml,sequence-diagram,visual-paradigm,Java,Jdbc,Uml,Sequence Diagram,Visual Paradigm,我正在努力理解如何用UML序列图表示以下代码: 我已经拥有的: Java代码: public static Connection getDbConnection() throws SQLException{ if (instanceOfDbConnect == null) { instanceOfDbConnect = new DbConnection(); System.out.println(" Connection - - - - - - - - Tr

我正在努力理解如何用UML序列图表示以下代码:

我已经拥有的:

Java代码:

public static Connection getDbConnection() throws SQLException{
if (instanceOfDbConnect == null) {
        instanceOfDbConnect = new DbConnection();
        System.out.println(" Connection  - - - - - - - -  Trying to create DBConnection.");
    }
    try {
        return DriverManager.getConnection(URL,user,password);
    } catch (SQLException e) {
        throw e;
    }

}
如果以这种方式执行,我如何处理此抛出SQLException?在我看来,我应该从SQLException获得一条返回消息(抛出e)到DbConnection。但是从DbConnection到SQLException的发送方消息是什么


非常感谢你的帮助

就真正的代码而言,如注释所示,UML并不是最好的。您的八行代码(不包括单个结束括号行)非常清楚。试图把它画成SD的样子

这有助于记录吗?那要看情况了。你必须处理大量的图形元素,根据工具的不同,你需要花费大量的时间来排列箭头、框架和生命线。这可能是一个皮塔。它甚至比这个小代码示例更清晰

现在考虑这个例子:

在这里,行为存储在消息的注释中(使用EnterpriseArchitect)。相反,可以使用note元素并将其放置在图表上


所以你走的路是什么:都是关于沟通的。用最好的方式来传达想法。当您想要展示涉及多个对象的复杂协作时,SDs非常有用。但是在某种程度上,codez就是传达信息的最佳工具。

我认为,如果你试图用UML将你的设计表达到这个细节层次,那么你很可能是在浪费你的时间和你的老板的时间。UML是一种高级设计工具。但这是编码,不是设计。代码本身是一个更好的表示。。。对于任何需要了解它正在做什么/应该做什么的人来说。@StephenC我不同意你的观点,UML并不局限于高级设计(我可能非常了解分发一个UML工具产生源代码;-))OK。早在20世纪90年代末,我就参与了UML的OMG元建模。我敢肯定,设计师从来没有打算将UML用于这样的东西。现在很明显,你可以做到了。。。就像你可以用大锤敲碎花生一样。。。这并不能有效地利用你作为程序员的时间,你几乎做到了。将异常视为
alt
片段。就像上面所说的:使用UML做它擅长的事情,不要进入“图形编程”。