javaの初心者です。
下記のFindServlet.javaでSQLExceptionとなり先に進めません。
エラーは500java.lang.Error: Unresolved compilation problem:
処理されない例外の型 SQLException となります。
どなたかご教授いただけないでしょうか?
使用環境 Eclipse
Tomcat6.0
mysql
jre1.8.0_45
中身
DB jsp10
table schedule
カラム sid int(11) primary key
title varchar(100)
sdate date
stime time
memo text
データ 1,本のタイトル,2016-07-20,10:00:00,購入
2,ノートのタイトル,2016-07-16,12:15:00,返却
ファイル
DbConnection.java
Data.java
DataList.java
SearchServlet.java
やりたいこと
DbConnectionで接続設定
Data.javaでセッターとゲッターの定義
DataListでテーブルから取得したデータを
Data.javaにセット
SearchServlet.javaでDatajavaからデータを
取得して表示
Q SearchServlet.javaの
ArrayList<Data> list =DataList.getList();の行が
処理できない例外の方SQLException
となり進みません。
//Dbconnection.java
package search;
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.SQLException;
import java.sql.DriverManager;
public class DbConnection{
public static Connection getConnection() throws SQLException{
String strConn="jdbc:mysql://localhost/jsp10"+"?user=root&password=root"+"&characterEncoding=utf8";
Connection conn=DriverManager.getConnection(strConn);
return conn;
}
}
//Data.java
package search;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class Data{
int lId;
String lTitle="";
String lDate="";
String lTime="";
String lMemo="";
public int getlId() {
return lId;
}
public void setlId(int lId) {
this.lId = lId;
}
public String getlTitle() {
return lTitle;
}
public void setlTitle(String lTitle) {
this.lTitle = lTitle;
}
public String getlDate() {
return lDate;
}
public void setlDate(String lDate) {
this.lDate = lDate;
}
public String getlTime() {
return lTime;
}
public void setlTime(String lTime) {
this.lTime = lTime;
}
public String getlMemo() {
return lMemo;
}
public void setlMemo(String lMemo) {
this.lMemo = lMemo;
}
}
//DataList.java
package search;
import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
public class DataList{
static public ArrayList<Data>getList() throws SQLException{
ArrayList<Data> list=new ArrayList<Data>();
Connection mConn=DbConnection.getConnection();
Statement mStmt=mConn.createStatement();
String mSql="select * from schedule";
ResultSet mRs=mStmt.executeQuery(mSql);
try{
while(mRs.next()){
Data bData=new Data();
bData.setlId(mRs.getInt("sid"));
bData.setlTitle(mRs.getString("title"));
bData.setlDate(mRs.getString("sdate"));
bData.setlTime(mRs.getString("stime"));
bData.setlMemo(mRs.getString("memo"));
list.add(bData);
}
}catch(SQLException e){
e.printStackTrace();
}
mRs.close();
mStmt.close();
mConn.close();
return list;
}
}
//FindServlet.java
package search;
import java.io.IOException;
import java.io.PrintWriter;
//import java.sql.Connection;
//import java.sql.ResultSet;
import java.sql.SQLException;
//import java.sql.Statement;
import java.util.ArrayList;
//import serach.Data;
//import search.DataList;
//import java.sql.*;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class FindServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public SearchServlet() { super(); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=Windows-31J"); PrintWriter out=response.getWriter(); out.println("<html><head>"); out.println("<title>スケジュール</title>"); out.println("</head><body>"); out.println("<h1 style='background:#cccccc'>スケジュール帳</h1>"); out.println("<table border='1'>"); out.println("<tr>"); out.println("<th>日付</th><th>時刻</th><th>予定表</th><th>備考</th><th>削除</th>"); out.println("</tr>"); for(Data bData:DataList.getList()){ out.println("<tr>"); out.println("<td>"); out.println("<%=bData.getlId()%>"); out.println("</td>"); out.println("<td>"); out.println("<%=bData.getlTitle()%>"); out.println("</td>"); out.println("<td>"); out.println("<%=bData.getlDate()%>"); out.println("</td>"); out.println("<td>"); out.println("<%=bData.getlTime()%>"); out.println("</td>"); out.println("<td>"); out.println("<%=bData.getlMemo()%>"); out.println("</td>"); out.println("</tr>"); } out.println("</table>"); out.println("</body>"); out.println("</html>"); } }
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。