Автоматизированная система составления расписания в школе

Проблемы автоматизации деятельности учебного заведения. Сущность процесса составления расписания занятий в школе. Описание основных алгоритмов приложения. Особенность настройки и запуска системы. Анализ результатов тестирования разработанной программы.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 11.10.2015
Размер файла 1,4 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

ttm = tto.initRows(ttm);

oos.writeObject(ttm);

}

if(str.equals("update teachers table"))

{

System.out.println(str);

TeachersTableModel ttm;

ttm = (TeachersTableModel) ois.readObject();

TeachersTableOperation tto = new TeachersTableOperation();

tto.update(ttm);

}

if(str.equals("send classes table")){

System.out.println(str);

ClassesTableModel ctm = new ClassesTableModel(new String[]{"Параллель", "Буква"});

ClassesTableOperation cto = new ClassesTableOperation();

ctm = cto.init(ctm);

oos.writeObject(ctm);

}

if(str.equals("update classes table"))

{

System.out.println(str);

ClassesTableModel ctm;

ctm = (ClassesTableModel) ois.readObject();

ClassesTableOperation cto = new ClassesTableOperation();

cto.update(ctm);

}

if(str.equals("exit")){

break;

}

if(str.equals("send school")) {

System.out.println(str);

ObjectInputStream in = new ObjectInputStream(new FileInputStream("school.txt"));

School school = (School)in.readObject();

oos.writeObject(school);

}

if(str.equals("sending teacherstimetable")) {

System.out.println(str);

TeachersTimeTableModel tttm;

TeachersTimeTableOperation ttto = new TeachersTimeTableOperation();

tttm = (TeachersTimeTableModel) ois.readObject();

ttto.update(tttm);

}

if(str.equals("send teacherstimetable")) {

System.out.println(str);

TeachersTimeTableModel tttm = new TeachersTimeTableModel(new String[]{"Учитель", "Время", "Понедельник", "Вторник",

Среда", "Четверг", "Пятница", "Суббота"});

TeachersTimeTableOperation ttto = new TeachersTimeTableOperation();

tttm = ttto.init(tttm);

oos.writeObject(tttm);

}

ois.close();

oos.close();

socket.close();

public class MySQLConnector {

private static final String URL = "jdbc:mysql://localhost:3306/timetable";

private static final String USERNAME = "root";

private static final String PASSWORD = "root";

private Connection connection;

public Connection getConnection() {

return connection;

}

public MySQLConnector(){

try {

Driver driver = new FabricMySQLDriver();

DriverManager.registerDriver(driver);

connection = DriverManager.getConnection(URL, USERNAME, PASSWORD);

}

catch(SQLException e){

e.printStackTrace();

}

}

public ResultSet executeQuery(String query) throws SQLException {

Statement statement = this.getConnection().createStatement();

ResultSet res = statement.executeQuery(query);

return res;

}

public class GeneratePupilsTable {

public GeneratePupilsTable(){}

public Object replaceTeachersAndSubjects(Object object) throws ClassNotFoundException, UnsupportedLookAndFeelException, InstantiationException, IllegalAccessException, IOException {

TeachersTableModel ttm;

ServerConnector connector = new ServerConnector();

connector.setOnlineMode();

connector.sendToServer("send teachers table");

ttm = (TeachersTableModel) connector.receive(connector.getOis());

connector.setOffLineMode();

for(int i = 0; i < ttm.getRowCount(); i++) {

if (ttm.getValueAt(i, 0).equals(object)) {

object = String.valueOf(ttm.getValueAt(i, 1));

break;

}

}

return object;

}

public List<String> returnLessons() throws ClassNotFoundException, UnsupportedLookAndFeelException, InstantiationException, IllegalAccessException, IOException {

CallTableModel ctm;

ServerConnector connector = new ServerConnector();

connector.setOnlineMode();

connector.sendToServer("send call table");

ctm = (CallTableModel) connector.receive(connector.getOis());

connector.setOffLineMode();

String element;

List<String> list = new ArrayList<String>();

for(int i = 0; i < ctm.getRowCount(); i++) {

element = String.valueOf(ctm.getValueAt(i ,0));

list.add(i, element);

}

return list;

}

public List<String> returnClasses() throws ClassNotFoundException, UnsupportedLookAndFeelException, InstantiationException, IllegalAccessException, IOException {

assesTableModel ctm;

ServerConnector connector = new ServerConnector();

connector.setOnlineMode();

connector.sendToServer("send classes table");

ctm = (ClassesTableModel) connector.receive(connector.getOis());

connector.setOffLineMode();

String element;

List<String> list = new ArrayList<String>();

for (int i = 0; i < ctm.getRowCount(); i++) {

String part1 = String.valueOf(ctm.getValueAt(i, 0));

String part2 = String.valueOf(ctm.getValueAt(i, 1));

element = part1 + part2;

list.add(i, element);

}

return list;

}

public PupilsTimeTableModel generatePupilsTimeTable() throws IOException, ClassNotFoundException, UnsupportedLookAndFeelException, InstantiationException, IllegalAccessException {

ServerConnector connector = new ServerConnector();

connector.setOnlineMode();

connector.sendToServer("send teacherstimetable");

TeachersTimeTableModel tttm = (TeachersTimeTableModel) connector.receive(connector.getOis());

connector.setOffLineMode();

PupilsTimeTableModel pttm = new PupilsTimeTableModel(new String[]{"Класс", "Урок", "Понедельник", "Вторник",

"Среда", "Четверг", "Пятница", "Суббота"});

List<String> classes = this.returnClasses();

List<String> lessons = this.returnLessons();

for(int i = 0; i < classes.size(); i++)

for(int j = 0; j < lessons.size(); j++)

pttm.addRow(new String[] {classes.get(i), lessons.get(j), "", "", "", "", "", ""});

for(int i = 0; i < tttm.getRowCount(); i++)

for(int j = 2; j < tttm.getColumnCount(); j++)

{

String element = String.valueOf(tttm.getValueAt(i,j));

for(int k = 0; k < pttm.getRowCount(); k++)

{

if(pttm.getValueAt(k,0).equals(element)){

int q = i%lessons.size();

pttm.setValueAt(replaceTeachersAndSubjects(tttm.getValueAt(i, 0)), (q+k), j);

break;

return pttm;

Размещено на Allbest.ru


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.