永发信息网

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

答案:7  悬赏:10  手机版
解决时间 2021-03-04 04:00
  • 提问者网友:自食苦果
  • 2021-03-03 03:28
JSP代码 我不知道怎么放入try{}和catch{}
最佳答案
  • 五星知识达人网友:拾荒鲤
  • 2021-03-03 04:54
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楼网友:一叶十三刺
  • 2021-03-03 11:55
没人会把try catch语句放在jsp里面的啊,这个需求本身就不合理的,你可以试试用javabean来做,jsp被访问时,调用bean的方法,将数据查询出来以List的形式返回给jsp页,jsp只是负责显示的,像你说的那种业务逻辑的代码不要写在jsp中,非常不安全,写成功了也没人敢用的,暴露了数据库种类,用户名和密码,太可怕了 呵呵,去看看MVC设计模式吧,jsp只负责显示结果(view) servlet负责控制(contrl) javabean负责实现业务逻辑(model)
  • 2楼网友:青尢
  • 2021-03-03 10:19
写代码要养成良好好习惯,所以mvc还是要了解清楚的,jsp一般只做页面表示层,当然偶尔也可以写点脚本,控制层一般用servlet去完成,持久层jdbc,这是不用其它的框架的情况下,如果用框架又不同得看用什么框架了
  • 3楼网友:末日狂欢
  • 2021-03-03 09:18
老大,你这样写代码是极其不规范的写法,应该把链接数据库的代码,跟jsp代码给分离出去,jsp页面中,是越少java脚本越好。
还有,jsp代码是不能放入try catch块中的,如果把连接数据库的代码写在jsp页面中,也是不能写try catch块的。也就是说,jsp页面里是不能写try catch块的。
  • 4楼网友:拜訪者
  • 2021-03-03 08:10
原理:把HTML代码都剥除了,剩下的就是 Java代码了。 你需要注意的就是 上下文“{}”的匹配问题。因为在JSP上编写代码 是没有 IDE辅助的。
  • 5楼网友:洒脱疯子
  • 2021-03-03 06:42
嗯 ...JSP里的脚本里能放try catch的.. 还有就是,JSP里面最好不要写太多业务逻辑,这些业务逻辑应该交给BO去做,然后让Servlet去调用BO得到结果,再拿给JSP展示...... 建议先学学MVC模式.......
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