在令牌" jspInit"上显示一些语法错误,在此令牌之后需要注释,并且在令牌上显示语法错误" jspDestroy",此令牌后预期的注释名称。
<% connection con;
public void jspInit() {
try{
Class.forName("Oracle.jdbc.driver.OracleDriver");
con= DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe","system","tiger");
}
catch(SQLException sqle){
sqle.printStackTrace();
}
}
public void jspDestroy () {
try{
con.close();
}
catch(SQLException sqle){
sqle.printStackTrace();
}
}
%>
答案 0 :(得分:1)
首先,我不建议在JSP页面中编写java代码。
您需要使用声明语法(<%! ... %>):
而不是scriptlet
<%!
public String yourMethod() {
//
}
%>
您的代码应该是这样的
<%!
Connection con;
public void jspInit() {
try{
Class.forName("Oracle.jdbc.driver.OracleDriver");
con= DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe","system","tiger");
}
catch(SQLException sqle){
sqle.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
public void jspDestroy () {
try{
con.close();
}
catch(SQLException sqle){
sqle.printStackTrace();
}
}
%>
答案 1 :(得分:0)
方法(您的案例中为jspInit()
和jspDestroy()
)必须在声明块中定义,而不是在scriptlet中定义。即<%!
而非<%
。
<%! connection con;
public void jspInit() {
// ...
}
%>