Commit b0ecedf1 authored by Walter Molina's avatar Walter Molina

juego blackjack

parents
Pipeline #355 failed with stages
# Default ignored files
/shelf/
/workspace.xml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<annotationProcessing>
<profile default="true" name="Default" enabled="true" />
<profile name="Maven default annotation processors profile" enabled="true">
<sourceOutputDir name="target/generated-sources/annotations" />
<sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
<outputRelativeToContentRoot value="true" />
<module name="my-app" />
</profile>
</annotationProcessing>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RemoteRepositoriesConfiguration">
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Central Repository" />
<option name="url" value="https://repo.maven.apache.org/maven2" />
</remote-repository>
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Maven Central repository" />
<option name="url" value="https://repo1.maven.org/maven2" />
</remote-repository>
<remote-repository>
<option name="id" value="jboss.community" />
<option name="name" value="JBoss Community repository" />
<option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />
</remote-repository>
</component>
</project>
\ No newline at end of file
<component name="libraryTable">
<library name="postgresql-42.6.0">
<CLASSES>
<root url="jar://$PROJECT_DIR$/lib/postgresql-42.6.0.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</component>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ExternalStorageConfigurationManager" enabled="true" />
<component name="MavenProjectsManager">
<option name="originalFiles">
<list>
<option value="$PROJECT_DIR$/pom.xml" />
</list>
</option>
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_18" default="true" project-jdk-name="openjdk-18" project-jdk-type="JavaSDK" />
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Palette2">
<group name="Swing">
<item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.svg" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
</item>
<item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.svg" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
</item>
<item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.svg" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
</item>
<item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.svg" removable="false" auto-create-binding="false" can-attach-label="true">
<default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
</item>
<item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
<initial-values>
<property name="text" value="Button" />
</initial-values>
</item>
<item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
<initial-values>
<property name="text" value="RadioButton" />
</initial-values>
</item>
<item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
<initial-values>
<property name="text" value="CheckBox" />
</initial-values>
</item>
<item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.svg" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
<initial-values>
<property name="text" value="Label" />
</initial-values>
</item>
<item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.svg" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
<preferred-size width="150" height="-1" />
</default-constraints>
</item>
<item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.svg" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
<preferred-size width="150" height="-1" />
</default-constraints>
</item>
<item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.svg" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
<preferred-size width="150" height="-1" />
</default-constraints>
</item>
<item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.svg" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.svg" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.svg" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.svg" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
</item>
<item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
<preferred-size width="200" height="200" />
</default-constraints>
</item>
<item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.svg" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
<preferred-size width="200" height="200" />
</default-constraints>
</item>
<item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.svg" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
</item>
<item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
</item>
<item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.svg" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />
</item>
<item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />
</item>
<item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.svg" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">
<preferred-size width="-1" height="20" />
</default-constraints>
</item>
<item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.svg" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />
</item>
<item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.svg" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />
</item>
</group>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$/../.." vcs="Git" />
</component>
</project>
\ No newline at end of file
FROM eclipse-temurin:11
LABEL mentainer="w7moises@gmail.com"
WORKDIR /app
COPY target/my-app-1.0-SNAPSHOT-jar-with-dependencies.jar /app/game.jar
ENTRYPOINT ["java", "-jar", "game.jar"]
\ No newline at end of file
//Crear el archivo jar
mvn clean install
//Crear la imagen de docker
docker build -t game .
//Crear el contenedor de docker y ejecutarlo para pasar parametros de entrada
docker run -it -p 8080:8080 --name game game
\ No newline at end of file
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany.app</groupId>
<artifactId>my-app</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<properties>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
</properties>
<name>my-app</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>9.4-1201-jdbc4</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.26</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>com.mycompany.app.Juego</mainClass>
</manifest>
<manifestEntries>
<Dependencies>org.postgresql, org.projectlombok</Dependencies>
</manifestEntries>
</archive>
</configuration>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>com.mycompany.app.Juego</mainClass>
</manifest>
<manifestEntries>
<Dependencies>org.postgresql, org.projectlombok</Dependencies>
</manifestEntries>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
</plugins>
</build>
</project>
package com.mycompany.app;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import java.util.ArrayList;
import java.util.List;
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
public class Baraja {
private List<Carta> cartas = new ArrayList<>();
public void barajar() {
for(int i = 0; i < 52; i++) {
Carta carta = Carta.getCartaRandom();
cartas.add(carta);
}
}
}
package com.mycompany.app;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import java.util.ArrayList;
import java.util.List;
@AllArgsConstructor
@NoArgsConstructor
@Getter
@Setter
public class BlackJack {
private float ronda = 1f;
private List<Jugador> lista = new ArrayList<>();
public float nuevaRonda() {
return ronda++;
}
public Boolean salirJuego() {
return false;
}
}
package com.mycompany.app;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
public class Carta {
private Float numero;
private Float valor;
private Boolean figura;
public static Carta getCartaRandom() {
Carta carta = new Carta();
int n = (int) (Math.random() * (13 - 1)) + 1;
carta.setNumero(Float.valueOf(n));
carta.setValor(Float.valueOf(n));
if(n == 11 || n == 12 || n == 13) {
carta.setFigura(true);
}
return carta;
}
}
package com.mycompany.app;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
@Setter
@Getter
@AllArgsConstructor
@NoArgsConstructor
public class Crupier extends Usuario {
private String nombreCasino = "Casino de Lima";
private Baraja baraja = new Baraja();
public void getBarajar() {
baraja.barajar();
}
public Carta darCarta () {
Carta carta;
int n = (int) (Math.random() * (baraja.getCartas().size() - 1)) + 1;
carta = baraja.getCartas().get(n);
baraja.getCartas().remove(n);
return carta;
}
}
package com.mycompany.app;
import com.mycompany.app.util.ConexionBaseDatos;
import java.sql.SQLException;
import java.util.InputMismatchException;
import java.util.Scanner;
/**
* Hello world!
*
*/
public class Juego
{
public static void mensajes() {
System.out.println("1. Seleccionar juego");
System.out.println("2. Ingresar saldo inicial del jugador");
System.out.println("3. Consultar saldo del jugador");
System.out.println("4. Consultar historico de resultados");
System.out.println("5. Salir");
System.out.println("Escribe una de las opciones: ");
}
public static void main( String[] args ) {
Scanner entrada = new Scanner(System.in);
int contador = 0;
Float carta = 0F;
boolean salir = false;
String nombre;
int opcion;
int eleccion;
int saldo;
System.out.println("Escribe su nick: ");
nombre = entrada.nextLine();
mensajes();
while (!salir) {
try {
ConexionBaseDatos conn = new ConexionBaseDatos();
opcion = entrada.nextInt();
switch (opcion) {
case 1:
Jugador jugador = conn.consultarSaldo(nombre);
if(jugador.getSaldo() == null) {
System.out.println("Ingrese su saldo en el menu");
}
else {
Float puntuacion = 0F;
Crupier crupier = new Crupier();
crupier.getBarajar();
BlackJack blackJack = new BlackJack();
blackJack.getLista().add(jugador);
Mano mano = new Mano();
System.out.println("Apuesta: ");
int apuesta = entrada.nextInt();
System.out.println("1. BlackJack");
int opt = entrada.nextInt();
do {
contador = 0;
while(contador<2) {
System.out.println("1 (pedir carta) o 2 (mostrar cartas)");
eleccion = entrada.nextInt();
if (eleccion == 1) {
carta = crupier.darCarta().getValor();
puntuacion += carta;
System.out.println("Carta del crupier: " + carta);
mano.getCartas().add(crupier.darCarta());
System.out.println(mano.getCartas().get(mano.getCartas().size() - 1).getValor());
mano.setValores();
} else {
System.out.println("Mostrando cartas");
mano.mostrarCartas();
carta = crupier.darCarta().getValor();
puntuacion += carta;
System.out.println("Carta del crupier: " + carta);
}
contador++;
}
if(contador==2){
if(mano.getValor() > puntuacion && mano.getValor() < 21) {
System.out.println("Ganaste");
conn.actualizarSaldo(nombre, apuesta + (jugador.getSaldo() - apuesta));
}
else if(mano.getValor() == 21) {
System.out.println("BlackJack");
conn.actualizarSaldo(nombre, apuesta * 3 + (jugador.getSaldo() - apuesta));
}
else if(puntuacion > 21) {
System.out.println("Ganaste");
conn.actualizarSaldo(nombre, apuesta + (jugador.getSaldo() - apuesta));
}
else {
System.out.println("Perdiste");
conn.actualizarSaldo(nombre, (jugador.getSaldo() - apuesta));
}
System.out.println("1. Jugar otra vez");
opt = entrada.nextInt();
if(opt!=1) {
conn.insertarResultados(nombre, blackJack.getRonda());
}
blackJack.nuevaRonda();
}
}while (opt == 1);
}
break;
case 2:
Jugador jugadores = conn.consultarSaldo(nombre);
System.out.println("Ingrese su saldo: ");
saldo = entrada.nextInt();
if(jugadores.getNombre() == null) {
conn.insertarSaldo(nombre, (float) saldo);
} else {
conn.actualizarSaldo(nombre, (float) saldo);
}
break;
case 3:
conn.consultarSaldo(nombre);
break;
case 4:
conn.consultarResultados(nombre);
break;
case 5:
salir = true;
break;
default:
System.out.println("Solo números entre 1 y 4");
}
mensajes();
} catch (InputMismatchException e) {
System.out.println("Debes insertar un número");
entrada.next();
} catch (SQLException e) {
throw new RuntimeException(e);
}
}
}
}
package com.mycompany.app;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
@AllArgsConstructor
@NoArgsConstructor
@Getter
@Setter
public class Jugador extends Usuario {
private Float apuesta;
public Float apostar(Float apuesta) {
return getSaldo() - apuesta;
}
public Float findSaldo() {
return getSaldo();
}
}
package com.mycompany.app;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import java.util.ArrayList;
import java.util.List;
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
public class Mano {
private Float valor = 0f;
private List<Carta> cartas = new ArrayList<>();
public void setValores() {
Boolean flag = false;
if(cartas.size() == 0){
setValor(0f);
}
else {
Float valor = 0f;
for (Carta carta : cartas) {
if(carta.getValor() == 1){
flag = true;
}
if(flag && (carta.getValor()==11 || carta.getValor()==12 || carta.getValor()==13)){
valor = 21f;
}
else{
valor += carta.getValor();
}
}
setValor(valor);
}
}
public void mostrarCartas() {
for (Carta carta : cartas) {
System.out.println("Carta : " + carta.getNumero());
}
}
}
package com.mycompany.app;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
public class Resultado {
private Float puntuacion;
private String jugador;
}
package com.mycompany.app;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import java.util.ArrayList;
import java.util.List;
@NoArgsConstructor
@AllArgsConstructor
@Getter
@Setter
public class Usuario {
private String nombre;
private Float saldo;
List<Float> rondasGanadas = new ArrayList<Float>();
public int setRondasGanadas(Float ronda){
rondasGanadas.add(ronda);
return rondasGanadas.size();
}
public Boolean getCarta() {
return true;
}
}
package com.mycompany.app.util;
import com.mycompany.app.Jugador;
import java.sql.*;
public class ConexionBaseDatos {
private static final String url = "jdbc:postgresql://ruby.db.elephantsql.com:5432/qbpxpgrg";
private static final String usuario = "qbpxpgrg";
private static final String password = "aRD3vNUazwIZSU2ZakbnK_hGN-VELQaD";
private static Connection connection;
public static Connection getInstance() throws SQLException {
if (connection == null) {
connection = DriverManager.getConnection(url, usuario, password);
}
return connection;
}
public Jugador consultarSaldo(String nombre) throws SQLException {
Jugador jugador = new Jugador();
try {
Connection conn = new ConexionBaseDatos().getInstance();
Statement declaracion = conn.createStatement();
ResultSet resultado = declaracion.executeQuery("SELECT * FROM usuarios WHERE nombre = '" + nombre + "'");
while (resultado.next()) {
System.out.println("El saldo de jugador " + resultado.getString("nombre") + " es de " + resultado.getString("saldo"));
jugador.setSaldo(Float.valueOf(resultado.getString("saldo")));
jugador.setNombre(resultado.getString("nombre"));
}
declaracion.close();
resultado.close();
} catch (SQLException e) {
System.err.format("SQL State: %s\n%s", e.getSQLState(), e.getMessage());
} catch (Exception e) {
e.printStackTrace();
}
return jugador;
}
public Jugador insertarSaldo(String nombre, Float saldo) throws SQLException {
Jugador jugador = new Jugador();
try {
Connection conn = new ConexionBaseDatos().getInstance();
Statement declaracion = conn.createStatement();
declaracion.executeQuery("INSERT INTO usuarios (nombre, saldo) VALUES ('" + nombre + "','" + saldo + "')");
declaracion.close();
} catch (SQLException e) {
System.err.format("SQL State: %s\n%s", e.getSQLState(), e.getMessage());
} catch (Exception e) {
e.printStackTrace();
}
return jugador;
}
public void actualizarSaldo(String nombre, Float saldo) throws SQLException {
try {
Connection conn = new ConexionBaseDatos().getInstance();
Statement declaracion = conn.createStatement();
ResultSet resultado = declaracion.executeQuery("SELECT * FROM usuarios WHERE nombre = '" + nombre + "'");
while (resultado.next()) {
if(!resultado.getString("nombre").equals(nombre)){
System.out.println("El usuario no existe");
}else{
declaracion.executeQuery("UPDATE usuarios SET saldo = " + saldo + " WHERE nombre = '" + nombre + "'");
}
}
} catch (SQLException e) {
System.err.format("SQL State: %s\n%s", e.getSQLState(), e.getMessage());
} catch (Exception e) {
e.printStackTrace();
}
}
public void consultarResultados(String jugador) throws SQLException {
try {
Connection conn = new ConexionBaseDatos().getInstance();
Statement declaracion = conn.createStatement();
ResultSet resultado = declaracion.executeQuery("SELECT * FROM resultados WHERE jugador = '" + jugador + "'");
while (resultado.next()) {
System.out.println("El nombre del jugador es " + resultado.getString("jugador") + " y su puntuacion es de " + resultado.getString("puntuacion"));
}
} catch (SQLException e) {
System.err.format("SQL State: %s\n%s", e.getSQLState(), e.getMessage());
} catch (Exception e) {
e.printStackTrace();
}
}
public void insertarResultados(String jugador, Float puntuacion) throws SQLException {
try {
Connection conn = new ConexionBaseDatos().getInstance();
Statement declaracion = conn.createStatement();
declaracion.executeQuery("INSERT INTO resultados (puntuacion, jugador) VALUES ('" + puntuacion + "','" + jugador + "')");
declaracion.close();
} catch (SQLException e) {
System.err.format("SQL State: %s\n%s", e.getSQLState(), e.getMessage());
} catch (Exception e) {
e.printStackTrace();
}
}
}
package com.mycompany.app;
import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
/**
* Unit test for simple App.
*/
public class JuegoTest
extends TestCase
{
public JuegoTest(String testName )
{
super( testName );
}
public static Test suite()
{
return new TestSuite( JuegoTest.class );
}
public void testApp()
{
Jugador jugador = new Jugador();
jugador.setNombre("Jugador1");
jugador.setSaldo(1000F);
assertEquals("Jugador1", jugador.getNombre());
assertEquals(1000F, jugador.getSaldo());
Crupier crupier = new Crupier();
crupier.setNombre("Crupier1");
crupier.getBarajar();
assertEquals("Crupier1", crupier.getNombre());
assertEquals(52, crupier.getBaraja().getCartas().size());
Baraja baraja = new Baraja();
baraja.setCartas(crupier.getBaraja().getCartas());
assertEquals(52, baraja.getCartas().size());
Carta carta = new Carta();
carta.setValor(1F);
carta.setNumero(1F);
carta.setFigura(false);
assertEquals(1F, carta.getNumero());
assertEquals(1F, carta.getValor());
Mano mano = new Mano();
mano.setCartas(baraja.getCartas());
assertEquals(52, mano.getCartas().size());
Resultado resultado = new Resultado();
resultado.setJugador("Jugador1");
resultado.setPuntuacion(21F);
assertEquals("Jugador1", resultado.getJugador());
assertEquals(21F, resultado.getPuntuacion());
}
}
#Generated by Maven
#Fri May 05 08:08:56 PET 2023
artifactId=my-app
groupId=com.mycompany.app
version=1.0-SNAPSHOT
com\mycompany\app\Crupier.class
com\mycompany\app\Juego.class
com\mycompany\app\Resultado.class
com\mycompany\app\BlackJack.class
com\mycompany\app\Mano.class
com\mycompany\app\util\ConexionBaseDatos.class
com\mycompany\app\Carta.class
com\mycompany\app\Baraja.class
com\mycompany\app\Jugador.class
com\mycompany\app\Usuario.class
C:\Users\User\OneDrive\Escritorio\portfolio\my-app\src\main\java\com\mycompany\app\Jugador.java
C:\Users\User\OneDrive\Escritorio\portfolio\my-app\src\main\java\com\mycompany\app\BlackJack.java
C:\Users\User\OneDrive\Escritorio\portfolio\my-app\src\main\java\com\mycompany\app\Juego.java
C:\Users\User\OneDrive\Escritorio\portfolio\my-app\src\main\java\com\mycompany\app\Mano.java
C:\Users\User\OneDrive\Escritorio\portfolio\my-app\src\main\java\com\mycompany\app\Baraja.java
C:\Users\User\OneDrive\Escritorio\portfolio\my-app\src\main\java\com\mycompany\app\util\ConexionBaseDatos.java
C:\Users\User\OneDrive\Escritorio\portfolio\my-app\src\main\java\com\mycompany\app\Crupier.java
C:\Users\User\OneDrive\Escritorio\portfolio\my-app\src\main\java\com\mycompany\app\Resultado.java
C:\Users\User\OneDrive\Escritorio\portfolio\my-app\src\main\java\com\mycompany\app\Carta.java
C:\Users\User\OneDrive\Escritorio\portfolio\my-app\src\main\java\com\mycompany\app\Usuario.java
C:\Users\User\OneDrive\Escritorio\portfolio\my-app\src\test\java\com\mycompany\app\JuegoTest.java
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment