как преобразовать этот код Java в сервлеты - PullRequest
0 голосов
/ 27 декабря 2011

Я новичок в сервлете. Я пытаюсь подключиться к базе данных, используя Java с JDBC и OJDBC. Я уже написал код Java для этого. Теперь мне нужно запустить его на сервере Tomcat. Поэтому я выбрал сервлет. Я сделал это с помощью IDE Netbeans, там я выбрал сервлет и дал имя класса в качестве имени сервлета в web.xml. Я не знаю, где я сделал неправильно. Итак, я публикую рабочий код Java:

public class convert {

    int i = 0, j = 0, k = 0;
    Connection conn = null;
    Connection connection = null;
    static int count = 0;

    // Following variables are required for assigning resultset values from
    // excel spreadsheet
    String name[] = null;
    String Title[] = null;

    Statement stmt1 = null;
    ResultSet NumOfRows = null;
    Statement stmt2 = null;
    ResultSet SpreadsheetValues = null;
    Statement stmt3 = null;
    ResultSet rs3 = null;

    int Rowcount = 0;

    // this static function required to connect database
    static {
        try {
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        } catch (ClassNotFoundException ex) {
            Logger.getLogger(spreadsheet2db.class.getName()).log(
                    Level.SEVERE, null, ex);
        }
    }

    // connect Sql database
    void ConnectSqlDB() throws SQLServerException, SQLException {
        // code
    }

    void ConnectExcelDB() throws SQLException {
        conn = DriverManager.getConnection("jdbc:odbc:condb", "", "");
    }

    // getRowcount() will return number of rows present in spreadsheet
    // Result of rowcount is used for array size
    void getRowcount() throws SQLException {
        // System.out.println("Number of rows in spreadsheet");
        // System.out.println(Rowcount);
    }

    void sheetValues() throws SQLException {
        stmt2 = conn.createStatement();
        // ExcelQueryString2 will give values of attributes
        while (SpreadsheetValues.next()) {
            // Assigning Spread sheet values to String array
            Cname[j] = SpreadsheetValues.getString("name");
            Title[j] = SpreadsheetValues.getString("Title");
            j++;
        }
    }

    public static void main(String args[]) throws SQLServerException,
            SQLException {
        convert a = new convert();
        a.ConnectSqlDB();
        a.ConnectExcelDB();
        a.getRowcount();
        a.sheetValues();
    }
}

Я хочу знать, как я могу преобразовать этот код в сервлет?

Ответы [ 2 ]

2 голосов
/ 27 декабря 2011

Чтобы принять запрос сервлета, вам нужно расширить свой класс до HttpServlet (из servlet-api.jar) и переопределить его метод doGet() и doPost() соответственно.

Запрос отправляется с использованием POST метод или GET метод.Это зависит от того, какой метод вы используете.

Соединение JDBC выполняется внутри doGet() или doPost() или другого переопределенного метода init()

Для этого вам потребуется добавитьВнешний Jar (servlet-api.jar из apache) для вашего проекта.

1 голос
/ 27 декабря 2011

Для начала вы должны сначала понять основы сервлета. Может быть, вы можете обратиться к некоторым простым учебникам по сервлету, а может быть к примеру проекта. Вот ссылка на Java Tutorial от Oracle: http://docs.oracle.com/javaee/5/tutorial/doc/bnafd.html

По-моему, сначала попробуйте сделать простую работу. Может быть, просто печатать «Hello World». Как только вы поймете, как работает Sevlet, вы можете попытаться интегрироваться с другой частью кода, такой как детали JDBC. Также убедитесь, что ваша часть JDBC работает сама по себе.

Поскольку вы новичок в Servelt, у вас будут трудности с отладкой больших классов Serrvlet, упростите их и постарайтесь прояснить основы.

...