JSP代码 我不知道怎么放入try{}和catch{}

我试把try{}和catch{}代码中,可是总是出现错误,我是个新手。请详细把try{}和catch{}放入代码中,还可以解释为什么要这样放。谢谢先了。代码如下:(可以调试到正确答案会给分哦)
-----------------------------------------------------------------
<%@ page contentType="text/html; charset=gb2312" language="java"
import="java.sql.*" errorPage=""%>
<%
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=学生成绩数据库";
String user="sa";
String password="";
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);
%>
<CENTER><h2 class="style3">出库信息</h2>
<br>
<form name="form1" method="post" action="chuku2.jsp">
<p><span class="style4">请选择要出库的产品的代号:</span>
<select name="id">
<%ResultSet rs=stmt.executeQuery("SELECT* FROM student");
while(rs.next())
{
String id=rs.getString("id");
%>
<option value="<%=id%>"><%=id%></option>
<%}%>
}
</select>
</p>
<p>
<input type="submit" name="queding" value="确定">
 
<input name="back" type="button" id="back" value="返回"
onClick="javascript:history.go(-1)">
</p>
</form>
</center>
</body>
</html>

try{
//代码区
}catch(Exception e){
//异常处理
}
代码区如果有错误,就会返回所写异常的处理。

 

首先要清楚,如果没有try的话,出现异常会导致程序崩溃。
而try则可以保证程序的正常运行下去,例如:

try{
    int i = 1/0;
}catch(Exception e){
    
}

一个计算的话,如果除数为0,则会报错,如果没有try的话,程序直接崩溃。用try的话,则可以让程序运行下去,并且输出为什么出错!

try catch 是捕捉try部分的异常,当没有trycatch的时候,如果出现异常则程序报错,加上trycatch,出现异常程序正常运行,只是把错误信息存储到Exception里,所以catch是用来提取异常信息的,可以在Catch部分加上一句System.out.println(e.ToString());,如果出现异常可以把异常打印出来

try-catch-finally示例:
public class TestException
{
    public TestException()
    {
    }
    boolean testEx() throws Exception
    {
        boolean ret = true;
        try
        {
            ret = testEx1();
        }
        catch (Exception e)
        {
            System.out.println("testEx, catch exception");
            ret = false;
            throw e;
        }
        finally
        {
            System.out.println("testEx, finally; return value=" + ret);
            return ret;
        }
    }
    boolean testEx1() throws Exception
    {
        boolean ret = true;
        try
        {
            ret = testEx2();
            if (!ret)
            {
                return false;
            }
            System.out.println("testEx1, at the end of try");
            return ret;
        }
        catch (Exception e)
        {
            System.out.println("testEx1, catch exception");
            ret = false;
            throw e;
        }
        finally
        {
            System.out.println("testEx1, finally; return value=" + ret);
            return ret;
        }
    }
    boolean testEx2() throws Exception
    {
        boolean ret = true;
        try
        {
            int b = 12;
            int c;
            for (int i = 2; i >= -2; i--)
            {
                c = b / i;
                System.out.println("i=" + i);
            }
            return true;
        }
        catch (Exception e)
        {
            System.out.println("testEx2, catch exception");
            ret = false;
            throw e;
        }
        finally
        {
            System.out.println("testEx2, finally; return value=" + ret);
            return ret;
        }
    }
    public static void main(String[] args)
    {
        TestException testException1 = new TestException();
        try
        {
            testException1.testEx();
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }
    }
}
输出结果:
i=2
i=1
testEx2, catch exception
testEx2, finally; return value=false
testEx1, finally; return value=false
testEx, finally; return value=false
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-11-13
原理:把HTML代码都剥除了,剩下的就是 Java代码了。 你需要注意的就是 上下文“{}”的匹配问题。因为在JSP上编写代码 是没有 IDE辅助的。
第2个回答  2008-11-13
嗯 ...JSP里的脚本里能放try catch的.. 还有就是,JSP里面最好不要写太多业务逻辑,这些业务逻辑应该交给BO去做,然后让Servlet去调用BO得到结果,再拿给JSP展示...... 建议先学学MVC模式.......
第3个回答  2008-11-14
写代码要养成良好好习惯,所以mvc还是要了解清楚的,jsp一般只做页面表示层,当然偶尔也可以写点脚本,控制层一般用servlet去完成,持久层jdbc,这是不用其它的框架的情况下,如果用框架又不同得看用什么框架了
第4个回答  2008-11-17
没人会把try catch语句放在jsp里面的啊,这个需求本身就不合理的,你可以试试用javabean来做,jsp被访问时,调用bean的方法,将数据查询出来以List的形式返回给jsp页,jsp只是负责显示的,像你说的那种业务逻辑的代码不要写在jsp中,非常不安全,写成功了也没人敢用的,暴露了数据库种类,用户名和密码,太可怕了 呵呵,去看看MVC设计模式吧,jsp只负责显示结果(view) servlet负责控制(contrl) javabean负责实现业务逻辑(model)

