to be honest i did stuff

This commit is contained in:
Ksan 2025-10-25 00:02:13 +02:00
parent 7dad75333c
commit 23306b7d67
21 changed files with 561 additions and 62 deletions

2
.cred Normal file
View File

@ -0,0 +1,2 @@
etfoglasi@gmail.com
wmdz eikm bzrz zavr

2
.gitignore vendored
View File

@ -1,5 +1,7 @@
.db/
.env
todo
./init/*
*temp.java
./src/main/java/dev/ksan/etfoglasiserver/temp.java

View File

@ -1,7 +1,7 @@
-- This script was generated by the ERD tool in pgAdmin 4.
-- Please log an issue at https://github.com/pgadmin-org/pgadmin4/issues/new/choose if you find any bugs, including reproduction steps.
BEGIN;
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
CREATE TABLE IF NOT EXISTS public.alt_subject
(
@ -14,12 +14,12 @@ CREATE TABLE IF NOT EXISTS public.alt_subject
CREATE TABLE IF NOT EXISTS public.entries
(
id uuid NOT NULL DEFAULT uuid_generate_v4(),
id text COLLATE pg_catalog."default" NOT NULL,
subject_id uuid NOT NULL,
title text COLLATE pg_catalog."default",
info_entry text COLLATE pg_catalog."default",
paragraph text COLLATE pg_catalog."default",
time_published timestamp without time zone NOT NULL DEFAULT CURRENT_TIMESTAMP,
time_published timestamp without time zone NOT NULL,
filepath text COLLATE pg_catalog."default",
CONSTRAINT entries_pkey PRIMARY KEY (id)
);

144
init/subjects.txt Normal file
View File

@ -0,0 +1,144 @@
Arhitektura interneta||Arhitektura interneta|Arhitektura interneta|ARHITEKTURA INTERNETA|Архитектура интернета|архитектура интернета|АРХИТЕКТУРА ИНТЕРНЕТА|arhitektura interneta
Osnovi računarske tehnike||Osnovi računarske tehnike|osnovi računarske tehnike|ОСНОВИ РАЧУНАРСКЕ ТЕХНИКЕ|Основи рачунарске технике|основи рачунарске технике|Osnovi racunarske tehnike|OSNOVI RAČUNARSKE TEHNIKE|OSNOVI RACUNARSKE TEHNIKE|osnovi racunarske tehnike|Osnovi računarske tehnike
Analogna integrisana kola||Analogna integrisana kola|АНАЛОГНА ИНТЕГРИСАНА КОЛА|Аналогна интегрисана кола|ANALOGNA INTEGRISANA KOLA|analogna integrisana kola|аналогна интегрисана кола|Analogna integrisana kola
Uvod u teoriju sistema||Uvod u teoriju sistema|Увод у теорију система|uvod u teoriju sistema|Uvod u teoriju sistema|UVOD U TEORIJU SISTEMA|УВОД У ТЕОРИЈУ СИСТЕМА|увод у теорију система
Analogni i digitalni filtri||Analogni i digitalni filtri|Аналогни и дигитални филтри|АНАЛОГНИ И ДИГИТАЛНИ ФИЛТРИ|analogni i digitalni filtri|ANALOGNI I DIGITALNI FILTRI|Analogni i digitalni filtri|аналогни и дигитални филтри
Osnovi sistema automatskog upravljanja||Osnovi sistema automatskog upravljanja|osnovi sistema automatskog upravljanja|ОСНОВИ СИСТЕМА АУТОМАТСКОГ УПРАВЉАЊА|Основи система аутоматског управљања|основи система аутоматског управљања|Osnovi sistema automatskog upravljanja|OSNOVI SISTEMA AUTOMATSKOG UPRAVLJANJA
Prepoznavanje uzoraka||Prepoznavanje uzoraka|Prepoznavanje uzoraka|ПРЕПОЗНАВАЊЕ УЗОРАКА|Препознавање узорака|препознавање узорака|prepoznavanje uzoraka|PREPOZNAVANJE UZORAKA
Teorija informacija sa kodovanjem||Teorija informacija sa kodovanjem|теорија информација са кодовањем|TEORIJA INFORMACIJA SA KODOVANJEM|Teorija informacija sa kodovanjem|Теорија информација са кодовањем|ТЕОРИЈА ИНФОРМАЦИЈА СА КОДОВАЊЕМ|teorija informacija sa kodovanjem
Projektovanje namjenskih računarskih sistema||Projektovanje namjenskih računarskih sistema|projektovanje namjenskih racunarskih sistema|PROJEKTOVANJE NAMJENSKIH RACUNARSKIH SISTEMA|projektovanje namjenskih računarskih sistema|пројектовање намјенских рачунарских система|PROJEKTOVANJE NAMJENSKIH RAČUNARSKIH SISTEMA|Пројектовање намјенских рачунарских система|Projektovanje namjenskih racunarskih sistema|Projektovanje namjenskih računarskih sistema|ПРОЈЕКТОВАЊЕ НАМЈЕНСКИХ РАЧУНАРСКИХ СИСТЕМА
Računarske mreže||Računarske mreže|рачунарске мреже|računarske mreže|РАЧУНАРСКЕ МРЕЖЕ|Racunarske mreze|racunarske mreze|Računarske mreže|RAČUNARSKE MREŽE|Рачунарске мреже|RACUNARSKE MREZE
Projektovanje izvora napajanja||Projektovanje izvora napajanja|PROJEKTOVANJE IZVORA NAPAJANJA|Projektovanje izvora napajanja|пројектовање извора напајања|projektovanje izvora napajanja|ПРОЈЕКТОВАЊЕ ИЗВОРА НАПАЈАЊА|Пројектовање извора напајања
Mobilni radio sistemi||Mobilni radio sistemi|Mobilni radio sistemi|Мобилни радио системи|MOBILNI RADIO SISTEMI|мобилни радио системи|МОБИЛНИ РАДИО СИСТЕМИ|mobilni radio sistemi
Projektovanje integrisanih kola||Projektovanje integrisanih kola|projektovanje integrisanih kola|PROJEKTOVANJE INTEGRISANIH KOLA|ПРОЈЕКТОВАЊЕ ИНТЕГРИСАНИХ КОЛА|пројектовање интегрисаних кола|Пројектовање интегрисаних кола|Projektovanje integrisanih kola
Kriptografija i računarska zaštita||Kriptografija i računarska zaštita|криптографија и рачунарска заштита|КРИПТОГРАФИЈА И РАЧУНАРСКА ЗАШТИТА|KRIPTOGRAFIJA I RACUNARSKA ZASTITA|kriptografija i računarska zaštita|Kriptografija i racunarska zastita|kriptografija i racunarska zastita|Криптографија и рачунарска заштита|Kriptografija i računarska zaštita|KRIPTOGRAFIJA I RAČUNARSKA ZAŠTITA
Operativni sistemi za rad u realnom vremenu||Operativni sistemi za rad u realnom vremenu|OPERATIVNI SISTEMI ZA RAD U REALNOM VREMENU|operativni sistemi za rad u realnom vremenu|Оперативни системи за рад у реалном времену|ОПЕРАТИВНИ СИСТЕМИ ЗА РАД У РЕАЛНОМ ВРЕМЕНУ|Operativni sistemi za rad u realnom vremenu|оперативни системи за рад у реалном времену
Digitalna obrada slike||Digitalna obrada slike|дигитална обрада слике|Digitalna obrada slike|ДИГИТАЛНА ОБРАДА СЛИКЕ|Дигитална обрада слике|DIGITALNA OBRADA SLIKE|digitalna obrada slike
Kola i signali||Kola i signali|КОЛА И СИГНАЛИ|KOLA I SIGNALI|кола и сигнали|Kola i signali|kola i signali|Кола и сигнали
Digitalna televizija||Digitalna televizija|ДИГИТАЛНА ТЕЛЕВИЗИЈА|digitalna televizija|Digitalna televizija|Дигитална телевизија|DIGITALNA TELEVIZIJA|дигитална телевизија
Računarska elektronika||Računarska elektronika|рачунарска електроника|Računarska elektronika|RACUNARSKA ELEKTRONIKA|računarska elektronika|racunarska elektronika|РАЧУНАРСКА ЕЛЕКТРОНИКА|Racunarska elektronika|RAČUNARSKA ELEKTRONIKA|Рачунарска електроника
Telekomunikacioni sistemi||Telekomunikacioni sistemi|TELEKOMUNIKACIONI SISTEMI|Telekomunikacioni sistemi|телекомуникациони системи|ТЕЛЕКОМУНИКАЦИОНИ СИСТЕМИ|telekomunikacioni sistemi|Телекомуникациони системи
Diskretna matematika||Diskretna matematika|ДИСКРЕТНА МАТЕМАТИКА|Дискретна математика|Diskretna matematika|дискретна математика|DISKRETNA MATEMATIKA|diskretna matematika
Osnovi elektronike i digitalne tehnike||Osnovi elektronike i digitalne tehnike|основи електронике и дигиталне технике|Основи електронике и дигиталне технике|osnovi elektronike i digitalne tehnike|Osnovi elektronike i digitalne tehnike|ОСНОВИ ЕЛЕКТРОНИКЕ И ДИГИТАЛНЕ ТЕХНИКЕ|OSNOVI ELEKTRONIKE I DIGITALNE TEHNIKE
Osnovi telekomunikacija 2||Osnovi telekomunikacija 2|Osnovi telekomunikacija 2|OSNOVI TELEKOMUNIKACIJA 2|основи телекомуникација 2|ОСНОВИ ТЕЛЕКОМУНИКАЦИЈА 2|Основи телекомуникација 2|osnovi telekomunikacija 2
Sigurnost na internetu||Sigurnost na internetu|Sigurnost na internetu|SIGURNOST NA INTERNETU|Сигурност на интернету|СИГУРНОСТ НА ИНТЕРНЕТУ|сигурност на интернету|sigurnost na internetu
Programska podrška u digitalnoj televiziji||Programska podrška u digitalnoj televiziji|PROGRAMSKA PODRSKA U DIGITALNOJ TELEVIZIJI|PROGRAMSKA PODRŠKA U DIGITALNOJ TELEVIZIJI|Programska podrška u digitalnoj televiziji|програмска подршка у дигиталној телевизији|Програмска подршка у дигиталној телевизији|ПРОГРАМСКА ПОДРШКА У ДИГИТАЛНОЈ ТЕЛЕВИЗИЈИ|programska podrška u digitalnoj televiziji|Programska podrska u digitalnoj televiziji|programska podrska u digitalnoj televiziji
Identifikacija sistema||Identifikacija sistema|идентификација система|Identifikacija sistema|ИДЕНТИФИКАЦИЈА СИСТЕМА|identifikacija sistema|IDENTIFIKACIJA SISTEMA|Идентификација система
Projektovanje digitalnih sistema||Projektovanje digitalnih sistema|пројектовање дигиталних система|projektovanje digitalnih sistema|Projektovanje digitalnih sistema|PROJEKTOVANJE DIGITALNIH SISTEMA|Пројектовање дигиталних система|ПРОЈЕКТОВАЊЕ ДИГИТАЛНИХ СИСТЕМА
Mikroprocesori||Mikroprocesori|mikroprocesori|МИКРОПРОЦЕСОРИ|Mikroprocesori|микропроцесори|Микропроцесори|MIKROPROCESORI
Projekat iz automatike||Projekat iz automatike|projekat iz automatike|Пројекат из аутоматике|ПРОЈЕКАТ ИЗ АУТОМАТИКЕ|PROJEKAT IZ AUTOMATIKE|пројекат из аутоматике|Projekat iz automatike
Sistemi za upravljanje i nadzor||Sistemi za upravljanje i nadzor|Системи за управљање и надзор|sistemi za upravljanje i nadzor|системи за управљање и надзор|Sistemi za upravljanje i nadzor|SISTEMI ZA UPRAVLJANJE I NADZOR|СИСТЕМИ ЗА УПРАВЉАЊЕ И НАДЗОР
Projekat iz elektroenergetike||Projekat iz elektroenergetike|пројекат из електроенергетике|Пројекат из електроенергетике|Projekat iz elektroenergetike|PROJEKAT IZ ELEKTROENERGETIKE|ПРОЈЕКАТ ИЗ ЕЛЕКТРОЕНЕРГЕТИКЕ|projekat iz elektroenergetike
Digitalna elektronika||Digitalna elektronika|Digitalna elektronika|DIGITALNA ELEKTRONIKA|ДИГИТАЛНА ЕЛЕКТРОНИКА|Дигитална електроника|digitalna elektronika|дигитална електроника
Industrijske komunikacione mreže||Industrijske komunikacione mreže|Industrijske komunikacione mreže|INDUSTRIJSKE KOMUNIKACIONE MREŽE|INDUSTRIJSKE KOMUNIKACIONE MREZE|industrijske komunikacione mreže|Индустријске комуникационе мреже|Industrijske komunikacione mreze|индустријске комуникационе мреже|ИНДУСТРИЈСКЕ КОМУНИКАЦИОНЕ МРЕЖЕ|industrijske komunikacione mreze
Programiranje u realnom vremenu||Programiranje u realnom vremenu|програмирање у реалном времену|programiranje u realnom vremenu|PROGRAMIRANJE U REALNOM VREMENU|Programiranje u realnom vremenu|Програмирање у реалном времену|ПРОГРАМИРАЊЕ У РЕАЛНОМ ВРЕМЕНУ
Informacioni sistemi||Informacioni sistemi|Informacioni sistemi|INFORMACIONI SISTEMI|informacioni sistemi|Информациони системи|информациони системи|ИНФОРМАЦИОНИ СИСТЕМИ
Sistemi automatskog upravljanja||Sistemi automatskog upravljanja|Sistemi automatskog upravljanja|SISTEMI AUTOMATSKOG UPRAVLJANJA|системи аутоматског управљања|СИСТЕМИ АУТОМАТСКОГ УПРАВЉАЊА|sistemi automatskog upravljanja|Системи аутоматског управљања
Tehnika visokog napona||Tehnika visokog napona|ТЕХНИКА ВИСОКОГ НАПОНА|техника високог напона|TEHNIKA VISOKOG NAPONA|tehnika visokog napona|Техника високог напона|Tehnika visokog napona
Zaštita u elektroenergetskim sistemima||Zaštita u elektroenergetskim sistemima|Zaštita u elektroenergetskim sistemima|ZAŠTITA U ELEKTROENERGETSKIM SISTEMIMA|zaštita u elektroenergetskim sistemima|Zastita u elektroenergetskim sistemima|zastita u elektroenergetskim sistemima|ZASTITA U ELEKTROENERGETSKIM SISTEMIMA|ЗАШТИТА У ЕЛЕКТРОЕНЕРГЕТСКИМ СИСТЕМИМА|заштита у електроенергетским системима|Заштита у електроенергетским системима
Metodi vještačke inteligencije||Metodi vještačke inteligencije|METODI VJESTACKE INTELIGENCIJE|Методи вјештачке интелигенције|Metodi vjestacke inteligencije|методи вјештачке интелигенције|METODI VJEŠTAČKE INTELIGENCIJE|metodi vještačke inteligencije|Metodi vještačke inteligencije|metodi vjestacke inteligencije|МЕТОДИ ВЈЕШТАЧКЕ ИНТЕЛИГЕНЦИЈЕ
Osnovi elektrotehnike 2||Osnovi elektrotehnike 2|Основи електротехнике 2|osnovi elektrotehnike 2|OSNOVI ELEKTROTEHNIKE 2|основи електротехнике 2|ОСНОВИ ЕЛЕКТРОТЕХНИКЕ 2|Osnovi elektrotehnike 2
Osnovi elektroenergetike||Osnovi elektroenergetike|osnovi elektroenergetike|OSNOVI ELEKTROENERGETIKE|Основи електроенергетике|Osnovi elektroenergetike|основи електроенергетике|ОСНОВИ ЕЛЕКТРОЕНЕРГЕТИКЕ
Interakcija čovjek računar||Interakcija čovjek računar|ИНТЕРАКЦИЈА ЧОВЈЕК РАЧУНАР|Interakcija čovjek računar|Интеракција човјек рачунар|interakcija čovjek računar|Interakcija covjek racunar|INTERAKCIJA ČOVJEK RAČUNAR|INTERAKCIJA COVJEK RACUNAR|interakcija covjek racunar|интеракција човјек рачунар
Operaciona istraživanja||Operaciona istraživanja|OPERACIONA ISTRAZIVANJA|Операциона истраживања|operaciona istraživanja|OPERACIONA ISTRAŽIVANJA|Operaciona istrazivanja|операциона истраживања|ОПЕРАЦИОНА ИСТРАЖИВАЊА|operaciona istrazivanja|Operaciona istraživanja
Formalne metode u softverskom inženjerstvu||Formalne metode u softverskom inženjerstvu|формалне методе у софтверском инжењерству|Formalne metode u softverskom inzenjerstvu|formalne metode u softverskom inzenjerstvu|Формалне методе у софтверском инжењерству|formalne metode u softverskom inženjerstvu|FORMALNE METODE U SOFTVERSKOM INŽENJERSTVU|FORMALNE METODE U SOFTVERSKOM INZENJERSTVU|ФОРМАЛНЕ МЕТОДЕ У СОФТВЕРСКОМ ИНЖЕЊЕРСТВУ|Formalne metode u softverskom inženjerstvu
Sistemi za digitalnu obradu signala||Sistemi za digitalnu obradu signala|системи за дигиталну обраду сигнала|sistemi za digitalnu obradu signala|SISTEMI ZA DIGITALNU OBRADU SIGNALA|Системи за дигиталну обраду сигнала|СИСТЕМИ ЗА ДИГИТАЛНУ ОБРАДУ СИГНАЛА|Sistemi za digitalnu obradu signala
Engleski jezik 2||Engleski jezik 2|Engleski jezik 2|енглески језик 2|engleski jezik 2|ENGLESKI JEZIK 2|Енглески језик 2|ЕНГЛЕСКИ ЈЕЗИК 2
Testiranje i kvalitet softvera||Testiranje i kvalitet softvera|TESTIRANJE I KVALITET SOFTVERA|testiranje i kvalitet softvera|ТЕСТИРАЊЕ И КВАЛИТЕТ СОФТВЕРА|тестирање и квалитет софтвера|Тестирање и квалитет софтвера|Testiranje i kvalitet softvera
Upravljanje u realnom vremenu||Upravljanje u realnom vremenu|управљање у реалном времену|UPRAVLJANJE U REALNOM VREMENU|Upravljanje u realnom vremenu|Управљање у реалном времену|upravljanje u realnom vremenu|УПРАВЉАЊЕ У РЕАЛНОМ ВРЕМЕНУ
Digitalna obrada slučajnih signala||Digitalna obrada slučajnih signala|digitalna obrada slucajnih signala|DIGITALNA OBRADA SLUČAJNIH SIGNALA|digitalna obrada slučajnih signala|ДИГИТАЛНА ОБРАДА СЛУЧАЈНИХ СИГНАЛА|дигитална обрада случајних сигнала|DIGITALNA OBRADA SLUCAJNIH SIGNALA|Дигитална обрада случајних сигнала|Digitalna obrada slucajnih signala|Digitalna obrada slučajnih signala
Kućna automatizacija||Kućna automatizacija|KUCNA AUTOMATIZACIJA|Kućna automatizacija|КУЋНА АУТОМАТИЗАЦИЈА|кућна аутоматизација|Kucna automatizacija|kucna automatizacija|KUĆNA AUTOMATIZACIJA|Кућна аутоматизација|kućna automatizacija
Obnovljivi izvori energije||Obnovljivi izvori energije|Обновљиви извори енергије|OBNOVLJIVI IZVORI ENERGIJE|obnovljivi izvori energije|обновљиви извори енергије|ОБНОВЉИВИ ИЗВОРИ ЕНЕРГИЈЕ|Obnovljivi izvori energije
Analiza elektroenergetskih sistema 1||Analiza elektroenergetskih sistema 1|Analiza elektroenergetskih sistema 1|АНАЛИЗА ЕЛЕКТРОЕНЕРГЕТСКИХ СИСТЕМА 1|ANALIZA ELEKTROENERGETSKIH SISTEMA 1|Анализа електроенергетских система 1|анализа електроенергетских система 1|analiza elektroenergetskih sistema 1
Arhitektura računara||Arhitektura računara|Arhitektura racunara|arhitektura računara|ARHITEKTURA RACUNARA|ARHITEKTURA RAČUNARA|Архитектура рачунара|arhitektura racunara|архитектура рачунара|АРХИТЕКТУРА РАЧУНАРА|Arhitektura računara
Projektovanje softvera||Projektovanje softvera|ПРОЈЕКТОВАЊЕ СОФТВЕРА|projektovanje softvera|PROJEKTOVANJE SOFTVERA|Пројектовање софтвера|пројектовање софтвера|Projektovanje softvera
RF i mikrotalasna elektronika||RF i mikrotalasna elektronika|РФ и микроталасна електроника|РФ И МИКРОТАЛАСНА ЕЛЕКТРОНИКА|RF I MIKROTALASNA ELEKTRONIKA|RF i mikrotalasna elektronika|rf i mikrotalasna elektronika|рф и микроталасна електроника
Programski jezici 2||Programski jezici 2|програмски језици 2|ПРОГРАМСКИ ЈЕЗИЦИ 2|Програмски језици 2|PROGRAMSKI JEZICI 2|Programski jezici 2|programski jezici 2
Digitalne telekomunikacije||Digitalne telekomunikacije|DIGITALNE TELEKOMUNIKACIJE|ДИГИТАЛНЕ ТЕЛЕКОМУНИКАЦИЈЕ|Дигиталне телекомуникације|Digitalne telekomunikacije|digitalne telekomunikacije|дигиталне телекомуникације
Programiranje 2||Programiranje 2|програмирање 2|PROGRAMIRANJE 2|Програмирање 2|ПРОГРАМИРАЊЕ 2|programiranje 2|Programiranje 2
Digitalna obrada signala||Digitalna obrada signala|Дигитална обрада сигнала|digitalna obrada signala|дигитална обрада сигнала|ДИГИТАЛНА ОБРАДА СИГНАЛА|Digitalna obrada signala|DIGITALNA OBRADA SIGNALA
Distributivne i industrijske mreže||Distributivne i industrijske mreže|дистрибутивне и индустријске мреже|ДИСТРИБУТИВНЕ И ИНДУСТРИЈСКЕ МРЕЖЕ|distributivne i industrijske mreze|Дистрибутивне и индустријске мреже|DISTRIBUTIVNE I INDUSTRIJSKE MREŽE|DISTRIBUTIVNE I INDUSTRIJSKE MREZE|Distributivne i industrijske mreze|distributivne i industrijske mreže|Distributivne i industrijske mreže
Programiranje 1||Programiranje 1|Програмирање 1|PROGRAMIRANJE 1|programiranje 1|програмирање 1|ПРОГРАМИРАЊЕ 1|Programiranje 1
Analiza elektroenergetskih sistema 2||Analiza elektroenergetskih sistema 2|analiza elektroenergetskih sistema 2|Анализа електроенергетских система 2|анализа електроенергетских система 2|Analiza elektroenergetskih sistema 2|АНАЛИЗА ЕЛЕКТРОЕНЕРГЕТСКИХ СИСТЕМА 2|ANALIZA ELEKTROENERGETSKIH SISTEMA 2
Upravljanje projektima||Upravljanje projektima|UPRAVLJANJE PROJEKTIMA|управљање пројектима|Управљање пројектима|УПРАВЉАЊЕ ПРОЈЕКТИМА|upravljanje projektima|Upravljanje projektima
Računarski integrisana proizvodnja||Računarski integrisana proizvodnja|Računarski integrisana proizvodnja|RAČUNARSKI INTEGRISANA PROIZVODNJA|RACUNARSKI INTEGRISANA PROIZVODNJA|računarski integrisana proizvodnja|racunarski integrisana proizvodnja|РАЧУНАРСКИ ИНТЕГРИСАНА ПРОИЗВОДЊА|Racunarski integrisana proizvodnja|Рачунарски интегрисана производња|рачунарски интегрисана производња
Osnovi softverskog inženjerstva||Osnovi softverskog inženjerstva|osnovi softverskog inzenjerstva|Основи софтверског инжењерства|osnovi softverskog inženjerstva|Osnovi softverskog inženjerstva|OSNOVI SOFTVERSKOG INZENJERSTVA|основи софтверског инжењерства|Osnovi softverskog inzenjerstva|ОСНОВИ СОФТВЕРСКОГ ИНЖЕЊЕРСТВА|OSNOVI SOFTVERSKOG INŽENJERSTVA
Ugrađeni računarski sistemi||Ugrađeni računarski sistemi|УГРАЂЕНИ РАЧУНАРСКИ СИСТЕМИ|UGRADJENI RACUNARSKI SISTEMI|Ugrađeni računarski sistemi|уграђени рачунарски системи|Уграђени рачунарски системи|Ugradjeni racunarski sistemi|ugradjeni racunarski sistemi|ugrađeni računarski sistemi|UGRAĐENI RAČUNARSKI SISTEMI
Upravljanje u realnom vremenu i ugrađeni računarski sistemi||Upravljanje u realnom vremenu i ugrađeni računarski sistemi|Upravljanje u realnom vremenu i ugrađeni računarski sistemi|управљање у реалном времену и уграђени рачунарски системи|Управљање у реалном времену и уграђени рачунарски системи|УПРАВЉАЊЕ У РЕАЛНОМ ВРЕМЕНУ И УГРАЂЕНИ РАЧУНАРСКИ СИСТЕМИ|upravljanje u realnom vremenu i ugradjeni racunarski sistemi|UPRAVLJANJE U REALNOM VREMENU I UGRADJENI RACUNARSKI SISTEMI|UPRAVLJANJE U REALNOM VREMENU I UGRAĐENI RAČUNARSKI SISTEMI|Upravljanje u realnom vremenu i ugradjeni racunarski sistemi|upravljanje u realnom vremenu i ugrađeni računarski sistemi
Savremene telekomunikacije||Savremene telekomunikacije|savremene telekomunikacije|SAVREMENE TELEKOMUNIKACIJE|Savremene telekomunikacije|Савремене телекомуникације|САВРЕМЕНЕ ТЕЛЕКОМУНИКАЦИЈЕ|савремене телекомуникације
Digitalni sistemi upravljanja||Digitalni sistemi upravljanja|дигитални системи управљања|ДИГИТАЛНИ СИСТЕМИ УПРАВЉАЊА|Дигитални системи управљања|Digitalni sistemi upravljanja|DIGITALNI SISTEMI UPRAVLJANJA|digitalni sistemi upravljanja
Stručna praksa||Stručna praksa|стручна пракса|stručna praksa|Strucna praksa|strucna praksa|СТРУЧНА ПРАКСА|Stručna praksa|Стручна пракса|STRUČNA PRAKSA|STRUCNA PRAKSA
Sinteza sistema automatskog upravljanja||Sinteza sistema automatskog upravljanja|СИНТЕЗА СИСТЕМА АУТОМАТСКОГ УПРАВЉАЊА|Sinteza sistema automatskog upravljanja|sinteza sistema automatskog upravljanja|SINTEZA SISTEMA AUTOMATSKOG UPRAVLJANJA|Синтеза система аутоматског управљања|синтеза система аутоматског управљања
Strukture podataka i algoritmi||Strukture podataka i algoritmi|Strukture podataka i algoritmi|STRUKTURE PODATAKA I ALGORITMI|СТРУКТУРЕ ПОДАТАКА И АЛГОРИТМИ|strukture podataka i algoritmi|Структуре података и алгоритми|структуре података и алгоритми
Programski jezici 1||Programski jezici 1|PROGRAMSKI JEZICI 1|programski jezici 1|ПРОГРАМСКИ ЈЕЗИЦИ 1|Programski jezici 1|програмски језици 1|Програмски језици 1
Matematika 3||Matematika 3|matematika 3|Математика 3|математика 3|Matematika 3|MATEMATIKA 3|МАТЕМАТИКА 3
Multimedijalne telekomunikacije||Multimedijalne telekomunikacije|Multimedijalne telekomunikacije|multimedijalne telekomunikacije|МУЛТИМЕДИЈАЛНЕ ТЕЛЕКОМУНИКАЦИЈЕ|Мултимедијалне телекомуникације|мултимедијалне телекомуникације|MULTIMEDIJALNE TELEKOMUNIKACIJE
Razvodna postrojenja i aparati||Razvodna postrojenja i aparati|РАЗВОДНА ПОСТРОЈЕЊА И АПАРАТИ|Разводна постројења и апарати|RAZVODNA POSTROJENJA I APARATI|Razvodna postrojenja i aparati|razvodna postrojenja i aparati|разводна постројења и апарати
Elektromotorni pogoni||Elektromotorni pogoni|електромоторни погони|ЕЛЕКТРОМОТОРНИ ПОГОНИ|Elektromotorni pogoni|Електромоторни погони|ELEKTROMOTORNI POGONI|elektromotorni pogoni
Internet tehnologije||Internet tehnologije|интернет технологије|internet tehnologije|ИНТЕРНЕТ ТЕХНОЛОГИЈЕ|Интернет технологије|Internet tehnologije|INTERNET TEHNOLOGIJE
Multimedijalni signali i sistemi||Multimedijalni signali i sistemi|multimedijalni signali i sistemi|МУЛТИМЕДИЈАЛНИ СИГНАЛИ И СИСТЕМИ|MULTIMEDIJALNI SIGNALI I SISTEMI|мултимедијални сигнали и системи|Multimedijalni signali i sistemi|Мултимедијални сигнали и системи
Električne mašine 2||Električne mašine 2|Električne mašine 2|ELEKTRIČNE MAŠINE 2|ЕЛЕКТРИЧНЕ МАШИНЕ 2|električne mašine 2|електричне машине 2|Електричне машине 2|elektricne masine 2|ELEKTRICNE MASINE 2|Elektricne masine 2
Radio komunikacije||Radio komunikacije|Radio komunikacije|радио комуникације|radio komunikacije|RADIO KOMUNIKACIJE|РАДИО КОМУНИКАЦИЈЕ|Радио комуникације
Računarska grafika||Računarska grafika|računarska grafika|Racunarska grafika|RACUNARSKA GRAFIKA|Računarska grafika|РАЧУНАРСКА ГРАФИКА|RAČUNARSKA GRAFIKA|racunarska grafika|рачунарска графика|Рачунарска графика
Energetska elektronika||Energetska elektronika|energetska elektronika|Energetska elektronika|ENERGETSKA ELEKTRONIKA|енергетска електроника|ЕНЕРГЕТСКА ЕЛЕКТРОНИКА|Енергетска електроника
Osnovi elektronike||Osnovi elektronike|Основи електронике|Osnovi elektronike|OSNOVI ELEKTRONIKE|основи електронике|osnovi elektronike|ОСНОВИ ЕЛЕКТРОНИКЕ
Performanse računarskih sistema||Performanse računarskih sistema|Перформансе рачунарских система|performanse racunarskih sistema|Performanse racunarskih sistema|перформансе рачунарских система|ПЕРФОРМАНСЕ РАЧУНАРСКИХ СИСТЕМА|PERFORMANSE RAČUNARSKIH SISTEMA|Performanse računarskih sistema|PERFORMANSE RACUNARSKIH SISTEMA|performanse računarskih sistema
Linearna elektronika||Linearna elektronika|Линеарна електроника|линеарна електроника|Linearna elektronika|linearna elektronika|LINEARNA ELEKTRONIKA|ЛИНЕАРНА ЕЛЕКТРОНИКА
Operativni sistemi i programiranje u realnom vremenu||Operativni sistemi i programiranje u realnom vremenu|оперативни системи и програмирање у реалном времену|OPERATIVNI SISTEMI I PROGRAMIRANJE U REALNOM VREMENU|Оперативни системи и програмирање у реалном времену|ОПЕРАТИВНИ СИСТЕМИ И ПРОГРАМИРАЊЕ У РЕАЛНОМ ВРЕМЕНУ|Operativni sistemi i programiranje u realnom vremenu|operativni sistemi i programiranje u realnom vremenu
Sistemi sa bazama podataka||Sistemi sa bazama podataka|SISTEMI SA BAZAMA PODATAKA|системи са базама података|Системи са базама података|sistemi sa bazama podataka|СИСТЕМИ СА БАЗАМА ПОДАТАКА|Sistemi sa bazama podataka
Optičke telekomunikacije||Optičke telekomunikacije|ОПТИЧКЕ ТЕЛЕКОМУНИКАЦИЈЕ|optičke telekomunikacije|OPTICKE TELEKOMUNIKACIJE|Оптичке телекомуникације|Opticke telekomunikacije|оптичке телекомуникације|OPTIČKE TELEKOMUNIKACIJE|Optičke telekomunikacije|opticke telekomunikacije
Inženjering softverskih zahtjeva||Inženjering softverskih zahtjeva|ИНЖЕЊЕРИНГ СОФТВЕРСКИХ ЗАХТЈЕВА|inženjering softverskih zahtjeva|INŽENJERING SOFTVERSKIH ZAHTJEVA|Inženjering softverskih zahtjeva|INZENJERING SOFTVERSKIH ZAHTJEVA|inzenjering softverskih zahtjeva|Инжењеринг софтверских захтјева|Inzenjering softverskih zahtjeva|инжењеринг софтверских захтјева
Antene i prostiranje radio-talasa||Antene i prostiranje radio-talasa|антене и простирање радио-таласа|ANTENE I PROSTIRANJE RADIO-TALASA|antene i prostiranje radio-talasa|Antene i prostiranje radio-talasa|Антене и простирање радио-таласа|АНТЕНЕ И ПРОСТИРАЊЕ РАДИО-ТАЛАСА
Baze podataka||Baze podataka|BAZE PODATAKA|baze podataka|БАЗЕ ПОДАТАКА|Baze podataka|базе података|Базе података
Biomedicinska elektronika||Biomedicinska elektronika|Биомедицинска електроника|BIOMEDICINSKA ELEKTRONIKA|биомедицинска електроника|Biomedicinska elektronika|БИОМЕДИЦИНСКА ЕЛЕКТРОНИКА|biomedicinska elektronika
Automatizacija i upravljanje u zgradama||Automatizacija i upravljanje u zgradama|Automatizacija i upravljanje u zgradama|Аутоматизација и управљање у зградама|аутоматизација и управљање у зградама|automatizacija i upravljanje u zgradama|АУТОМАТИЗАЦИЈА И УПРАВЉАЊЕ У ЗГРАДАМА|AUTOMATIZACIJA I UPRAVLJANJE U ZGRADAMA
Projektovanje elektronskih uređaja||Projektovanje elektronskih uređaja|projektovanje elektronskih uređaja|Пројектовање електронских уређаја|PROJEKTOVANJE ELEKTRONSKIH UREĐAJA|projektovanje elektronskih uredjaja|Projektovanje elektronskih uredjaja|ПРОЈЕКТОВАЊЕ ЕЛЕКТРОНСКИХ УРЕЂАЈА|PROJEKTOVANJE ELEKTRONSKIH UREDJAJA|пројектовање електронских уређаја|Projektovanje elektronskih uređaja
Radio-relejne komunikacije||Radio-relejne komunikacije|Radio-relejne komunikacije|RADIO-RELEJNE KOMUNIKACIJE|Радио-релејне комуникације|радио-релејне комуникације|radio-relejne komunikacije|РАДИО-РЕЛЕЈНЕ КОМУНИКАЦИЈЕ
Engleski jezik 1||Engleski jezik 1|Engleski jezik 1|engleski jezik 1|енглески језик 1|ENGLESKI JEZIK 1|Енглески језик 1|ЕНГЛЕСКИ ЈЕЗИК 1
Osnovi komunikacija i teorija informacija||Osnovi komunikacija i teorija informacija|основи комуникација и теорија информација|Osnovi komunikacija i teorija informacija|Основи комуникација и теорија информација|OSNOVI KOMUNIKACIJA I TEORIJA INFORMACIJA|ОСНОВИ КОМУНИКАЦИЈА И ТЕОРИЈА ИНФОРМАЦИЈА|osnovi komunikacija i teorija informacija
Filozofija||Filozofija|filozofija|FILOZOFIJA|Филозофија|филозофија|ФИЛОЗОФИЈА|Filozofija
Osnovi operativnih sistema||Osnovi operativnih sistema|основи оперативних система|OSNOVI OPERATIVNIH SISTEMA|Основи оперативних система|Osnovi operativnih sistema|osnovi operativnih sistema|ОСНОВИ ОПЕРАТИВНИХ СИСТЕМА
Električne instalacije i osvjetljenje||Električne instalacije i osvjetljenje|elektricne instalacije i osvjetljenje|Električne instalacije i osvjetljenje|електричне инсталације и освјетљење|ЕЛЕКТРИЧНЕ ИНСТАЛАЦИЈЕ И ОСВЈЕТЉЕЊЕ|ELEKTRICNE INSTALACIJE I OSVJETLJENJE|Електричне инсталације и освјетљење|Elektricne instalacije i osvjetljenje|električne instalacije i osvjetljenje|ELEKTRIČNE INSTALACIJE I OSVJETLJENJE
Matematika 4||Matematika 4|математика 4|МАТЕМАТИКА 4|Математика 4|matematika 4|MATEMATIKA 4|Matematika 4
Mobilno računarstvo||Mobilno računarstvo|mobilno računarstvo|мобилно рачунарство|МОБИЛНО РАЧУНАРСТВО|Мобилно рачунарство|mobilno racunarstvo|Mobilno računarstvo|MOBILNO RAČUNARSTVO|Mobilno racunarstvo|MOBILNO RACUNARSTVO
Fizika||Fizika|ФИЗИКА|fizika|FIZIKA|физика|Физика|Fizika
Telekomunikacione mreže||Telekomunikacione mreže|ТЕЛЕКОМУНИКАЦИОНЕ МРЕЖЕ|Telekomunikacione mreze|TELEKOMUNIKACIONE MREŽE|telekomunikacione mreze|telekomunikacione mreže|телекомуникационе мреже|Telekomunikacione mreže|Телекомуникационе мреже|TELEKOMUNIKACIONE MREZE
Bežične senzorske mreže||Bežične senzorske mreže|BEŽIČNE SENZORSKE MREŽE|БЕЖИЧНЕ СЕНЗОРСКЕ МРЕЖЕ|bezicne senzorske mreze|bežične senzorske mreže|Bezicne senzorske mreze|Bežične senzorske mreže|BEZICNE SENZORSKE MREZE|Бежичне сензорске мреже|бежичне сензорске мреже
Stohastički sistemi i estimacija||Stohastički sistemi i estimacija|stohasticki sistemi i estimacija|STOHASTIČKI SISTEMI I ESTIMACIJA|Стохастички системи и естимација|Stohastički sistemi i estimacija|stohastički sistemi i estimacija|Stohasticki sistemi i estimacija|STOHASTICKI SISTEMI I ESTIMACIJA|стохастички системи и естимација|СТОХАСТИЧКИ СИСТЕМИ И ЕСТИМАЦИЈА
Ispitivanje električnih mašina||Ispitivanje električnih mašina|Испитивање електричних машина|ISPITIVANJE ELEKTRIČNIH MAŠINA|ИСПИТИВАЊЕ ЕЛЕКТРИЧНИХ МАШИНА|Ispitivanje elektricnih masina|ispitivanje elektricnih masina|ISPITIVANJE ELEKTRICNIH MASINA|ispitivanje električnih mašina|Ispitivanje električnih mašina|испитивање електричних машина
Senzori i aktuatori||Senzori i aktuatori|Сензори и актуатори|senzori i aktuatori|СЕНЗОРИ И АКТУАТОРИ|SENZORI I AKTUATORI|сензори и актуатори|Senzori i aktuatori
Mikrotalasna tehnika||Mikrotalasna tehnika|Mikrotalasna tehnika|Микроталасна техника|mikrotalasna tehnika|МИКРОТАЛАСНА ТЕХНИКА|MIKROTALASNA TEHNIKA|микроталасна техника
Matematika 2||Matematika 2|Matematika 2|Математика 2|математика 2|МАТЕМАТИКА 2|matematika 2|MATEMATIKA 2
Umreženi sistemi upravljanja||Umreženi sistemi upravljanja|умрежени системи управљања|umrezeni sistemi upravljanja|UMREŽENI SISTEMI UPRAVLJANJA|Умрежени системи управљања|Umrezeni sistemi upravljanja|УМРЕЖЕНИ СИСТЕМИ УПРАВЉАЊА|umreženi sistemi upravljanja|UMREZENI SISTEMI UPRAVLJANJA|Umreženi sistemi upravljanja
Teorija električnih kola||Teorija električnih kola|теорија електричних кола|TEORIJA ELEKTRIČNIH KOLA|teorija elektricnih kola|Теорија електричних кола|Teorija elektricnih kola|TEORIJA ELEKTRICNIH KOLA|Teorija električnih kola|teorija električnih kola|ТЕОРИЈА ЕЛЕКТРИЧНИХ КОЛА
Multimedijalni sistemi||Multimedijalni sistemi|multimedijalni sistemi|Multimedijalni sistemi|мултимедијални системи|MULTIMEDIJALNI SISTEMI|МУЛТИМЕДИЈАЛНИ СИСТЕМИ|Мултимедијални системи
Eksploatacija elektroenergetskih sistema||Eksploatacija elektroenergetskih sistema|Eksploatacija elektroenergetskih sistema|EKSPLOATACIJA ELEKTROENERGETSKIH SISTEMA|eksploatacija elektroenergetskih sistema|експлоатација електроенергетских система|Експлоатација електроенергетских система|ЕКСПЛОАТАЦИЈА ЕЛЕКТРОЕНЕРГЕТСКИХ СИСТЕМА
Električne mašine 1||Električne mašine 1|електричне машине 1|električne mašine 1|Elektricne masine 1|Električne mašine 1|ELEKTRICNE MASINE 1|ELEKTRIČNE MAŠINE 1|elektricne masine 1|Електричне машине 1|ЕЛЕКТРИЧНЕ МАШИНЕ 1
Internet programiranje||Internet programiranje|Internet programiranje|интернет програмирање|ИНТЕРНЕТ ПРОГРАМИРАЊЕ|internet programiranje|INTERNET PROGRAMIRANJE|Интернет програмирање
Projektovanje informacionih sistema u internet okruženju||Projektovanje informacionih sistema u internet okruženju|пројектовање информационих система у интернет окружењу|Projektovanje informacionih sistema u internet okruzenju|ПРОЈЕКТОВАЊЕ ИНФОРМАЦИОНИХ СИСТЕМА У ИНТЕРНЕТ ОКРУЖЕЊУ|Projektovanje informacionih sistema u internet okruženju|PROJEKTOVANJE INFORMACIONIH SISTEMA U INTERNET OKRUŽENJU|projektovanje informacionih sistema u internet okruženju|projektovanje informacionih sistema u internet okruzenju|Пројектовање информационих система у интернет окружењу|PROJEKTOVANJE INFORMACIONIH SISTEMA U INTERNET OKRUZENJU
Elektromagnetika||Elektromagnetika|Електромагнетика|електромагнетика|elektromagnetika|ЕЛЕКТРОМАГНЕТИКА|ELEKTROMAGNETIKA|Elektromagnetika
Vještine komuniciranja||Vještine komuniciranja|Вјештине комуницирања|Vještine komuniciranja|vjestine komuniciranja|ВЈЕШТИНЕ КОМУНИЦИРАЊА|VJESTINE KOMUNICIRANJA|вјештине комуницирања|Vjestine komuniciranja|VJEŠTINE KOMUNICIRANJA|vještine komuniciranja
Električna mjerenja||Električna mjerenja|електрична мјерења|ЕЛЕКТРИЧНА МЈЕРЕЊА|Električna mjerenja|elektricna mjerenja|električna mjerenja|Електрична мјерења|Elektricna mjerenja|ELEKTRICNA MJERENJA|ELEKTRIČNA MJERENJA
Matematika 1||Matematika 1|Математика 1|Matematika 1|matematika 1|МАТЕМАТИКА 1|математика 1|MATEMATIKA 1
Uvod u elektroniku||Uvod u elektroniku|UVOD U ELEKTRONIKU|УВОД У ЕЛЕКТРОНИКУ|uvod u elektroniku|увод у електронику|Увод у електронику|Uvod u elektroniku
Mikrokontrolerski sistemi||Mikrokontrolerski sistemi|Mikrokontrolerski sistemi|микроконтролерски системи|MIKROKONTROLERSKI SISTEMI|mikrokontrolerski sistemi|МИКРОКОНТРОЛЕРСКИ СИСТЕМИ|Микроконтролерски системи
Sociologija||Sociologija|социологија|sociologija|SOCIOLOGIJA|СОЦИОЛОГИЈА|Sociologija|Социологија
Nelinearni sistemi||Nelinearni sistemi|Нелинеарни системи|nelinearni sistemi|НЕЛИНЕАРНИ СИСТЕМИ|нелинеарни системи|NELINEARNI SISTEMI|Nelinearni sistemi
Osnovi elektrotehnike 1||Osnovi elektrotehnike 1|osnovi elektrotehnike 1|Osnovi elektrotehnike 1|Основи електротехнике 1|основи електротехнике 1|OSNOVI ELEKTROTEHNIKE 1|ОСНОВИ ЕЛЕКТРОТЕХНИКЕ 1
Robotika||Robotika|РОБОТИКА|ROBOTIKA|Robotika|Роботика|robotika|роботика
Osnovi digitalne obrade signala||Osnovi digitalne obrade signala|Osnovi digitalne obrade signala|основи дигиталне обраде сигнала|osnovi digitalne obrade signala|Основи дигиталне обраде сигнала|OSNOVI DIGITALNE OBRADE SIGNALA|ОСНОВИ ДИГИТАЛНЕ ОБРАДЕ СИГНАЛА
Inženjersko preduzetništvo||Inženjersko preduzetništvo|Inzenjersko preduzetnistvo|INZENJERSKO PREDUZETNISTVO|инжењерско предузетништво|INŽENJERSKO PREDUZETNIŠTVO|Inženjersko preduzetništvo|Инжењерско предузетништво|inzenjersko preduzetnistvo|inženjersko preduzetništvo|ИНЖЕЊЕРСКО ПРЕДУЗЕТНИШТВО
Signali i sistemi||Signali i sistemi|Signali i sistemi|сигнали и системи|signali i sistemi|Сигнали и системи|СИГНАЛИ И СИСТЕМИ|SIGNALI I SISTEMI
Mrežno i distribuirano programiranje||Mrežno i distribuirano programiranje|mrezno i distribuirano programiranje|МРЕЖНО И ДИСТРИБУИРАНО ПРОГРАМИРАЊЕ|мрежно и дистрибуирано програмирање|Mrezno i distribuirano programiranje|MREZNO I DISTRIBUIRANO PROGRAMIRANJE|MREŽNO I DISTRIBUIRANO PROGRAMIRANJE|Mrežno i distribuirano programiranje|Мрежно и дистрибуирано програмирање|mrežno i distribuirano programiranje
Impulsna elektronika||Impulsna elektronika|ИМПУЛСНА ЕЛЕКТРОНИКА|IMPULSNA ELEKTRONIKA|импулсна електроника|Impulsna elektronika|impulsna elektronika|Импулсна електроника
Akvizicija podataka||Akvizicija podataka|Аквизиција података|аквизиција података|AKVIZICIJA PODATAKA|Akvizicija podataka|АКВИЗИЦИЈА ПОДАТАКА|akvizicija podataka
Akustika i audio tehnika||Akustika i audio tehnika|АКУСТИКА И АУДИО ТЕХНИКА|AKUSTIKA I AUDIO TEHNIKA|Akustika i audio tehnika|akustika i audio tehnika|акустика и аудио техника|Акустика и аудио техника
Funkcionalna verifikacija hardvera||Funkcionalna verifikacija hardvera|FUNKCIONALNA VERIFIKACIJA HARDVERA|Функционална верификација хардвера|funkcionalna verifikacija hardvera|функционална верификација хардвера|Funkcionalna verifikacija hardvera|ФУНКЦИОНАЛНА ВЕРИФИКАЦИЈА ХАРДВЕРА
Osnovi telekomunikacija 1||Osnovi telekomunikacija 1|Osnovi telekomunikacija 1|Основи телекомуникација 1|ОСНОВИ ТЕЛЕКОМУНИКАЦИЈА 1|osnovi telekomunikacija 1|OSNOVI TELEKOMUNIKACIJA 1|основи телекомуникација 1
Elektronsko poslovanje||Elektronsko poslovanje|elektronsko poslovanje|ELEKTRONSKO POSLOVANJE|Електронско пословање|ЕЛЕКТРОНСКО ПОСЛОВАЊЕ|Elektronsko poslovanje|електронско пословање
Elektrane||Elektrane|Elektrane|електране|elektrane|ELEKTRANE|Електране|ЕЛЕКТРАНЕ
Regulacija elektromotornih pogona||Regulacija elektromotornih pogona|regulacija elektromotornih pogona|РЕГУЛАЦИЈА ЕЛЕКТРОМОТОРНИХ ПОГОНА|Регулација електромоторних погона|REGULACIJA ELEKTROMOTORNIH POGONA|Regulacija elektromotornih pogona|регулација електромоторних погона
Odabrana poglavlja operativnih sistema||Odabrana poglavlja operativnih sistema|odabrana poglavlja operativnih sistema|ODABRANA POGLAVLJA OPERATIVNIH SISTEMA|Одабрана поглавља оперативних система|одабрана поглавља оперативних система|Odabrana poglavlja operativnih sistema|ОДАБРАНА ПОГЛАВЉА ОПЕРАТИВНИХ СИСТЕМА
Osnovi sistemskog inženjerstva||Osnovi sistemskog inženjerstva|osnovi sistemskog inzenjerstva|основи системског инжењерства|OSNOVI SISTEMSKOG INZENJERSTVA|Основи системског инжењерства|Osnovi sistemskog inženjerstva|osnovi sistemskog inženjerstva|Osnovi sistemskog inzenjerstva|OSNOVI SISTEMSKOG INŽENJERSTVA|ОСНОВИ СИСТЕМСКОГ ИНЖЕЊЕРСТВА
Osnovi radarskih sistema||Osnovi radarskih sistema|основи радарских система|OSNOVI RADARSKIH SISTEMA|ОСНОВИ РАДАРСКИХ СИСТЕМА|Основи радарских система|Osnovi radarskih sistema|osnovi radarskih sistema
Not Grouped|0000|Not Grouped|Not Sorted|Not Found

View File

@ -2,21 +2,36 @@ package dev.ksan.etfoglasiserver;
import dev.ksan.etfoglasiserver.service.Scraper;
import java.util.Scanner;
import dev.ksan.etfoglasiserver.util.SubjectLoader;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Bean;
@SpringBootApplication
public class EtfoglasiServerApplication {
public static void main(String[] args) {
SpringApplication.run(EtfoglasiServerApplication.class, args);
ApplicationContext context = SpringApplication.run(EtfoglasiServerApplication.class, args);
boolean running = true;
//temp.run();
System.out.println("EtfoglasiServerApplication started");
Scraper scraper = context.getBean(Scraper.class);
/*
SubjectLoader subjectLoader = context.getBean(SubjectLoader.class);
subjectLoader.loadSubjects();
System.out.println("Loading...");
subjectLoader.loadAlts();
*/
Scraper scraper = new Scraper();
Thread webClientThread = new Thread(scraper, "WebClientThread");
Scanner scanner = new Scanner(System.in);
webClientThread.start();
@ -43,4 +58,16 @@ public class EtfoglasiServerApplication {
scanner.close();
}
}
@Bean
public CommandLineRunner commandLineRunner(SubjectLoader subjectLoader) {
return args -> {
subjectLoader.loadAlts();
try{
}catch (Exception e){
e.printStackTrace();
}
subjectLoader.loadAlts();
};
}
}

