JAVA WEB - ORACLE - SEMINARIO 01 - APLICACIONES JAVA WEB CON JQUERY Y AJAX
EUREKA-WEB-MYSQL-SPRING
EUREKA-WEB-ORACLE-JDBC
Java Web Lección 03: Patrón MVC
INTRODUCCIÓN
El Patrón Model-View-Controller (MVC) es el mas utilizado en desarrollo web.
Este patrón permite estructurar una aplicación web en tres capas, donde cada una tiene una responsabilidad bien definida, haciendo mas fácil el desarrollo y mantenimiento de la aplicación.
DIAPOSITIVA
CÓDIGO FUENTE - EUREKA-WEB-ORACLE-JDBC
En esta oportunidad te presento un video donde te explico cómo ejecutar el código fuente de una aplicación Java Web, utilizando HTML, CSS, JavaScript, AJAX y JSON, en la capa de persistencia se utiliza JDBC y base de datos Oracle XE 11g.
Tú tienes acceso al código fuente de esta aplicación, después del video esta el enlace.
Java Web Lección 03: Patrón MVC
INTRODUCCIÓN
El Patrón Model-View-Controller (MVC) es el mas utilizado en desarrollo web.
Este patrón permite estructurar una aplicación web en tres capas, donde cada una tiene una responsabilidad bien definida, haciendo mas fácil el desarrollo y mantenimiento de la aplicación.
DIAPOSITIVA
TALLER VIRTUAL DE SPRING FRAMEWORK
Acceso a Cursos VirtualesJava Web Lección 03: Patrón MVC
INTRODUCCIÓN
El Patrón Model-View-Controller (MVC) es el mas utilizado en desarrollo web.
Este patrón permite estructurar una aplicación web en tres capas, donde cada una tiene una responsabilidad bien definida, haciendo mas fácil el desarrollo y mantenimiento de la aplicación.
DIAPOSITIVA
CÓDIGO FUENTE - EUREKA-WEB-ORACLE-JDBC
En esta oportunidad te presento un video donde te explico cómo ejecutar el código fuente de una aplicación Java Web, utilizando HTML, CSS, JavaScript, AJAX y JSON, en la capa de persistencia se utiliza JDBC y base de datos Oracle XE 11g.
Tú tienes acceso al código fuente de esta aplicación, después del video esta el enlace.
Java Web Lección 03: Patrón MVC
INTRODUCCIÓN
El Patrón Model-View-Controller (MVC) es el mas utilizado en desarrollo web.
Este patrón permite estructurar una aplicación web en tres capas, donde cada una tiene una responsabilidad bien definida, haciendo mas fácil el desarrollo y mantenimiento de la aplicación.
DIAPOSITIVA
TALLER VIRTUAL DE SPRING FRAMEWORK
Acceso a Cursos VirtualesJAVA WEB - COMBOS ANIDADOS CON JQUERY Y JSON
Map<String, Object> rpta = new HashMap<String, Object>();
EurekaModel model = new EurekaModel();
List<Map<String, ?>> lista = model.consultarCuentas("001");
rpta.put("rpta", "1");
rpta.put("lista", lista);
Gson gson = new Gson();
String texto = gson.toJson(rpta);
System.out.println(texto);
package pe.egcc.demo.servlets;
import javax.servlet.annotation.WebListener;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;
import pe.egcc.demo.model.EurekaModel;
/**
*
* @author Eric Gustavo Coronel Castillo
* @blog gcoronelc.blogspot.com
*/
@WebListener()
public class SessionListener implements HttpSessionListener {
@Override
public void sessionCreated(HttpSessionEvent event) {
try {
EurekaModel model = new EurekaModel();
event.getSession().setAttribute("sucursales", model.cosultarSucursales());
} catch (Exception e) {
}
}
@Override
public void sessionDestroyed(HttpSessionEvent event) {
}
}
<label>Sucursal</label><br/>
<select id="cboSucursal">
<option value="000">[Seleccione sucursal]</option>
<c:forEach items="${sessionScope.sucursales}" var="rec">
<option value="${rec.codigo}">${rec}</option>
</c:forEach>
</select><br/>
<label>Cuenta</label><br/>
<select id="cboCuenta">
</select><br/>
package pe.egcc.demo.servlets;
import com.google.gson.Gson;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import pe.egcc.demo.model.EurekaModel;
/**
*
* @author Eric Gustavo Coronel Castillo
* @blog gcoronelc.blogspot.com
*/
@WebServlet(name = "DemoController", urlPatterns = {"/TraerCuentas"})
public class DemoController extends HttpServlet {
private static final long serialVersionUID = 1L;
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("application/json");
response.setCharacterEncoding("UTF-8");
PrintWriter out = response.getWriter();
Map<String, Object> rpta = new HashMap<String, Object>();
try {
// La siguiente línea es para poder apreciar el efecto AJAX.
Thread.currentThread().sleep(2000);
// Dato
String sucursal = request.getParameter("sucursal");
// Proceso
EurekaModel model = new EurekaModel();
List<Map<String, ?>> lista = model.consultarCuentas(sucursal);
rpta.put("rpta", "1");
rpta.put("lista", lista);
} catch (Exception e) {
rpta.put("rpta", "-1");
rpta.put("mensaje", e.getMessage());
}
Gson gson = new Gson();
out.print(gson.toJson(rpta));
out.flush();
out.close();
}
}
<script type="text/javascript" src="jquery/jquery-2.1.1.min.js"></script>
<script type="text/javascript">
$("#cboSucursal").change(function() {
var cboCuenta = $("#cboCuenta");
cboCuenta.empty();
var sucursal = $("#cboSucursal").val();
if (sucursal == '000') {
return;
}
var data = "sucursal=" + sucursal;
cboCuenta.append('<option value="">Cargando...</option>').val('');
$.post("TraerCuentas", data, function(objJson) {
cboCuenta.empty();
if (objJson.rpta == -1) {
alert(objJson.mensaje);
return;
}
var lista = objJson.lista;
if(lista.length > 0){
cboCuenta.append("<option value='0'>[Seleccione cuenta]</option>");
} else {
cboCuenta.append("<option value='0'>[No hay cuentas]</option>");
}
for (var i = 0; i < lista.length; i++) {
var item = "<option value='" + lista[i].cuenta + "'>" + lista[i].descripcion + "</option>";
cboCuenta.append(item);
}
});
});
$("#cboCuenta").change(function() {
var cuenta = $("#cboCuenta").val();
if(cuenta=="0"){
return;
}
alert("Cuenta: " + cuenta);
});
</script>






