我的程序为什么会出现unreachable statement异常?

gudaoxifeng410 2008-01-08 04:15:33
在我的jsp中有如下程序:
<%!

public String sqlQuery(String num) {
Connection conn = null;
String connStr;
try {
connStr="jdbc:microsoft:sqlserver://10.1.72.15:1433;DatabaseName=test";//"jdbc:oracle:thin:@local:1521:orcl";
DriverManager.registerDriver(new com.microsoft.jdbc.sqlserver.SQLServerDriver());
conn = DriverManager.getConnection(connStr,"sa", "");

PreparedStatement st = conn.prepareStatement("select * from NEIKON_NEWS where id=?");
st.setString(1, num);
ResultSet rs=st.executeQuery();
Array ry=rs.getArray(6);
String content=(String)ry.getArray();
return content;
conn.close();
}catch(SQLException ex) {
System.out.println("Error in Connecting to the Database "+'\n'+ex.toString());
}
}

%>
<%
String id=request.getParameter("id");
String context=sqlQuery(id);
FCKeditor oFCKeditor;
oFCKeditor = new FCKeditor(request,"content");
oFCKeditor.setBasePath("../../FCKeditor/");
oFCKeditor.setHeight("500");
//oFCKeditor.setWidth("500");
oFCKeditor.setValue("context");
out.print(oFCKeditor.create());
%>
应该导入的包已经导入了.但是运行时出现
unreachable statement和missing return statement两个错误.
是不是我的程序哪块有问题,希望得到高手们的指点.
...全文
12130 13 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
loaferwang 2008-10-08
  • 打赏
  • 举报
回复
嗨,对头呀,对于以上的说法,可以说已经完美啦!
J2eeFans 2008-01-09
  • 打赏
  • 举报
回复
呵呵,肯定是2楼说的问题啦,不过来晚了..
imA 2008-01-09
  • 打赏
  • 举报
回复
呵呵
老紫竹 2008-01-09
  • 打赏
  • 举报
回复
斑主,我有点不同意开发不用工具的做法。 特别是对于新手。

固然,从最基本的开始学习,会加深印象,让他们打好基础。
但同时也会极大的打击他们的士气。

举个不太恰当的例子,我们会用JAVA语言就可以了,没必要一开始就只讲解字节码怎么回事。

他们需要先死记硬背,是这样,没什么理由,随着学习的过程,逐步地理解为什么是这样,和不是这样怎么办。

使用工具能极大的提高他们的信心。

imA 2008-01-09
  • 打赏
  • 举报
回复
问题已经解决了,就结贴吧,呵呵
imA 2008-01-09
  • 打赏
  • 举报
回复
开始不用集成开发工具是对的。也是受到鼓励的做法。

你要加深Java基础的学习,同时加强通过错误提示排错的能力。

我看好你哦,呵呵
gudaoxifeng410 2008-01-09
  • 打赏
  • 举报
回复
我作为一个初学着,刚开始就不用开发工具,实在有点托大.犯下这种低级错误,实在是汗颜.
老紫竹 2008-01-09
  • 打赏
  • 举报
回复
改成这样
  public String sqlQuery(String num) {
Connection conn = null;
String connStr;
try {
connStr = "jdbc:microsoft:sqlserver://10.1.72.15:1433;DatabaseName=test";// "jdbc:oracle:thin:@local:1521:orcl";
DriverManager.registerDriver(new com.microsoft.jdbc.sqlserver.SQLServerDriver());
conn = DriverManager.getConnection(connStr, "sa", "");

PreparedStatement st = conn.prepareStatement("select * from NEIKON_NEWS where id=?");
st.setString(1, num);
ResultSet rs = st.executeQuery();
Array ry = rs.getArray(6);
String content = (String) ry.getArray();
return content;
} catch (SQLException ex) {
System.out.println("Error in Connecting to the Database " + '\n' + ex.toString());
} finally {
if (conn != null) {
try {
conn.close();
} catch (Exception ex) {}
}
}
}
老紫竹 2008-01-09
  • 打赏
  • 举报
回复

String content=(String)ry.getArray();
return content; // 这里已经return 啦
conn.close(); // 这里就不可能被执行了
}catch(SQLException ex) {
imA 2008-01-08
  • 打赏
  • 举报
回复
呵呵
gudaoxifeng410 2008-01-08
  • 打赏
  • 举报
回复
问题发现了,纯属低级错误.关键也没有用开发工具.谢谢各位了.
imA 2008-01-08
  • 打赏
  • 举报
回复
首先你出现的unreachable statement是因为你程序中出现了更本执行不到的语句,例如:
public String test(){
return "hello";
String s="world";
}

上面的代码片段就会出现unreachable statement,因为在return "hello"之后的语句String s="world"是永远也执行不到的。

另外,你在jsp中定义的方法sqlQuery没有返回值语句,所以会出现missing return statement这样的提示
changjiangzhibin 2008-01-08
  • 打赏
  • 举报
回复

st.setString(1, num);
ResultSet rs=st.executeQuery();
if(rs...)
{
Array ry=rs.getArray(6);
}


String id=request.getParameter("id");
if(!id.Equals(""))
{
String context=sqlQuery(id);
.....
}


81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