Files
tlw-database-tool/src/main/java/de/jeyp91/tippliga/TippligaSQLConnector.java

102 lines
3.4 KiB
Java

package de.jeyp91.tippliga;
import de.jeyp91.tippliga.TLWMatch;
import de.jeyp91.tippliga.TLWTeam;
import javax.xml.transform.Result;
import java.util.ArrayList;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class TippligaSQLConnector {
Connection con;
static {
try {
Class.forName("com.mysql.cj.jdbc.Driver");
} catch (ClassNotFoundException ex) {
System.err.println("Unable to load MySQL Driver");
}
}
public TippligaSQLConnector() {
String jdbcUrl = "jdbc:mysql://localhost/d0144ddb?user=root&password=&useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC";
try {
con = DriverManager.getConnection(jdbcUrl);
} catch (SQLException e) {
/* TODO */
e.printStackTrace();
}
}
public ArrayList<TLWTeam> getTeamsBySeasonAndLeague(String season, String league) {
String queryString = "SELECT * FROM `phpbb_footb_teams` WHERE `season` = " + season + " AND `league` = " + league + ";";
ArrayList<TLWTeam> teams = new ArrayList<>();
for (ResultSet rset : executeQuery(queryString)) {
teams.add(new TLWTeam(rset));
}
return teams;
}
public ArrayList<TLWTeam> getTeamsById(String id) {
String queryString = "SELECT * FROM `phpbb_footb_teams` WHERE `team_id` = " + id + " ORDER BY `season` DESC;";
ArrayList<TLWTeam> teams = new ArrayList<>();
for (ResultSet rset : executeQuery(queryString)) {
teams.add(new TLWTeam(rset));
}
return teams;
}
private ArrayList<TLWMatch> getMatches(String queryString) {
ArrayList<TLWMatch> matches = new ArrayList<>();
for (ResultSet rset : executeQuery(queryString)) {
matches.add(new TLWMatch(rset));
}
return matches;
}
public ArrayList<TLWMatch> getMatches(String season, String league) {
String queryString = "SELECT * FROM `phpbb_footb_matches` WHERE `season` = " + season + " AND `league` = " + league + ";";
return getMatches(queryString);
}
public ArrayList<TLWMatch> getMatches(String season, String league, String matchday) {
String queryString = "SELECT * FROM `phpbb_footb_matches` WHERE `season` = " + season + " AND `league` = " + league + "AND `matchday` = " + matchday + ";";
return getMatches(queryString);
}
public void updateMatchDateTime(String season, String league, String matchNo, String datetime) {
String queryString = "UPDATE `phpbb_footb_matches` "
+ "SET match_datetime = " + datetime
+ " WHERE `season` = " + season
+ " AND `league` = " + league
+ " AND match_no = " + matchNo + ";";
executeQuery(queryString);
}
private ArrayList<ResultSet> executeQuery (String queryString){
Statement stmt;
ResultSet rset;
ArrayList<ResultSet> results = new ArrayList<>();
try {
stmt = con.createStatement();
rset = stmt.executeQuery(queryString);
while (rset.next()) {
results.add(rset);
}
} catch (SQLException throwables) {
throwables.printStackTrace();
}
return results;
}
}