Por favor explique en detalle. jsp opera mysql para implementar funciones de agregar, modificar y eliminar. Espero que el código detallado y los comentarios ayuden a algunos principiantes a explicarlo. Estoy muy agradecido.
Importar Java. io. inputstream;
Importar Java.*;
Importar propiedades de Java;
p >
Clase pública ConnDB {
Conexión pública conn = null
declaración pública stmt = null
Conjunto de resultados públicos rs = null
Cadena estática privada prop filename = "/com/conn db. properties" //Especifique la ubicación para guardar los archivos de recursos.
Propiedad estática privada prop = new Properties();
Cadena estática privada nombre de clase db = " com . MySQL . JDBC . driver
Estática privada "; string dbUrl =
"JDBC:MySQL://127.0.0.1:3306/db_mydb?user=root&password=111&useunicode=true";
Base de datos de conexión pública(){
Pruebe {
InputStream in=getClass(). getResourceAsStream(prop filename);
Prop load(inch); //Carga el archivo de propiedades a través del objeto de flujo de entrada.
DB CLASS NAME = prop . getproperty(" DB _ CLASS _ NAME "); //Obtener el controlador de la base de datos
dbUrl = prop.getProperty("DB_URL ",
"JDBC:MySQL://127.0.0.1:3306/db_library sys?user=root&password=111&use unicode=true");
}
Catch (Exception e) {
e . printstacktrace(); // Salida de información de excepción
}
}
Conexión estática pública. getConnection() {
Conexión=null;
Pruebe {
Class.forName(dbClassName). nueva instancia();
conn = administrador de controladores getconnection(dbUrl);
}
catch(Exception ee) {
ee . printstacktrace();
}
if (conn == null) {
System.err.println(
" Advertencia: dbconnectionmanager.getconnection() no puede obtener el enlace de la base de datos.
\ r \ n \ r \Tipo de enlace: "+
nombre de clase db+" \ r \ n r \ nUbicación del enlace: "+dbUrl);
}
Volver al conector;
}
/*
*Función: Ejecutar sentencia de consulta
*/
Conjunto de resultados público ejecutarQuery(String sql) {
Pruebe {
conn = getConnection();
stmt = conn create Statement(ResultSet. TYPE_SCROLL_INSENSITIVE<. /p>
Conjunto de resultados. CONCUR_READ_ONLY);
RS = stmt. ejecutar consulta (SQL);
} catch (SQLException ex) {
sistema . err . println(ej. getmessage());
}
Devuelve RS; p>
*Función: realizar operación de actualización
*/
public int ejecutarUpdate(string sql) {
int result = 0; >
Pruebe {
conn = getConnection(); // Llame al método getConnection() para construir la instancia conn del objeto de conexión
stmt = conn. (ResultSet. TYPE_SCROLL_INSENSITIVE
Conjunto de resultados. CONCUR _ READ _ SOLAMENTE);
resultado = stmt ejecutar actualización(SQL); } catch (SQLException ex) {
Resultado = 0;
}
Devolver resultado
} p>
/*
*Función: Cerrar la conexión a la base de datos
*/
Public void close() {
try. {
if (rs!= null) {
RS . close();
}
if (stmt ! = nulo) {
stmt . close();
}
if (conectar! = nulo) {
conectar. ();
}
} catch(Excepción e) {
e . printstacktrace(system . err); /p>
}
}
//Parte de la operación
Acción de importación org.Apache *;
Importar javax.servlet..película de acción.
ManagerForm
Importar com . Dao .manager Dao;
Importar servlet javax .
Operación de extensión de administrador de clase pública
administrador privado Dao administrador Dao = null;
Administrador público(){
este administrador Dao = nuevo administrador Dao();
}
Ejecución pública de ActionForward (mapeo de acciones, formulario ActionForm,
solicitud HttpServletRequest, respuesta HttpServletResponse){
cadena acción = solicitud getparameter(" acción ");
System.out.println("Cadena de consulta obtenida: "+acción);
if (acción == null || " ". Igual a (acción)){
Devolver mapeo. buscar adelante(" error ");
} else if ("Iniciar sesión". Igual a (acción)) {
return managerLogin(mapeo, formulario). , solicitud, respuesta);
} else if ("managerAdd"). es igual (acción)){
return managerAdd(mapa, formulario, solicitud, respuesta);
} else if ("managerQuery"). es igual (acción)){
return managerQuery(mapa, formulario, solicitud, respuesta);
} else if ("managerModifyQuery"). es igual (acción)){
return managerModifyQuery(mapa, formulario, solicitud, respuesta);
} else if ("managerModify"). es igual(acción)){
return managerModify(mapa, formulario, solicitud, respuesta);
} else if ("managerDel ". es igual(acción)){
return managerDel(mapeo, formulario, solicitud, respuesta);
} else if ("querypwd ". es igual a (acción)) {
return pwdQuery(mapeo, formulario , Solicitud, respuesta);
} else if ("modifypwd ".
igual a (acción)){
Devolver modificarpwd(mapa, formulario, solicitud, respuesta);
}
Request.setAttribute("error "," ¡La acción falló ");
Devolver asignación. find forward(" error ");
}
//Autenticación del administrador
Inicio de sesión público ActionForward managerLogin (mapeo de ActionMapping, formulario ActionForm,
solicitud HttpServletRequest, respuesta HttpServletResponse) {
formulario de administrador formulario de administrador = (formulario de administrador)
formulario de administrador. setname(formulario de administrador. getname());
formulario de administrador set pwd(formulario de administrador. get pwd());
int ret = administrador de verificación. (formulario de administrador);
System.out.print("Valor del resultado de verificación ret: "+ret);
if (ret == 1) {
http sesión sesión = solicitud . getession();
session.setAttribute("manager ", formulario de administrador . getname());
return find forward(" managerLoginok). ");
} En caso contrario {
Request.setAttribute("error ", "¡El nombre de administrador o la contraseña que ingresó son incorrectos!");
Volver mapeo .find forward(" error ");
}
}
//Consulta información del administrador
Acción privadaConsulta del administrador de avance( mapeo de acciones, formulario ActionForm,
solicitud HttpServletRequest, respuesta HttpServletResponse){
String str = null
solicitud set atributo ("consulta del administrador", administrador Dao. . consulta(str));
retorno de asignación . findford("consulta del administrador"
}
//Agregar información del administrador
agregar administrador privado de ActionForward (mapeo de acción, formulario ActionForm,
solicitud HttpServletRequest, respuesta HttpServletResponse){
formulario de administrador formulario de administrador = (formulario de administrador)
<; p>manager form . setname(manager form . getname()); //Obtener y establecer el nombre del administrador.formulario del administrador. set pwd(formulario del administrador. get pwd()); //Obtener y establecer la contraseña
int ret = manager Dao // Llamar al formulario del administrador. Para agregar información del administrador
if (ret == 1) {
return maping . findford(" managerAdd "); //Vaya a la página donde se agregó correctamente la información del administrador.
} else if (ret == 2) {
Request.setAttribute("error ", "¡Se ha agregado información del administrador!");//Guarde la información del error en el parámetros de error.
Devolver mapeo. find forward(" error "); //Vaya a la página de aviso de error.
}En caso contrario{
Request.setAttribute("error", "¡Error al agregar información del administrador!");//Guarde la información del error en el parámetro de error.
Devolver mapeo. find forward(" error "); //Vaya a la página de aviso de error.
}
}
//Consultar y modificar información del administrador
El administrador privado de ActionForward modifica la consulta (mapeo de mapeo de acciones,
p>
Formulario ActionForm, solicitud HttpServletRequest,
respuesta HttpServletResponse) {
formulario de administrador formulario de administrador = (formulario de administrador)
>manager form. setid(integer . value of(request . getparameter(" id "))); //Obtener y configurar el número de ID de administración
system print(" ID encontrado:ID: "+request . getparameter (" ID "));
solicitud . set atributo (" consulta del administrador si ", managerDAO
. query_update(formulario del administrador));
return mapeo . findford(" managerQueryModify "); //Vaya a la página donde los permisos se configuraron correctamente.
}
//Consulta al cambiar contraseña
consulta privada ActionForward pwd (mapeo de acciones, formulario ActionForm,
solicitud HttpServletRequest, HttpServletResponse respuesta){
formulario del administrador formulario del administrador =(formulario del administrador) formulario;
sesión http sesión = solicitud();
Administrador de cadenas =( Cadena )session.get atributo(" administrador ");
managerForm.setName(administrador);
System.out.print("Administrador encontrado:"+administrador);
p>
solicitud. establecer atributo(" pwdQueryif ", administrador Dao. consulta _ pwd(formulario de administrador));
retorno de búsqueda(" pwdQueryModify "); p>
}
//Modificar información del administrador
Modificación del administrador privado de ActionForward (mapeo de acciones, formulario ActionForm,
solicitud HttpServletRequest, respuesta HttpServletResponse){ p>
formulario del administrador formulario del administrador =(formulario del administrador) formulario;
formulario del administrador setid(formulario del administrador. getid()); //Obtenga y establezca el número de identificación del administrador.
formulario del administrador . setname(formulario del administrador . getname()); //Obtener y configurar el nombre del administrador
formulario del administrador . //Obtener y configurar la contraseña de administrador
formulario de administrador. set sysset(formulario de administrador. get sysset()); //Obtener y configurar los permisos de configuración del sistema
formulario de administrador. formulario de administrador. getreaderset()); //Obtener y configurar permisos de administración de lectores
formulario de administrador. setbookset(formulario de administrador. getbookset());
formulario de administrador . setborrowback(formulario de administrador . getborrowback()); //Obtener y configurar permisos de préstamo de libros.
formulario de administrador. set sysquery(formulario de administrador. get sysquery()); //Obtener y configurar permisos de consulta del sistema.
int ret = manager Dao update(manager form); // Llame al método para establecer permisos de administrador.
if (ret == 0) {
Request.setAttribute("error ", "¡Error al establecer permisos de administrador!"); // Guarde el mensaje de error en el parámetro de error. .
Devolver mapeo. find forward(" error "); //Vaya a la página de aviso de error.
}De lo contrario {
devolver mapeo. findford(" manager modifique "); //Vaya a la página donde los permisos se configuraron correctamente.
}
}
//Eliminar información del administrador
Administrador privado de ActionForward del(mapeo de acciones, formulario ActionForm,
} p>
Solicitud HttpServletRequest, respuesta HttpServletResponse){
formulario del administrador formulario del administrador =(formulario del administrador) formulario;
formulario del administrador setid(entero. valor de. (request . getparameter (" id "))); //Obtener y configurar el número de identificación del administrador.
int ret = manager Dao .delete(manager form); //Llame al método delete() para eliminar información.
if (ret == 0) {
Request.setAttribute("error ", "¡Error al eliminar la información del administrador!"); // Guarde el mensaje de error en el parámetro de error. .
Devolver mapeo. find forward(" error "); //Vaya a la página de aviso de error.
}De lo contrario, {
returnmaping.findforward("managerdel");//Ingrese con éxito a la página de eliminación de información del administrador.
}
}
//Modificar contraseña de administrador
ActionForward privado modificar pwd(mapeo de acciones, formulario ActionForm,
p>
Solicitud HttpServletRequest, respuesta HttpServletResponse){
formulario del administrador formulario del administrador =(formulario del administrador) formulario;
formulario del administrador setname(formulario del administrador. getname(. ));
formulario de administrador. set pwd(formulario de administrador. get pwd());
int ret = administrador de actualización pwd(formulario de administrador). p>if (ret == 0) {
Request.setAttribute("Error", "¡Error al cambiar la contraseña!");
Devolver mapeo buscar hacia adelante(" error ". );
p>
}De lo contrario {
devolver mapeo . findford(" pwd modificar "); }
}