JSP代码 我不知道怎么放入try{}和catch{}
try catch 是捕捉try部分的异常,当没有trycatch的时候,如果出现异常则程序报错,加上trycatch,出现异常程序正常运行,只是把错误信息存储到Exception里,所以catch是用来提取异常信息的,可以在Catch部分加上一句System.out.println(e.ToString());,如果出现异常可以把异常打印出来 try-catch-finally示例:...

jsp的try、catch 是什么意思
try { code; \/\/将自己的代码放在其中;} catch(e) \/\/如果上面的代码有错误,这里就捕获 { alert(e.number); \/\/获得错误信息 }

JSP try catch 高手帮帮忙啊
数据库操作会出现SQLException,所以你要写异常处理语句,无论你当前有没有出现错误都应该写,这是程序员应有的规范。至于try catch捕获异常你会用的话,建议你去看一本JAVA基础教程,把J2SE学习学习,JSP往深里发展还是JAVA

谁会?在jsp页面定义函数并调用!追加!!
不能在jsp里面直接调用函数,因为你在jsp里面所有的代码都会被服务器编译成java代码放在xxx_jsp.java文件中的 _jspService方法里面,我们知道,在一个方法里面是不能定义另外一个方法的,只能调用!所以,如果你想用函数,可以像你所说的,可以在bean中,也可以在后台servlet控制类来处理. 不过想你这...

jsp 怎样才能在IE中显示 try {} 中的出错信息
不用 throws Exception了 就直接捕获了 放在 catch(Exception e){e.toString();}

jsp简单上传代码
} catch (IOException e) { e.printStackTrace(); } finally { try { if(in != null) in.close(); } catch (IOException e) { e.printStackTrace(); } try { if(out != null) out.close(); } catch (IOException e) { \/\/ TODO Auto-generated catch block e.printStackTrace(); } } return...

谁能够用JSP编写简单的增删查改方法,用PreparedStatement方法...
} public static void closeConnection(Connection conn){ try{ if(conn!=null&&(!conn.isClosed())){ conn.close(); } }catch(Exception e){ e.printStackTrace(); } } } 插入代码: package com.accp.model.bean; import com.accp.model.dao.ConnectionManager; import java.sql.*; pub...

jsp里面抛异常的问题,在线急等
catch (MessagingException e) { System.out.println("邮件发送失败!错误原因:\\n" + e.getMessage());这个catch 结束 的大括号呢?

在eclipse中想自动将代码块放到try\/catch语句的快捷键或者设置方法...
说明:源代码得快捷菜单。其中的Generate getters and setters 和 Surround with try\/catch block比较常用.建议把它们添加为快捷键.快捷键设置在windows->preferences->Workbench->Keys 2. 快捷键列表 编辑 作用域 功能 快捷键 全局 查找并替换 Ctrl+F 文本编辑器 查找上一个 Ctrl+Shift+K 文本编辑器 ...

jsp分页查询中 加入一段代码实现输入页码跳转
} catch (Exception e) { e.printStackTrace();} } Jsp中,JQuery:\/\/跳转页数判断 ().ready(function(){ ("#goId").keyup(function(){ var goValue=$(this).val();var pages=${wp.totalPages};if(goValue>0&&goValue<=pages){ ("#goBut").prop("disabled","");}else{ ("#go...

相似回答