Программирование на Java 2020-2021 учебный год Контроль самостоятельной работы 3 Стандартная библиотека Java. Работа с базами данных Пример 1. Добавление данных в существующую БД compstore. show columns from products; +---------------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +---------------+-------------+------+-----+---------+----------------+ | Id | int(11) | NO | PRI | NULL | auto_increment | | ProductName | varchar(20) | YES | | NULL | | | CountProducts | int(11) | YES | | NULL | | +---------------+-------------+------+-----+---------+----------------+ select * from products; +----+-------------+---------------+ | Id | ProductName | CountProducts | +----+-------------+---------------+ | 1 | notebooks | 34 | | 2 | keyboards | 12 | | 3 | display | 23 | +----+-------------+---------------+ import java.sql.*; public class testdrive8{ public static void main(String[] args) { try{ String url = "jdbc:mysql://localhost/compstore?serverTimezone=Europe/Moscow&useSSL=false"; String username = "root"; String password = ""; Class.forName("com.mysql.cj.jdbc.Driver").getDeclaredConstructor().newInstance(); String sqlCommand = "INSERT products(ProductName, CountProducts) VALUES ('video cards', 22)," + "('CPU', 33), ('motherboard', 11)"; try (Connection conn = DriverManager.getConnection(url, username, password)){ System.out.println("Connection to Computers Store DB with alias compstore succesfull!"); Statement statement = conn.createStatement(); int rows = statement.executeUpdate(sqlCommand); System.out.printf("Added %d rows \n", rows); conn.close(); System.out.println("Connection to Computers Store DB with alias compstore closed..."); } } catch(Exception ex){ System.out.println("Connection failed..."); System.out.println(ex); } } }
Пример 2.
Перейти. Урок 101. Создаем свой ContentProvider.
Упражнения 1. К примеру 1 создайте приложение форму для заполнения БД в графическом интерфейсе с помощью библиотеки Swing.
Перейти. Head First Java Авторы: Kathy Sierra, Bert Bates. Приложение с графическим интерфейсом, с. 366.
Пример 1 Простейшая анимация, с. 366. 2nd Edition, p.384 The complete simple animation code https://books.google.ru/books?id=nzhxR1spWEYC Head First Java Авторы: Kathy Sierra, Bert Bates
Примерные вопросы и задания к экзамену Теоретические вопросы 1. Основные понятия объектно-ориентированного программирования (ООП). 2. Разработка программ на основе ООП. 3. Наследование и полиморфизм в ООП. 4. Структура проекта в Java. 5. Форма и модуль как взаимосвязанные компоненты приложения. 6. Операторы циклов. Структурные команды перехода. 7. Переменные и константы в Java. Синтаксис объявления, использование, размещение в памяти. 8. Модуль формы, структура модуля, заготовка модуля формы. 9. Интегрированная среда разработки Eclipse 10. Операторы и компоненты ввода-вывода данных. Назначение, принципы использования, основные свойства. 11. Типы свойств. Назначение типичных свойств компонентов. 12. Этапы разработки приложения 13. Основные правила создания интерфейса. 14. Возможности языка высокого уровня программирования общего назначения Java по организации и использованию диалогов. 15. Возможности интегрированной среды разработки Eclipse по организации и использования диалогов, диалоговых окон. 16. Тестирование и отладка приложений. Практика (одна из задач) 1. Создать проект, позволяющий сохранять произвольный текст в текстовом файле с указанным пользователем именем. Загружать текст из файла. 2. Создать проект, позволяющий сохранять текст, набранный в текстовом окне в файле данных, очищать текстовое окно и загружать в него сохраненный текст. 3. Создать проект, позволяющий построить треугольник по координатам вершин. 4. Имеется десять флажков. Создать проект, позволяющий сохранять состояние флажков, обнулять и восстанавливать сохраненное состояние. 5. Организовать анимацию процесса движения шарика по окружности. 6. Создать проект, реализующий часы с «будильником». 7. Проект содержит три текстовых окна. Используя буфер обмена, организовать обмен информацией между приложениями. 8. Создать проект, позволяющий добавлять записи в простой список и удалять их. 9. Построить на экране правильный N-угольник. Количество вершин и радиус окружности, на которой они расположены, указываются пользователем. 10. Построить график функции в выбранной пользователем системе координат. 11. Составить программу, генерирующую цвет по трем его составляющим (красный, зеленый, синий). 12. Составить программу, моделирующую работу светофора. 13. Написать программу, моделирующую движение броуновской частицы. 14. На форме имеется десять командных кнопок (пронумерованных от 1 до 10) и графический контейнер. При нажатии на одну из кнопок в контейнере должно появиться соответствующее римское число. 15. Разработать программу в Java, позволяющую заполнять двумерный массив с указанным пользователем количеством срок и столбцов и находить среднее арифметическое в каждой строке и в каждом столбце. 16. Разработать проект, моделирующий арифметический калькулятор. Калькулятор должен выполнять следующие операции: сложение, вычитание, умножение, деление, возведение в квадрат и извлечение квадратного корня как для целых, так и для вещественных чисел. 17. Создать проект, моделирующий работу секундомера. Секундомер должен иметь циферблат с минутной и секундной стрелками, метку и одну командную кнопку. 18. Разработайте проект, имитирующий работу простейшего графического редактора. Создать проект, позволяющий сохранять произвольный текст в текстовом файле с указанным пользователем именем. Загружать текст из файла. Создать проект, позволяющий сохранять текст, набранный в текстовом окне в файле данных, очищать текстовое окно и загружать в него сохраненный текст. Имеется десять флажков, CheckBox. Создать проект, позволяющий сохранять состояние флажков, обнулять и восстанавливать сохраненное состояние. Проект содержит три текстовых окна. Используя буфер обмена, организовать обмен информацией между приложениями. Создать проект, позволяющий добавлять записи в простой список и удалять их. На форме имеется десять командных кнопок (пронумерованных от 1 до 10) и графический контейнер. При нажатии на одну из кнопок в контейнере должно появиться соответствующее римское число. Разработать программу в Java, позволяющую заполнять двумерный массив с указанным пользователем количеством срок и столбцов и находить среднее арифметическое в каждой строке и в каждом столбце. Разработать проект, моделирующий арифметический калькулятор. Калькулятор должен выполнять следующие операции: сложение, вычитание, умножение, деление, возведение в квадрат и извлечение квадратного корня как для целых, так и для вещественных чисел. 5.1. Основная литература 1. Васюткина, И. А. Технология разработки объектно-ориентированных программ на JAVA : учебно-методическое пособие / И. А. Васюткина. — Новосибирск : Новосибирский государственный технический университет, 2012. — 152 c. — ISBN 978-5-7782-1973-1. — Текст : электронный // Электронно-библиотечная система IPR BOOKS : [сайт]. — URL: http://www.iprbookshop.ru/45047.html (дата обращения: 19.04.2017). 2. Зудилова, Т. В. Web-программирование JavaScript / Т. В. Зудилова, М. Л. Буркова. — Санкт-Петербург : Университет ИТМО, 2012. — 68 c. — ISBN 2227-8397. — Текст : электронный // Электронно-библиотечная система IPR BOOKS : [сайт]. — URL: http://www.iprbookshop.ru/65749.html (дата обращения: 19.04.2017). 3. Мухаметзянов, Р. Р. Основы программирования на Java : учебное пособие / Р. Р. Мухаметзянов. — Набережные Челны : Набережночелнинский государственный педагогический университет, 2017. — 114 c. — ISBN 2227-8397. — Текст : электронный // Электронно-библиотечная система IPR BOOKS : [сайт]. — URL: http://www.iprbookshop.ru/66812.html (дата обращения: 19.04.2017). 5.2. Дополнительная литература 1. Программирование на языке Java : конспект лекций / А. В. Гаврилов, С. В. Клименков, А. Е. Харитонова, Е. А. Цопа. — Санкт-Петербург : Университет ИТМО, 2015. — 123 c. — ISBN 2227-8397. — Текст : электронный // Электронно-библиотечная система IPR BOOKS : [сайт]. — URL: http://www.iprbookshop.ru/68692.html (дата обращения: 19.04.2017). 2. Программирование на языке высокого уровня : методические указания и варианты заданий для студентов направления подготовки 09.03.01 Информатика и вычислительная техника / составители С. П. Зоткин. — Москва : Московский государственный строительный университет, Ай Пи Эр Медиа, ЭБС АСВ, 2016. — 89 c. — ISBN 978-5-7264-1277-1. — Текст : электронный // Электронно-библиотечная система IPR BOOKS : [сайт]. — URL: http://www.iprbookshop.ru/46060.html (дата обращения: 19.04.2017). — Режим доступа: для авторизир. пользователей 6. Перечень ресурсов информационно-телекоммуникационной сети «Интернет», профессиональных баз данных и информационных справочных систем, используемых при осуществлении образовательного процесса по дисциплине 6.1 Перечень ресурсов информационно-коммуникационной сети «Интернет», необходимых для освоения дисциплины 1. https://sites.google.com/site/ifizmat/java. – Изучение языка программирования Java. 2. 2. https://sites.google.com/site/ifizmat/android. – Android. 3. https://books.google.ru/books?id=KXQrAQAAQBAJ. – Head First Java: A Brain-Friendly Guide Авторы: Kathy Sierra, Bert Bates 4. https://books.google.ru/books?id=nzhxR1spWEYC. – Head First Java Авторы: Kathy Sierra, Bert Bates 5. https://books.google.ru/books?id=zVpUBQAAQBAJ. – Программирование на Java Авторы: Патрик Нимейер, Дэниэл Леук 6. https://metanit.com/java/tutorial. – Руководство по языку программирования Java Леднева, С. Ю. Программирование на Java. Ч.1 : лабораторный практикум / С. Ю. Леднева, Н. В. Ефимушкина, А. А. Цыганов. — Самара : Самарский государственный технический университет, ЭБС АСВ, 2015. — 159 c. — ISBN 2227-8397. — Текст : электронный // Электронно-библиотечная система IPR BOOKS : [сайт]. — URL: http://www.iprbookshop.ru/90875.html (дата обращения: 05.04.2020). — Режим доступа: для авторизир. пользователей