Murach의 Java Servlets 및 JSP 2nd Edition을 읽었습니다. 그는 .bat 파일을 통해 자동으로 설치되는 데이터베이스를 제공합니다.sql/java 이외에 무엇을 해야할지 모르겠다
나는 그의 예를 시험해 보았고 잘 동작합니다.
이제 데이터베이스를 사용하여 on을 만들려고하고 있는데 아무 일도 일어나지 않았습니다.
JSP : : 이미 많은 것들을 시도하고 나는 데이터베이스 아무것도에 검사 할 때 무슨 일이 일어나고
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
/**
*
* @author Camus
*/
public class addToEmailList extends HttpServlet {
/**
* Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String firstName = request.getParameter("firstName");
String lastName = request.getParameter("lastName");
String emailAddress = request.getParameter("emailAddress");
User user = new User();
user.setFirstName(firstName);
user.setLastName(lastName);
user.setEmailAddress(emailAddress);
String query ="DELETE FROM user WHERE FirstName = 'Diogo'";
try {
String dbURL="jdbc:mysql://localhost:3306/murach";
String username ="root";
String password = "sesame";
Connection connection = DriverManager.getConnection(dbURL, username, password);
Statement statement = connection.createStatement();
statement.executeUpdate(query);
connection.close();
}
catch (Exception e) {
e.printStackTrace();
}
String URL = "/result.jsp";
RequestDispatcher dispatcher = getServletContext().getRequestDispatcher(URL);
dispatcher.forward(request, response);
}
// <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
/**
* Handles the HTTP <code>GET</code> method.
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
/**
* Handles the HTTP <code>POST</code> method.
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
/**
* Returns a short description of the servlet.
* @return a String containing servlet description
*/
@Override
public String getServletInfo() {
return "Short description";
}// </editor-fold>
}
<%--
Document : index
Created on : 27/01/2012, 9:20:02 AM
Author : Camus
--%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Form</title>
</head>
<body>
<h1>Type your information here!</h1>
<form action="addToEmailList" method="get">
<input type="text" name="firstName">First Name<br>
<input type="text" name="lastName"> Last Name<br>
<input type="text" name="emailAddress"> email
<input type="submit" value="Submit">
</form>
</body>
</html>
서블릿 여기에 다음과 같은 코드입니다. 다른 쿼리를 시도했지만 다시 업데이트되지 않았습니다. 너희들 내가 뭘 잘못하고 있는지 실마리가 있니?
도와주세요. 나는 그것이 기본적인 실수가되어야한다고 생각하지만, 나는 배우면서 실제로 무슨 일이 일어나고 있는지 모른다.
미리 감사드립니다.
답장을 보내 주셔서 감사합니다. 내가 말했듯이 나는 모든 것을 시도하고 있었다. 내 DB가 업데이트되는지 여부를 확인하는 가장 빠른 방법이기 때문에이 쿼리를 사용하고 있습니다. 처음에는 선택을 시도했지만 작동하지 않았습니다. – Camus
다시 한번 감사드립니다. 하지만 내가 말했듯이 나는 초보자에 불과하다. 나는 인터페이스와 지속성이 무엇을 의미하지 않습니다. 감사합니다 – Camus
학습 할 시간입니다. 지속성은 "데이터베이스 또는 파일 시스템에 저장하여 응용 프로그램이 실행되지 않아도 데이터를 사용할 수 있음"을 의미합니다. 그것은 실행 사이에 "지속"합니다. – duffymo