Operator OR Pencarian pada Kasus document to document

4.5.2.1. Operator OR

Pengambilan bobot W_ij pada masing-masing term yang telah diperoleh, yang diimplementasikan pada kode program 4.35 berikut ini : Kode Program 4.35 Implementasi Pengambilan W_ij pada Pencarian Kasus public ListString TF_IDF_ORControl koneksi, InvertedIndexBasic ii, String cari { try { StringTokenizercari, .,-[]{}|+=?:;; while token2.hasMoreTokens { String nxtTkn2 = token2.nextToken; Term_Kasus cr1 = koneksi.CariIdTermKasusnxtTkn2; String ID_TERM = cr1.getId_term_kasus; String test = ii.printSearch2nxtTkn2; if test = null { StringTokenizer tokenTest = new StringTokenizertest; while tokenTest.hasMoreTokens { String hsl = tokenTest.nextToken.toString; Indeks_Kasus cr2 = koneksi.cariW_ij_KasusID_TERM, hsl; Double W_ij = cr2.getW_ij; list_wij.addW_ij; listDok.addhsl; } } } hasilOR = new InvertedIndexBasic.duplikasiList_CountWijlistDok, list_wij; } catch SQLException ex{ Logger.getLoggerOperatorAND_OR.class.getName.logLevel.SEVERE, null, ex; } } return hasilOR; } Proses yang diperlukan untuk operasi OR adalah proses untuk menghilangkan duplikasi pada list id dokumen dan perhitungan W_ij, kemudian akan diurutkan descending sebagai berikut : Kode Program 4.36 Implementasi Penghilang Duplikasi public ListString duplikasiList_CountWijLinkedListString list, LinkedListDouble list_wij { LinkedListString ListDokBaru = new LinkedListString; LinkedListDouble ListWijBaru = new LinkedListDouble; list_wij.size; for int i = 0; i list.size; i++ { String currentDok = list.geti; Double currentWij = list_wij.geti; if i == 0 { ListDokBaru.addcurrentDok; ListWijBaru.addcurrentWij; } else if i = 0 { if ListDokBaru.containscurrentDok { int indx = ListDokBaru.indexOfcurrentDok; double wij = double ListWijBaru.getindx; Double wij_jumlah = list_wij.geti + wij; ListWijBaru.setindx, wij_jumlah; } else if ListDokBaru.containscurrentDok { ListDokBaru.addcurrentDok; ListWijBaru.addcurrentWij; } } } MapString, Double mp = new HashMapString, Double; for int j = 0; j ListDokBaru.size; j++ { String dok_2 = ListDokBaru.getj; Double wij_2 = ListWijBaru.getj; mp.putdok_2, wij_2; } hasilDuplikasiList = this.sortByValuesDescendingmp; return hasilDuplikasiList; } Pada kode program 4.37 berikut ini merupakan implementasi pencarian dokumen kasus pada tabel Kasus berdasarkan id_kasus : Kode Program 4.37 Implementasi Pencarian Dokumen Kasus Pada Tabel Kasus public Kasus AmbilKasusString id_kasus throws SQLException { PreparedStatement statement = null; ResultSet rs2 = null; conn.setAutoCommitfalse; String sql = SELECT id_kasus, judul, dok_kasus from kasus + where id_kasus = + id_kasus + ; statement = conn.prepareStatementsql; rs2 = statement.executeQuery; Kasus kasus = new Kasus; while rs2.next { kasus.setId_kasusrs2.getString1; kasus.setJudulrs2.getString2; kasus.setDok_ksus_streamrs2.getBinaryStream3; } conn.commit; return kasus; }

4.6. Implementasi Antarmuka

4.6.1. Form Utama

Pada Form Utama ini pengguna dapat memilih menu Pencarian atau Undang-Undang. Menu Pencarian berfungsi untuk mencari pasal berdasarkan query maupun dokumen kasus, dan menu Undang-Undang berfungsi untuk menampilkan isi pasal yang ingin dicari. Pihak administrator dapat login dengan memilih menu Administrator. Gambar 4.1 Antarmuka Form Utama