Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

Классы. Основной класс и объекты.

Java — полностью объектно-ориентированный язык, все действия, выполняемые программой, находятся в методах тех или иных классов.

Описание класса начинается с ключевого слова class, после которого указывается идентификатор — имя класса. Затем в фигурных скобках перечисляются атрибуты и методы класса. Атрибуты в языке Java называются полями . Поля и методы называются членами класса. Поля описываются как обычные переменные.

Сервлеты на базе Java.

Сервлеты являются объектами, которые образуют специфический интерфейс, с помощью которого их можно свободно встраивать в Java-ориентированные Web-сервера. В отличие от апплетов, они являются облегченными Java-объектами (без графики и GUI-компонентов), но зато, будучи кроссплатформенными и динамически загружаемыми и, используя все возможности Java, они могут использовать практически любой HTML и взаимодействовать с любым браузером. Естественно, что сервлеты можно использовать и используют для доступа к базам данных, программируя все удаленные операции с базой из браузера. В настоящее время большинство Web серверов поддерживают технологию сервлетов.

Несмотря на то, что сервлеты используют HTTP-протокол, им нет необходимости перезагружать процесс при каждом новом запросе и это также повышает их быстродействие. К сожалению, когда вы используете сервлеты, опять-таки, возникает проблема использования кириллических символов. Дело в том, что стандартный путь прохождения данных тут не действует, потому что Web-сервер при старте запускает так называемый Java-handler, которому передает на выполнение все Java-сервлеты и обменивается вводом-выводом именно с ним через специальную библиотеку классов.

 

В данной курсовой работе рассмотрены были:

import javax.servlet.ServletException;

import javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

Класс сервлета DatabaseAccess, который унаследован от класса HttpServlet.Это главный класс. Плюс вспомогательные классы HttpServletRequest
HttpServletResponse
PrintWriter
ResultSet

Рассмотрим каждый класс более подробно и раскрыто.

 

1)HttpServlet. В классе HttpServlet определены методы doGet и doPost для реакции на запросы типа get и post клиента. Эти методы вызываются методом service класса HttpServlet, который, в свою очередь, вызывается при поступлении запроса на сервер. Метод service сначала определяет тип запроса, а затем вызывает соответствующий метод. При каждом вызове методы doGet и doPost класса HttpServlet принимают в качестве параметра объект, который реализует интерфейс HttpServletRequest. Web-сервер, который исполняет сервлет, создает объект HttpServletRequest и передает его методу service сервлета (который в свою очередь передает его методу doGet или doPost). Данный объект содержит запрос, поступивший от клиента.

2.ServletRequest- это инструмент для получения параметров HTTP запроса. Этот метод вызывается, чтобы проинформировать сервлет о том, что он включён как модуль для обслуживания запросов клиента. Параметр config разделяет интерфейс javax.servlet.ServletConfig, несущий информацию об окружении сервера, имени сервлета, начальных параметрах.

3.HttpServletResponse- это инструмент для отправки данных клиенту. Все методы данного инструмента служат именно этой цели: в этой функции коду, который будет обрабатывать данные, передаются два инструмента: один - для получения данных от сервера, другой - для отправки результата работы сервлета. Соответственно это параметры request и response, разделяющие интерфейсы javax.servlet.ServletRequest и javax.servlet.ServletResponse

4.В классе PrintWriter предусмотрено два конструктора, позволяющих работать с выходными потоками класса OutputStream:

public PrintWriter(OutputStream out);

public PrintWriter(OutputStream out,

boolean autoFlush);

Первый из этих конструкторов создает поток без автоматического сброса буферов.Способ сброса буферов при использовании второго конструктора зависит от значения параметра autoFlush. Если он равен true, автоматический сброс буферов выполняется, а если false - нет.

5.PrintWriter. Этот класс реализует все печати методов , найденных в PrintStream .Он не содержит методы для записи необработанных байт, для которых программа должна использовать незакодированные потоки байтов.

