DAO
Creamos el paquete com.tutosoftware.bombarderos.dao creamos la clase LoginDAO
package com.tutosoftware.bombarderos.dao;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import com.tutosoftware.bombarderos.entity.Usuario;
import com.tutosoftware.bombarderos.util.DBConection;
public class LoginDAO {
private DBConection connector;
private Connection connection;
public Usuario obtenerUsuario(String email) {
Usuario userScore= new Usuario();
try {
Statement st = this.getConnection().createStatement();
ResultSet rs = st.executeQuery("SELECT * FROM usuario where email='"+email+"'");
while (rs.next()){
userScore.setIdUsuario(rs.getInt("idUsuario"));
userScore.setEmail(rs.getString("email"));
userScore.setPassword(rs.getString("password"));
}
st.close();
rs.close();
} catch (SQLException e) {
System.out.println(e.getMessage());
}
return userScore;
}
private DBConection getConnector() {
if(this.connector == null)
this.connector = new DBConection();
return connector;
}
private Connection getConnection() {
if(this.connection == null)
this.connection = this.getConnector().connect();
return connection;
}
}
Creamos la clase JugadorDAO
package com.tutosoftware.bombarderos.dao;
import java.io.ByteArrayInputStream;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.DecimalFormat;
import java.util.ArrayList;
import java.util.List;
import com.tutosoftware.bombarderos.entity.Jugador;
import com.tutosoftware.bombarderos.util.DBConection;
public class JugadorDAO {
private DBConection connector;
private Connection connection;
public void crearJugador(Jugador j) {
String sql ="insert into jugador values (null,?,?,?,?,?,?,?,now(),?) ";
try {
PreparedStatement pst = this.getConnection().prepareStatement(sql);
InputStream inputStream = new ByteArrayInputStream(j.getFotografia());
pst.setInt(1,j.getIdTemporada());
pst.setBinaryStream(2,inputStream);
pst.setString(3,j.getNombre());
pst.setString(4,j.getApellidoPaterno());
pst.setString(5,j.getApellidoMaterno());
pst.setInt(6,j.getNumVecesBat());
pst.setInt(7, j.getNumHit());
pst.setDouble(8,j.getPorcentaje());
pst.executeUpdate();
pst.close();
} catch (SQLException e) {
System.out.println(e.getMessage());
}
}
public List<Jugador> mostrarJugadoresPorTemporada(Integer idTemporada){
String sql ="select * from jugador where idTemporada="+idTemporada+" ORDER BY porcentaje DESC ";
List<Jugador> listJugador = new ArrayList<Jugador>();
try {
Statement st = this.getConnection().createStatement();
ResultSet rs = st.executeQuery(sql);
while (rs.next()){
Jugador j = new Jugador();
DecimalFormat formato= new DecimalFormat("#.000");
j.setIdJugador(rs.getInt("idJugador"));
j.setIdTemporada(rs.getInt("idTemporada"));
j.setNombre(rs.getString("nombre"));
j.setApellidoPaterno(rs.getString("apellidoPaterno"));
j.setApellidoMaterno(rs.getString("apellidoMaterno"));
j.setNumVecesBat(rs.getInt("numVecesBat"));
j.setNumHit(rs.getInt("numHit"));
j.setFechaUltimoJuego(rs.getDate("fechaUltimoJuego"));
String porcentaje = formato.format(rs.getDouble("porcentaje"));
double valorPorcentaje = Double.parseDouble(porcentaje);
j.setPorcentaje(valorPorcentaje);
j.setImagen(rs.getBinaryStream("fotografia"));
listJugador.add(j);
}
st.close();
rs.close();
} catch (SQLException e) {
System.out.println(e.getMessage());
}
return listJugador;
}
public void actualizarPorcentaje(Jugador j) {
String sql ="update jugador set numVecesBat=?,numHit=?,porcentaje=?,fechaUltimoJuego=now() where idJugador=?";
try {
PreparedStatement pst = this.getConnection().prepareStatement(sql);
pst.setInt(1,j.getNumVecesBat());
pst.setInt(2,j.getNumHit());
pst.setDouble(3,j.getPorcentaje());
pst.setInt(4,j.getIdJugador());
pst.executeUpdate();
pst.close();
} catch (SQLException e) {
System.out.println(e.getMessage());
}
}
private DBConection getConnector() {
if(this.connector == null)
this.connector = new DBConection();
return connector;
}
private Connection getConnection() {
if(this.connection == null)
this.connection = this.getConnector().connect();
return connection;
}
}
Creamos la clase TemporadaDAO
package com.tutosoftware.bombarderos.dao;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import com.tutosoftware.bombarderos.entity.Temporada;
import com.tutosoftware.bombarderos.util.DBConection;
public class TemporadaDAO {
private DBConection connector;
private Connection connection;
public void crearTemporada(Temporada t) {
try {
Statement st = this.getConnection().createStatement();
String sql="INSERT INTO temporada VALUES (null,'"+t.getNombreTemporada()+"',1)";
st.execute(sql);
st.close();
} catch (SQLException e) {
System.out.println(e.getMessage());
}
}
public List<Temporada> listarTemporadasActivas(){
String sql ="select * from temporada where temporadaActiva=1";
List<Temporada> listTemporada = new ArrayList<Temporada>();
try {
Statement st = this.getConnection().createStatement();
ResultSet rs = st.executeQuery(sql);
while (rs.next()){
Temporada t = new Temporada();
t.setIdTemporada(rs.getInt("idTemporada"));
t.setNombreTemporada(rs.getString("nombreTemporada"));
t.setTemporadaActiva(rs.getInt("temporadaActiva"));
listTemporada.add(t);
}
st.close();
rs.close();
} catch (SQLException e) {
System.out.println(e.getMessage());
}
return listTemporada;
}
private DBConection getConnector() {
if(this.connector == null)
this.connector = new DBConection();
return connector;
}
private Connection getConnection() {
if(this.connection == null)
this.connection = this.getConnector().connect();
return connection;
}
}