View File

@ -24,7 +24,7 @@ public class EntryController {
}
@GetMapping("/entry/{entryId}")
public Entry getEntry(@PathVariable UUID entryId) {
public Entry getEntry(@PathVariable String entryId) {
return service.getEntryById(entryId);
}
@ -39,7 +39,7 @@ public class EntryController {
}
@DeleteMapping("/entry/{entryId}")
public void deleteEntry(@PathVariable UUID entryId) {
public void deleteEntry(@PathVariable String entryId) {
service.deleteEntry(entryId);
}
}

View File

@ -0,0 +1,34 @@
package dev.ksan.etfoglasiserver.controller;
import dev.ksan.etfoglasiserver.model.SubjectAlt;
import dev.ksan.etfoglasiserver.service.SubjectAltService;
import java.util.List;
import java.util.UUID;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@RestController
public class SubjectAltController {
@Autowired SubjectAltService service;
@GetMapping("/subjectalt")
public List<SubjectAlt> getSubjects() {
return service.getSubjectAlts();
}
@GetMapping("/subjectalt/{subjectId}")
public SubjectAlt getSubject(@PathVariable UUID subjectId) {
return service.getSubjectAlt(subjectId);
}
@PostMapping("/subjectalt")
public void addSubject(@RequestBody SubjectAlt subject) {
service.addSubjectAlt(subject);
}
@DeleteMapping("/subjectalt/{subjectId}")
public void deleteSubject(@PathVariable UUID subjectId) {
service.deleteSubjectAlt(subjectId);
}
}

View File

@ -1,11 +1,12 @@
package dev.ksan.etfoglasiserver.dto;
import java.time.LocalDateTime;
import java.util.List;
import java.util.UUID;
public class EntryDTO {
private UUID id;
private String id;
private String title;
private LocalDateTime time_published;
private String info_entry;
@ -13,15 +14,35 @@ public class EntryDTO {
private String filepath;
private UUID subjectId;
public EntryDTO() {}
public EntryDTO( String title, LocalDateTime time_published, String info_entry, String paragraph, String filepath, UUID subjectId) {
this.title = title;
this.time_published = time_published;
this.info_entry = info_entry;
this.paragraph = paragraph;
this.filepath = filepath;
this.subjectId = subjectId;
}
public EntryDTO( String title, LocalDateTime time_published, String info_entry, List<String> paragraphs, String filepath, UUID subjectId) {
this.title = title;
this.time_published = time_published;
this.info_entry = info_entry;
this.paragraph = String.join("\n",paragraphs);
this.filepath = filepath;
this.subjectId = subjectId;
}
public UUID getSubjectId() {
return subjectId;
}
public UUID getId() {
public String getId() {
return id;
}
public void setId(UUID id) {
public void setId(String id) {
this.id = id;
}
public void setSubjectId(UUID subjectId) {
@ -40,6 +61,10 @@ public class EntryDTO {
return time_published;
}
public void setParagraph(List<String> paragraphs) {
this.paragraph = String.join("\n", paragraphs);
}
public void setTime_published(LocalDateTime time_published) {
this.time_published = time_published;
}

View File

@ -1,6 +1,7 @@
package dev.ksan.etfoglasiserver.model;
import dev.ksan.etfoglasiserver.dto.EntryDTO;
import dev.ksan.etfoglasiserver.util.HashGenerator;
import jakarta.persistence.*;
import java.time.LocalDateTime;
import java.util.List;
@ -9,9 +10,7 @@ import java.util.UUID;
@Entity
@Table(name = "entries")
public class Entry {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private UUID id;
@Id private String id;
@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(nullable = false)
@ -50,7 +49,15 @@ public class Entry {
this.paragraph = String.join("\n", paragraph);
this.filepath = filepath;
}
public Entry( String title, LocalDateTime time_published, String info_entry, List<String> paragraphs, String filepath, Subject subjectId) {
this.title = title;
this.time_published = time_published;
this.info_entry = info_entry;
this.paragraph = String.join("\n",paragraphs);
this.filepath = filepath;
this.subject= subjectId;
}
public Entry(EntryDTO entry) {
this.title = entry.getTitle();
this.paragraph = entry.getParagraph();
@ -59,6 +66,15 @@ public class Entry {
this.time_published = entry.getTime_published();
}
@PrePersist
public void generateId() {
if (this.id == null) {
this.id = HashGenerator.hashEntry(this);
}
}
public String getParagraph() {
return paragraph;
}

View File

@ -0,0 +1,53 @@
package dev.ksan.etfoglasiserver.model;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;
import jakarta.persistence.FetchType;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
import jakarta.persistence.JoinColumn;
import jakarta.persistence.ManyToOne;
import jakarta.persistence.Table;
import java.util.UUID;
@Entity
@Table(name = "alt_subject")
public class SubjectAlt {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private UUID id;
@Column(nullable = false)
String name;
@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(nullable = false)
private Subject subject;
public SubjectAlt() {}
public SubjectAlt(String name, Subject subject) {
this.name = name;
this.subject = subject;
}
public UUID getId() {
return id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Subject getSubject() {
return subject;
}
public void setSubject(Subject subject) {
this.subject = subject;
}
}

View File

@ -6,4 +6,4 @@ import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;
@Repository
public interface EntryRepo extends JpaRepository<Entry, UUID> {}
public interface EntryRepo extends JpaRepository<Entry, String> {}

View File

@ -0,0 +1,18 @@
package dev.ksan.etfoglasiserver.repository;
import dev.ksan.etfoglasiserver.model.Subject;
import dev.ksan.etfoglasiserver.model.SubjectAlt;
import java.util.List;
import java.util.UUID;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;
@Repository
public interface SubjectAltRepo extends JpaRepository<SubjectAlt, UUID> {
@Query("SELECT y.subject FROM SubjectAlt y WHERE y.name ILIKE CONCAT('%', :title, '%') ")
public List<Subject> findSubjectIdWithTitle(@Param("title") String title);
}

View File

@ -8,4 +8,5 @@ import org.springframework.stereotype.Repository;
@Repository
public interface SubjectRepo extends JpaRepository<Subject, UUID> {
boolean existsByName(String name);
Subject findByName(String name);
}

View File

@ -21,7 +21,7 @@ public class EntryService {
return entryRepo.findAll();
}
public Entry getEntryById(UUID id) {
public Entry getEntryById(String id) {
return entryRepo.findById(id).orElseThrow(() -> new RuntimeException("Entry not found"));
}
@ -35,6 +35,15 @@ public class EntryService {
newEntry.setSubject(subject);
entryRepo.save(newEntry);
}
public void addEntry(Entry entry) {
try {
entryRepo.save(entry);
}catch (Exception e) {
System.out.println("Duplicate");
}
}
public void updateEntry(EntryDTO entry) {
Subject subject =
@ -61,7 +70,7 @@ public class EntryService {
entryRepo.save(updateEntry);
}
public void deleteEntry(UUID id) {
public void deleteEntry(String id) {
entryRepo.deleteById(id);
}
}

View File

@ -6,17 +6,29 @@ import com.gargoylesoftware.htmlunit.html.DomElement;
import com.gargoylesoftware.htmlunit.html.HtmlAnchor;
import com.gargoylesoftware.htmlunit.html.HtmlElement;
import com.gargoylesoftware.htmlunit.html.HtmlPage;
import dev.ksan.etfoglasiserver.dto.EntryDTO;
import dev.ksan.etfoglasiserver.model.Entry;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
import java.util.logging.ConsoleHandler;
import java.util.logging.Handler;
import java.util.logging.Level;
import java.util.logging.Logger;
import dev.ksan.etfoglasiserver.model.Subject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Service;
@Component
public class Scraper implements Runnable {
@Autowired SubjectAltService altService;
@Autowired EntryService entryService;
private static List<Entry> entries = new ArrayList<>();
private WebClient webClient;
@ -71,7 +83,7 @@ public class Scraper implements Runnable {
int ul_idSelection = 1;
for (HtmlAnchor anchor : toggles) {
String groupName = anchor.asNormalizedText().split("\n")[0].trim();
System.out.println("Group name: " + groupName);
// System.out.println("Group name: " + groupName);
HtmlPage updatedPage = anchor.click();
webClient.waitForBackgroundJavaScript(1000);
@ -82,7 +94,7 @@ public class Scraper implements Runnable {
rawElement instanceof HtmlElement ? (HtmlElement) rawElement : null;
if (listElement == null) {
System.out.println("An element with id " + ul_id + " was not found");
// System.out.println("An element with id " + ul_id + " was not found");
ul_idSelection++;
continue;
}
@ -98,12 +110,14 @@ public class Scraper implements Runnable {
paragraphs.add(pTag.asNormalizedText());
}
// Entry entry = new Entry(title, groupName, date, info, paragraphs);
Subject subjectid = altService.findSubjectIdWithTitle(title);
Entry entry =
new Entry(title, LocalDateTime.parse(date, formatter), info, paragraphs, null);
entry.setParagraph(paragraphs);
System.out.println(entry);
new Entry(
title.trim(), LocalDateTime.parse(date, formatter), info, paragraphs, null, subjectid);
Thread.sleep(2000);
entryService.addEntry(entry);
entries.add(entry);
}
@ -114,7 +128,7 @@ public class Scraper implements Runnable {
} catch (Exception e) {
e.printStackTrace();
System.out.println("ERROR: " + e.getMessage());
throw new RuntimeException("Error in webscraper");
} finally {
this.webClient.close();
}

View File

@ -0,0 +1,54 @@
package dev.ksan.etfoglasiserver.service;
import dev.ksan.etfoglasiserver.model.Subject;
import dev.ksan.etfoglasiserver.model.SubjectAlt;
import dev.ksan.etfoglasiserver.repository.SubjectAltRepo;
import java.util.List;
import java.util.UUID;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Pageable;
import org.springframework.stereotype.Service;
@Service
public class SubjectAltService {
@Autowired SubjectAltRepo subjectAltRepo;
public List<SubjectAlt> getSubjectAlts() {
return subjectAltRepo.findAll();
}
public SubjectAlt getSubjectAlt(UUID id) {
return subjectAltRepo
.findById(id)
.orElseThrow(() -> new RuntimeException("subjectAlt not found"));
}
// todo
public void addSubjectAlt(SubjectAlt subjectAlt) {
try {
subjectAltRepo.save(subjectAlt);
} catch (Exception e) {
e.printStackTrace();
}
}
// todo add update method and modify add
public void deleteSubjectAlt(UUID id) {
subjectAltRepo.deleteById(id);
}
public Subject findSubjectIdWithTitle(String title) {
List<Subject> result = subjectAltRepo.findSubjectIdWithTitle(title);
if(result.isEmpty() ) {
result = subjectAltRepo.findSubjectIdWithTitle("Not Grouped");
System.out.println(title);
}
return result.get(0);
}
}

View File

@ -22,7 +22,7 @@ public class SubjectService {
public void addSubject(Subject subject) {
if( subjectRepo.existsByName(subject.getName())) {
if (subjectRepo.existsByName(subject.getName())) {
throw new RuntimeException("Subject already exists");
}
@ -34,14 +34,20 @@ public class SubjectService {
public void updateSubject(Subject subject) {
Subject existingSubject = subjectRepo.findById(subject.getId()).orElseThrow(()-> new RuntimeException("Subject not found"));
existingSubject.setName(subject.getName());
existingSubject.setCode(subject.getCode());
subjectRepo.save(existingSubject);
Subject existingSubject =
subjectRepo
.findById(subject.getId())
.orElseThrow(() -> new RuntimeException("Subject not found"));
existingSubject.setName(subject.getName());
existingSubject.setCode(subject.getCode());
subjectRepo.save(existingSubject);
}
public void deleteSubject(UUID id) {
subjectRepo.deleteById(id);
}
public Subject getSubject(String name) {
return subjectRepo.findByName(name);
}
}

View File

@ -1,30 +0,0 @@
package dev.ksan.etfoglasiserver;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType;
import org.springframework.web.client.RestTemplate;
import java.util.List;
public class temp {
private static final String URL = "http://localhost:8080/subject";
public static void run() {
System.out.println("started to add valjda");
List<String> subjects = List.of(
);
RestTemplate restTemplate = new RestTemplate();
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
for (String name : subjects) {
String json = "{ \"name\": \"" + name + "\", \"code\": \"\" }";
HttpEntity<String> request = new HttpEntity<>(json, headers);
restTemplate.postForObject(URL, request, Void.class);
System.out.println("Added subject: " + name);
}
}
}

View File

@ -0,0 +1,41 @@
package dev.ksan.etfoglasiserver.util;
import dev.ksan.etfoglasiserver.model.Entry;
import java.nio.charset.StandardCharsets;
import java.security.MessageDigest;
import java.util.Objects;
public class HashGenerator {
public static String hashEntry(Entry entry) {
String data =
Objects.toString(entry.getTitle(), "")
+ Objects.toString(entry.getDate(), "")
+ Objects.toString(entry.getParagraph(), "")
+ Objects.toString(entry.getFilepath(), "");
try {
final MessageDigest digest = MessageDigest.getInstance("SHA3-256");
final byte[] hashbytes = digest.digest(data.getBytes(StandardCharsets.UTF_8));
String sha3Hex = bytesToHex(hashbytes);
return sha3Hex;
} catch (Exception e) {
throw new RuntimeException("Failed to generate hashed id of Entry: " + entry.getTitle());
}
}
private static String bytesToHex(byte[] hash) {
StringBuilder hexString = new StringBuilder(2 * hash.length);
for (int i = 0; i < hash.length; i++) {
String hex = Integer.toHexString(0xff & hash[i]);
if (hex.length() == 1) {
hexString.append('0');
}
hexString.append(hex);
}
return hexString.toString();
}
}

View File

@ -0,0 +1,84 @@
package dev.ksan.etfoglasiserver.util;
import dev.ksan.etfoglasiserver.model.Subject;
import dev.ksan.etfoglasiserver.model.SubjectAlt;
import dev.ksan.etfoglasiserver.service.SubjectAltService;
import dev.ksan.etfoglasiserver.service.SubjectService;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;
@Service
public class SubjectLoader {
@Autowired SubjectService service;
@Autowired SubjectAltService altService;
private static final String URLSubjects = "http://localhost:8080/subject";
private static final String URLSubjectsAlts = "http://localhost:8080/subjectalts";
private List<List<String>> alts = new ArrayList<>();
public void loadAlts() {
for (List<String> list : alts) {
Subject subject = service.getSubject(list.getFirst());
for (String item : list) altService.addSubjectAlt(new SubjectAlt(item, subject));
}
}
public void loadSubjects() {
List<String> subjects = new ArrayList<>();
List<String> codes = new ArrayList<>();
try (BufferedReader reader = new BufferedReader(new FileReader("./init/subjects.txt"))) {
String line;
int counter = 0;
while ((line = reader.readLine()) != null) {
this.alts.add(new ArrayList<>());
String[] parts = line.split("\\|");
for (int i = 0; i < parts.length; i++) {
if (i == 0) {
subjects.add(parts[i]);
} else if (i == 1) {
codes.add(parts[i]);
} else {
this.alts.get(counter).add(parts[i]);
}
}
counter++;
}
} catch (IOException e) {
throw new RuntimeException("Subjects file now found.");
}
RestTemplate restTemplate = new RestTemplate();
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
try {
for (String name : subjects) {
String json = "{ \"name\": \"" + name + "\", \"code\": \"\" }";
HttpEntity<String> request = new HttpEntity<>(json, headers);
restTemplate.postForObject(URLSubjects, request, Void.class);
System.out.println("Added subject: " + name);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

View File

@ -2,4 +2,3 @@ spring.application.name=etfoglasi-server
spring.datasource.url=jdbc:postgresql://localhost:5432/etfo-db
spring.datasource.username=test
spring.datasource.password=test
spring.jpa.show-sql=true