importar las librerías de mysql y las de primefaces.
Crear un nuevo archivo xml para el manejo de la base de datos en el directorio meta-inf
y llamarlo context y modificarlo con la siguiente informacion.
<?xml version="1.0" encoding="UTF-8"?>
<Context>
<Resource auth="Container" description="BD Programador"
name="jdbc/ReservasOnline" type="javax.sql.DataSource"
password="jaindakund" driverClassName="com.mysql.jdbc.Driver"
maxIdle="2" maxWait="5000" validationQuery="select 1"
username="root" url="jdbc:mysql://localhost:3306/ReservasOnline" maxActive="4" />
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<WatchedResource>META-INF/context.xml</WatchedResource>
</Context>
Despues crear la clase InitListener
import java.sql.Connection;
import java.sql.SQLException;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.servlet.ServletContext;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.annotation.WebListener;
import javax.sql.DataSource;
@WebListener
public class InitListener implements ServletContextListener { public InitListener() { }
public void contextInitialized(ServletContextEvent sce) {
DataSource fuenteDatos = null;
Context ctx;
try {
ServletContext sc = sce.getServletContext();
ctx = new InitialContext();
fuenteDatos = (DataSource) ctx.lookup("java:comp/env/jdbc/ReservasOnline");
Connection cn = fuenteDatos.getConnection();
sc.setAttribute("datasource", cn);
} catch (NamingException e) {
throw new RuntimeException(e.getMessage());
} catch (SQLException e) {
throw new RuntimeException(e.getMessage());
}
}
public void contextDestroyed(ServletContextEvent sce) { }
}
Si quieres hacer una instruccion sql este es un ejemplo para ingresar un dato.
public Boolean ingresar(ActividadDTO actividad, Connection conection)throws SQLException {
try{
String p = "INSERT INTO actividades (`Codigo`, `nombre`) VALUES " + "('"+actividad.getCodigoActividad()+"' ,'"+actividad.getNombreActividad()+"')";
PreparedStatement instruccion = conection.prepareStatement(p);
instruccion.executeUpdate();
return true;
}
catch (Exception e){
return false;
}
}
_______________________________ACTUALIZAR____________________________________
public Boolean Actualizar(ActividadDTO actividad, Connection conexion)throws SQLException {
try{
String p = "UPDATE `actividades` SET `nombre`='"+actividad.getNombreActividad()+"' WHERE `Codigo`='"+actividad.getCodigoActividad()+"'";
PreparedStatement instruccion = conexion.prepareStatement(p);
instruccion.executeUpdate();
return true;
}
catch (Exception e){
return false;
}
}
______________________________________LISTAR__________________
public List<ActividadDTO> consultarActividad(Connection conexion, ActividadDTO actividad) throws Exception {
List<ActividadDTO> listActividad = new ArrayList<ActividadDTO>();
PreparedStatement ps;
if (actividad.getNombreActividad()==""){
ps = conexion.prepareStatement("SELECT * FROM actividades");
}
else {
ps = conexion.prepareStatement("SELECT * FROM actividades where nombre like '%"+actividad.getNombreActividad()+"%'");
}
ResultSet rs = ps.executeQuery();
while (rs.next()){
ActividadDTO actividadDTO = new ActividadDTO();
actividadDTO.setCodigoActividad(rs.getString("codigo"));
actividadDTO.setNombreActividad(rs.getString("Nombre"));
listActividad.add(actividadDTO);
}
rs.close();
return listActividad;
}