Tenho o seguinte problema: estou fazendo um joguinho em java, em que a pessoa vai cadastrar as palavras no banco, e o jogo terá de sortear uma, cada vez que clicar num botão. Então, me aconselharam jogar essa lista de palavras do banco num array, e a partir dele realizar esse sorteio com o Math.random(). Só que a questão é que sei pouquissima coisa sobre arrays, e é a primeira vez que mexo com isso em java. Sendo assim, alguém poderia me mosrar ou dar-me uma dica de como eu poderia estar jogando esse resultset num array?
Obs: minha classe de conexão com o banco tem o seguinte código…
[code]import java.sql.*;
/**
*
@author Suellen
*/
public class BD {
public static Connection connection = null;
public static Statement statement = null;
public static ResultSet resultSet = null;
public static final String DRIVER = “org.gjt.mm.mysql.Driver”;
public static final String URL = “jdbc:mysql://localhost/bdmarisa”;
/*O método faz a conexão com o banco de dados MySQL,
e retorna true se houver conectado, ou false em caso negativo.
*/
Talvez faltou import, mas de qualquer forma, este codigo está incompleto, fiz apenas para vc ver como popular uma lista, a partir de um resultado da query.
Antes disso, é preciso criar a conexão, escrever teu select do banco, popular o resultset. Isso tem no link que passei no post anterior
O erro entao seria referente ao q vc disse depois entao, q tem q criar a outra classe, preencher o array com o resultado do banco e tal… mas eu to vendo o q vc me mandou, e msmo assim ñ to conseguindo fazer…
Hummmm, mas já tem a classe de Conexão prontinha, com o Statement e ResultSet, ai fica facinho
BD banco = new BD();
banco.conn = banco.getConnection; //o certo era este getConnection já retornar um Connection
banco.setResultSet("select pal from palavra");
List palavras = new ArrayList();
while (banco.resultSet .next()) {
palavras.add(rs.getString("pal"));
}
Nisso vc tera uma lista com todas as palavras do banco populadas
Então coloquei o código novo, mas ele da erro na 2ª linha, onde tem esse banco.conn (q tmb ñ entendi a função desse “.conn”) sendo q ele grifa em vermelho o .conn e o .getConnection
E tmb deu erro na 6ª linha, em q é grifado em vermelho rs.getString (pra mim, o rs é o resultSet, certo? mas onde esta a declaração de rs?) ele me da duas opções no netbeans pra arrumar o erro, uma para criar a classe rs, e a outra para criar o campo rs. Qual devo usar?)
[code]BD banco = new BD();
banco.conn = banco.getConnection; //o certo era este getConnection já retornar um Connection
BD.setResultSet(“SELECT pal FROM palavra”);
List palavraslist = new ArrayList();
while (BD.resultSet.next()) {
palavraslist.add(rs.getString("pal"));
} [/code]
Opa, desculpe, é que estou codificando aqui direto no forum
o conn era pra ser o connection da classe BD, mas reparei agora que as variaveis sao estaticas, logo nao precisa instanciar a classe BD e acessar diretamente
Sim, a 6ª linha era pra ser resultSet
O certo era vc mesmo identificar os problemas e corrigir, pois a intencao do forum é ajudar a chegar no resultado e não dar o resultado direto, pois bem
if (BD.getConnection()) {
BD.setResultSet("Select pal from pergunta");
List palavras = new ArrayList();
try {
while (BD.resultSet.next()) {
palavras.add(BD.resultSet.getString("pal"));
}
} catch (SQLException e) {
e.printStackTrace();
}
}
[quote=igor_ks]Opa, desculpe, é que estou codificando aqui direto no forum
o conn era pra ser o connection da classe BD, mas reparei agora que as variaveis sao estaticas, logo nao precisa instanciar a classe BD e acessar diretamente
Sim, a 6ª linha era pra ser resultSet
O certo era vc mesmo identificar os problemas e corrigir, pois a intencao do forum é ajudar a chegar no resultado e não dar o resultado direto, pois bem
if (BD.getConnection()) {
BD.setResultSet("Select pal from pergunta");
List palavras = new ArrayList();
try {
while (BD.resultSet.next()) {
palavras.add(BD.resultSet.getString("pal"));
}
} catch (SQLException e) {
e.printStackTrace();
}
}
agora só fazer o random ;D
[/quote]
Eu sei q a função do forum é a q vc disse acima, e desculpa se te atrapalhei… é q realmente ñ entendo nada dessa parte em java, e como ja disse antes, é a primeira vez q estou trabalhando com isso…
Mas, de coração, mto obrigada pela ajuda, o resto, como vc msmo disse, corro atras…