6.ResultSet содержит все строки, удовлетворяющие условиям в SQL-выражении и предоставляет доступ к данным в этих строках посредством набора get-методов, которые организуют доступ к колонкам текущей строки. Метод ResultSet.next используется для перемещения к следующей строке ResultSet, делая ее текущей.

7.java.sql.DriverManager обеспечивает загрузку драйверов и создание новых соединений (connection) с базой данных; это стержневой интерфейс JDBC, определяющий корректный выбор и инициализацию драйвера для данной СУБД в данных условиях;

8.java.sql.Connection определяет характеристики и состояние соединения с БД; кроме того, он предоставляет средства для контроля транзакций и уровня их изолированности;

9.java.sql.Statement выполняет функции контейнера по отношению к SQL-выражению; при этом под выражением понимается не только сам текст запроса, но и такие характеристики, как параметры и состояние выражения;

 

 

 

Один из вариантов использования

 

Кратко рассмотрим предметную область автоматизируемой задачи.

При оптовых покупках число товаров ограничено и, зачастую, очень сложно бывает приобрести нужный регистр или счетчик. В связи с этим существует так называемое «заказа продукции на склад магазина ». В процессе заказа клиент вносит в качестве залога небольшую сумму и получает взамен гарантию того, что он точно получит необходимый товар.

Если нет возможности заказать продукцию нужной марки, оператор предлагает покупателю приобрести такой же товар только другой фирмы, которая уже находится на складе магазина, если клиент соглашается, то оператор составляет бланк о купле продаже.

Следовательно, если клиент настоял на заказе продукции именно интересующей марки. Оператор должен связаться с фирмой-поставщиком товаров и делает заказ нужной продукции и узнает сроки поступления товара и сообщает эту информацию покупателю. В назначенный покупатель звонит или приходит в магазин и беспрепятственно приобретает нужный товар, заплатив оставшуюся сумму. Если же покупатель в течение долго времени не забирает товар со склада, то товар начинает распродаваться покупателям, а излишки отправляются на склад поставщика, а сумма залога взымается, как штраф, а договор о купле продажи аннулируется.

Розничная торговля протекает менее проблематично, так как небольшое количество товара всегда находится на складе магазина. Покупателю нужно прийти в точку продажи микросхем и приобрести нужную продукцию. Или заказать ее по телефону связавшись с оператором или менеджером точки продаж.

 

В данном случае возможными «узкими местами» могут быть:

- клиент невнятно произнес данные – ошибка при заказе продукции, можно рекомендовать покупателям приезжать в точку продаж заполнять специальные карточки (формы) печатными буквами и т.д.

- журнал заказов может быть утерян, у оператора может быть плохой почерк, ведение электронного хранилища позволит решить эту проблему.

 

Последовательность действий для одного варианта использования

 

Заходя в систему, пользователь видит перед собой следующую панель

 

Что бы добавить продукцию пользователь должен нажать левой клавишей мышки по кнопке «добавить». Перед ним выходит панель с пустыми полями, которые пользователю нужно заполнить.

 
 

 


 

Что бы введенные данные отразились в таблице, пользователю нужно нажать левой кнопкой мыши кнопку «подтвердить»

 
 

 

 


 

Если пользователь ошибся и ему нужно изменить ошибку ему нужно нажать левой клавишей мышки кнопки «редактировать», изменить данные которые нужно и нажать кнопку «подтвердить»

 
 

 


 

Если требуется сортировка продукции, тогда оператору нужно ввести в поле данные по которым он хочет что бы произвелась сортировка ( в данном случае по имени).

 
 

 

 


Нажимаем кнопку подтвердить и получаем :

 
 

 


 

Что бы произвести удаление продукции нужно нажать галочку левой кнопкой мыши рядом с не нужной строкой

 

 

Нажимаем левой кнопкой мыши подтвердить и получаем: