tomcat是否已正常启动?象是服务器环境问题
解决方案 »
- $.toJSON()?
- 求一 sql 语句。。。。。。
- 游标在JSP中应用
- 我想自定义(增加)一个文件的属性,比如:author属性,将来可以通过file.author()来获得,就像file.length()一样,怎么实现呢?
- 数据池问题快一个星期了,郁闷死了,工作都没心情了,哪位帮帮忙啊求求大家 了
- 问JSF和servlet高手一个问题
- 100分求教一个小问题:?搞了一天没搞出来, 在显等待!急...
- 请问那里有JSPSMART这个组件下载啊?www.jspsmart.com现在已经关闭了!!!
- 怎么配置才能解释jsp啊? ------linux环境下
- 请问如何识别某一页面所属的用户
- 为什么,我的程序运行一会儿后,tomcat就死掉了
- 水晶报表问题
我测试过其他的一些简单程序,没问题的啊
你装了mysql的驱动吗
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*" %><HTML>
<BODY bgcolor=yellow><FONT size=1>
<%!//处理字符串的一个常用方法
public String getString(String s)
{
if(s==null) s="";
try{
byte a[]=s.getBytes("ISO-8859-1");
s=new String(a);
}
catch (Exception e) {}
return s;
}
%><% String s1=response.encodeRedirectURL("inputMessage.jsp");
String s2=response.encodeRedirectURL("inputResult.jsp");
%><%//为了防止客户直接进入该页面,首先从session对象获取密码和账号信息
String account="",secret="";
if(session.isNew())
{//如果直接进入该页面就连接到登录页面
response.sendRedirect("login.jsp");
}else
{
account=(String)session.getAttribute("account");
secret=(String)session.getAttribute("secret");
secret=getString(secret);
account=getString(account);
}
//连接到数据库验证账号和密码
Connection con=null;
Statement sql=null;
ResultSet rs=null;
boolean boo=false;
try{ Class.forName("org.gjt.mm.mysql.Driver").newInstance(); }
catch(ClassNotFoundException e) {}try{
con=DriverManager.getConnection("jdbc:mysql://localhost:8080/student","root","he@317");
sql=con.createStatement();
String condition="SELECT *FROM verify WHERE accountname="+"'"+account+"'";
rs=sql.executeQuery(condition);while(rs.next()){
String n=rs.getString("account");
String s=rs.getString("secret");
if(account.equals(n)&&secret.equals(s)) { boo=true; break; }
}
}
catch(Exception e) {}//如果账号密码正确,就显示输入成绩的表单界面
if(boo) {
out.print("<P>输入学生的考试科目、成绩等信息:");
out.print("<FROM action="+s2+" method=post>");
out.print("<BR>学号:");
out.print("<Input type=text name=number2>");
out.print("<BR>科目:");
out.print("<Input type=text name=subject>");
out.print("<BR>成绩:");
out.print("<Input type=text name=result>");
out.print("<BR><Input type=submit value=提交>");
out.print("</FROM>");
}
else { response.sendRedirect("login.jsp"); }
%><%
String number2=request.getParameter("number2"),
subject=request.getParameter("subject"),
result=request.getParameter("result");if(number2==null){ number2="########"; }
number2=getString(number2);
subject=getString(subject);
result=getString(result);
number2=number2.trim();//从“基本信息”表中查找学号是number2的记录
String basicmessage="SELECT * FROM basicinfo WHERE id = "+" '"+number2+"'";
try { sql=con.createStatement();
rs=sql.executeQuery(basicmessage);
boolean line=rs.next();
//通过line判断结果集是否有记录。如果没有该学生的基本信息就返回提示
if(line==false)
{ out.print("你还没有输入成绩呢,");
out.print("如果你输入的学号不在<BR>学生的基本信息表中,");
out.print("请单击按钮:连接到学生<BR>基本信息输入页面。");
}
else
{ //显示该学生的基本信息
out.print("<BR>学号"+rs.getString(1));
out.print("<BR>姓名"+rs.getString(2));
out.print("<BR>专业"+rs.getString(3));
out.print("<BR>年级"+rs.getString(4));String resultmessage="INSERT INTO resultpoint VALUES"+"("+"'"+number2+"',"+subject+"','"+result+"' "+")";
sql.executeUpdate(resultmessage);
out.print("<BR>成绩已被录入");
}
}
catch(Exception e)
{ out.print("<BR>"+subject+"该课程的成绩已经存在<BR>不允许重复录入"); }con.close();
%><FROM action=<%=s1%>>
<P>单击按钮连接到学生信息输入页面。
<BR><Input type="submit" value="连接到学生基本信息输入页面">
</FROM>
</BODY>
</HTML>
源代码如下:
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*" %><HTML>
<BODY bgcolor=yellow><FONT size=1>
<%!//处理字符串的一个常用方法
public String getString(String s)
{
if(s==null) s="";
try{
byte a[]=s.getBytes("ISO-8859-1");
s=new String(a);
}
catch (Exception e) {}
return s;
}
%><% String s1=response.encodeRedirectURL("inputMessage.jsp");
String s2=response.encodeRedirectURL("inputResult.jsp");
%><%//为了防止客户直接进入该页面,首先从session对象获取密码和账号信息
String account="",secret="";
if(session.isNew())
{//如果直接进入该页面就连接到登录页面
response.sendRedirect("login.jsp");
}else
{
account=(String)session.getAttribute("account");
secret=(String)session.getAttribute("secret");
secret=getString(secret);
account=getString(account);
}
//连接到数据库验证账号和密码
Connection con=null;
Statement sql=null;
ResultSet rs=null;
boolean boo=false;
try{ Class.forName("org.gjt.mm.mysql.Driver").newInstance(); }
catch(ClassNotFoundException e) {}try{
con=DriverManager.getConnection("jdbc:mysql://localhost:8080/student","root","he@317");
sql=con.createStatement();
String condition="SELECT *FROM verify WHERE accountname="+"'"+account+"'";
rs=sql.executeQuery(condition);while(rs.next()){
String n=rs.getString("account");
String s=rs.getString("secret");
if(account.equals(n)&&secret.equals(s)) { boo=true; break; }
}
}
catch(Exception e) {}//如果账号密码正确,就显示输入成绩的表单界面
if(boo) {
out.print("<P>输入学生的考试科目、成绩等信息:");
out.print("<FROM action="+s2+" method=post>");
out.print("<BR>学号:");
out.print("<Input type=text name=number2>");
out.print("<BR>科目:");
out.print("<Input type=text name=subject>");
out.print("<BR>成绩:");
out.print("<Input type=text name=result>");
out.print("<BR><Input type=submit value=提交>");
out.print("</FROM>");
}
else { response.sendRedirect("login.jsp"); }
%><%
String number2=request.getParameter("number2"),
subject=request.getParameter("subject"),
result=request.getParameter("result");if(number2==null){ number2="########"; }
number2=getString(number2);
subject=getString(subject);
result=getString(result);
number2=number2.trim();//从“基本信息”表中查找学号是number2的记录
String basicmessage="SELECT * FROM basicinfo WHERE id = "+" '"+number2+"'";
try { sql=con.createStatement();
rs=sql.executeQuery(basicmessage);
boolean line=rs.next();
//通过line判断结果集是否有记录。如果没有该学生的基本信息就返回提示
if(line==false)
{ out.print("你还没有输入成绩呢,");
out.print("如果你输入的学号不在<BR>学生的基本信息表中,");
out.print("请单击按钮:连接到学生<BR>基本信息输入页面。");
}
else
{ //显示该学生的基本信息
out.print("<BR>学号"+rs.getString(1));
out.print("<BR>姓名"+rs.getString(2));
out.print("<BR>专业"+rs.getString(3));
out.print("<BR>年级"+rs.getString(4));String resultmessage="INSERT INTO resultpoint VALUES"+"("+"'"+number2+"',"+subject+"','"+result+"' "+")";
sql.executeUpdate(resultmessage);
out.print("<BR>成绩已被录入");
}
}
catch(Exception e)
{ out.print("<BR>"+subject+"该课程的成绩已经存在<BR>不允许重复录入"); }con.close();
%><FROM action=<%=s1%>>
<P>单击按钮连接到学生信息输入页面。
<BR><Input type="submit" value="连接到学生基本信息输入页面">
</FROM>
</BODY>
</HTML>
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:867)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:800)
org.apache.jsp.student.inquire_jsp._jspService(inquire_jsp.java:111)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
root cause java.sql.SQLException: Cannot load connection class 'java.sql.SQLException: Communication link failure: java.io.EOFException'.
org.gjt.mm.mysql.Driver.connect(Driver.java)
java.sql.DriverManager.getConnection(DriverManager.java:512)
java.sql.DriverManager.getConnection(DriverManager.java:171)
org.apache.jsp.student.inquire_jsp._jspService(inquire_jsp.java:59)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
note The full stack trace of the root cause is available in the Tomcat logs.
//////////////////////////////////////////////////////////////////////////////
//
// 機能 :画面の中にボタンを連打のチェック
//
// 説明 :ボタンを連打チェック
//
// 戻り値 :boolean : true = 連打ない状態
// : false = 連打状態
//
// 引数 :inButtonObj : チェックされたオブジェクト
//
//////////////////////////////////////////////////////////////////////////////
var objButtonName; //オブジェクト
var objButtonSeconds = 0; //連打前の秒数
var objSecondIdle = 3; //連打期間の秒数
function checkDoubleClick(inButtonName) {
var thisTime = new Date();
if( inButtonName != objButtonName ){
objButtonSeconds = thisTime.getHours()*10000 + thisTime.getMinutes()*100 + thisTime.getSeconds();
objButtonName = inButtonName;
return true;
}else{ var tempSeconds = objButtonSeconds + objSecondIdle;
if( tempSeconds <= (thisTime.getHours()*10000 + thisTime.getMinutes()*100 + thisTime.getSeconds()) ){
objButtonSeconds = thisTime.getHours()*10000 + thisTime.getMinutes()*100 + thisTime.getSeconds();
return true;
}
return false;
}
}