Ad (728x90)

Senin, 12 November 2012

Aplikasi Chatting Berbasis GUI


import java.net.*;
import java.io.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

class ChatServer extends JFrame{

JLabel lblPesan =  new JLabel  ("Kirim Pesan :");
TextArea taPesan=new TextArea(4,50);
JLabel lblBalasan = new JLabel ("Dari Teman  :");
TextArea taTeman=new TextArea(4,50);
JButton btnSend=new JButton("Send");
JButton btnClose=new JButton("Close Connection");
ServerSocket sktServer;
Socket conClient;

ObjectInputStream fromClient;
ObjectOutputStream toClient;
String s=null;
Container c;
 

public void sendData(){
           try{
                       toClient=new ObjectOutputStream(conClient.getOutputStream());
                       toClient.writeObject(taPesan.getText());
                       System.out.println(taPesan.getText());
                       taPesan.setText("");
               taPesan.requestFocus();
             
           }
           catch (EOFException ex){
                       ;
           }
           catch(NullPointerException npe){
                     JOptionPane.showMessageDialog(null, "Koneksi Belum Tersambung ! ",
                                 "Pesan", JOptionPane.ERROR_MESSAGE);
           }
           catch(SocketException se){
                     JOptionPane.showMessageDialog(null, "Koneksi Putus !",
                                 "Pesan", JOptionPane.ERROR_MESSAGE);
           }
           catch(IOException io){
                       System.out.println("IO Exception");
                       io.printStackTrace();
           }
}//end void sendData()


public void closeConnection(){
           try{
                     //toClient.writeObject("bye");
                     conClient.close();
                     conClient=null;
                     System.exit(0);
           }//end try
           catch (EOFException ex){
                       ;
           }
           catch(IOException io){
                       System.out.println("IO Exception");
                       io.printStackTrace();
           }
}//end closeConnection();

public ChatServer()throws IOException{
                     c = getContentPane();
                     c.setLayout (new FlowLayout());
                     c.add (lblPesan);
                     c.add (taPesan);
                     c.add (lblBalasan);
                     c.add (taTeman);
                     c.add (btnSend);
                     c.add (btnClose);
                       

           btnSend.addActionListener (new ActionListener(){
                       public void actionPerformed(ActionEvent evt){
                                   sendData();
                       }//end void actionPerformed
           });

           btnClose.addActionListener (new ActionListener(){
                       public void actionPerformed(ActionEvent evt){
                                   closeConnection();
                       }//end void actionPerformed
           });

}//end public ChatServer()

         public void terimaKoneksi() throws IOException{
             //sktServer=new ServerSocket(2000,1000);
                     sktServer=new ServerSocket(2000);
                     conClient=sktServer.accept();
                     //tunggu sampai client masuk melalui port 2000

                     //System.out.println("Tersambung dengan client " +
                                 //conClient.getInetAddress());

                     JOptionPane.showMessageDialog(null, "Tersambung dengan Client " +
                                 conClient.getInetAddress().toString(), "Pesan",
                                 JOptionPane.INFORMATION_MESSAGE);
                     sktServer.close();

                     try{
                                               
                                 fromClient=new ObjectInputStream(conClient.getInputStream());
                                 do{
                                             try{
                                                         s=(String) fromClient.readObject();
                                                         //System.out.println(s);
                                                         taTeman.setText(s);
                                             }//end try
                                             catch(ClassNotFoundException ex){
                                                         System.out.println("Error");
                                             }//end catch
                                 }//end do
                                 while (!s.equals("bye"));
                     }//end try
                     catch (EOFException ex){
                                 ;
                     }
                     catch (IOException io) {
                                 System.out.println("IO Exception");
                                 io.printStackTrace();
                     }
                     finally {
                                 System.out.println("Closed");
                                 conClient.close();
                     }//end finally
         }//end void terimaKoneksi()

         public static void main(String[] args) throws IOException
         {
                     ChatServer svr = new ChatServer();
                     svr.setTitle("Chatting - Server");
                     svr.setLocation (300,300);
                     svr.setSize(500,250);
                     svr.setVisible(true);          
                     svr.addWindowListener(new WindowAdapter(){
                                 public void windowClosing(WindowEvent ev){                              
                                             System.exit(0);
                                 }//end void
                     });
                     //supaya GUI muncul dulu & bisa terima koneksi, maka
                     //method terimaKoneksi() diletakkan di sini
                     svr.terimaKoneksi();

         }//end main
}//end class

--------------------------------------------------------------------------------

import java.net.*;
import java.io.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

class ChatClient extends JFrame{

JLabel lblPesan =  new JLabel  ("Kirim Pesan :");
TextArea taPesan=new TextArea(4,50);
JLabel lblBalasan = new JLabel ("Dari Teman  :");
TextArea taBalasan=new TextArea(4,50);
JButton btnSend=new JButton("Send");
JButton btnOpen=new JButton("Open Connection");
JButton btnClose=new JButton("Close Connection");
Socket con=null;
ObjectOutputStream toServer;
ObjectInputStream fromServer;
String balasan=null;
String inputIPServer;

public void openConnection(){
           try{
                     //input dialog u/ memasukkan IP Address Chat Server
                     inputIPServer=JOptionPane.showInputDialog("Inputkan IP Server");

                     //koneksi ke port 2000 pada IP Address Server
                     con=new Socket(InetAddress.getByName(inputIPServer),2000);
                     toServer=new ObjectOutputStream(con.getOutputStream());
           }//end try
           catch (EOFException ex){
                       ;
           }
           catch(IOException io){
                       System.out.println("IO Exception");
                       io.printStackTrace();
           }
}//end openConnection();

public void sendData(){
           try{
                       toServer.writeObject(taPesan.getText());
                       taPesan.setText("");
               taPesan.requestFocus();
           }
           catch (EOFException ex){
                       ;
           }
           catch(IOException io){
                       System.out.println("IO Exception");
                       io.printStackTrace();
           }
}//end void sendData()

public void getData(){
           try{
                       fromServer=new ObjectInputStream(con.getInputStream());
                       balasan=(String) fromServer.readObject();
                       //System.out.println(balasan);
                       taBalasan.setText(balasan);
           }
           catch (ClassNotFoundException ex){
                       System.out.println("Error");
           }
           catch (EOFException ex){
                       ;
           }
           catch(IOException io){
                       System.out.println("IO Exception");
                       io.printStackTrace();
           }
}//end void getData()
public void closeConnection(){
           try{
                     toServer.writeObject("bye");
                     con.close();
                     con=null;
           }//end try
           catch (EOFException ex){
                       ;
           }
           catch(IOException io){
                       System.out.println("IO Exception");
                       io.printStackTrace();
           }
}//end closeConnection();

public ChatClient(){
           Container c = getContentPane();
           c.setLayout (new FlowLayout());
           c.add (lblPesan);
           c.add (taPesan);
           c.add (lblBalasan);
           c.add (taBalasan);
           c.add (btnOpen);
           c.add (btnSend);
           c.add (btnClose);

           btnOpen.addActionListener (new ActionListener(){
                       public void actionPerformed(ActionEvent evt){
                                   openConnection();
                       }//end void actionPerformed
           });

           btnSend.addActionListener (new ActionListener(){
                       public void actionPerformed(ActionEvent evt){
                                   sendData();
                                   getData();
                       }//end void actionPerformed
           });

           btnClose.addActionListener (new ActionListener(){
                       public void actionPerformed(ActionEvent evt){
                                   closeConnection();
                       }//end void actionPerformed
           });
   
           //pack();
}//end public ChatClient()

         public static void main(String[] args)
         {
                     ChatClient klien = new ChatClient();
                     klien.setTitle("Chatting - Client");
                     klien.setLocation (300,300);
                     klien.setSize(500,250);
                     klien.setVisible(true);         
                     klien.addWindowListener(new WindowAdapter(){
                                 public void windowClosing(WindowEvent ev){                                
                                             System.exit(0);
                                 }//end void
                     });

         }//main
}//class

Tugas pert 6



--------------------------------------------------------------------

alter trigger update_quo on detil_peminjaman
after insert
as
begin
declare @nim char (11)
declare @kode_buku numeric (18,0)
declare @no_pinjam char (11)
set @no_pinjam = (select no_peminjaman from inserted)
set @nim = (select mahasiswa from peminjaman where no_peminjaman = @no_pinjam)
set @kode_buku = (select id_buku from inserted)
exec update_quota @nim
exec update_buku @kode_buku

end

--------------------------------------------------------------------

alter procedure update_quota (@nim char(11))
as
begin
declare @jum int
--set @jum = (select quota_perpus from mahasiswa where nim = @nim)
update mahasiswa set quota_perpus = quota_perpus-1 where nim = @nim
end

--------------------------------------------------------------------

alter procedure update_buku (@id_buku numeric (18,0))
as
begin
update buku set jumlah = jumlah -1 where id = @id_buku
end

--------------------------------------------------------------------

insert into peminjaman values ('124', getdate(), '05410104001')

insert into detil_peminjaman values ('124', '1', '0')

--------------------------------------------------------------------

alter trigger cek_quotaMhs on detil_peminjaman
instead of insert
as
begin
declare @nim char (11)
declare @no_pinjam char (11)
declare @jumlah_quota int
declare @kode_buku numeric (18,0)
declare @denda numeric (18,0)
set @no_pinjam = (select no_peminjaman from inserted)
set @nim = (select mahasiswa from peminjaman where no_peminjaman = @no_pinjam)
set @jumlah_quota = dbo.jumlah_quotaMhs (@nim)
set @kode_buku = (select id_buku from inserted)
set @denda = (select denda from inserted)
if @jumlah_quota = 0
begin
exec hapus_peminjaman @no_pinjam
end
else if  @jumlah_quota >0
insert into detil_peminjaman values (@no_pinjam, @kode_buku, @denda )

end

--------------------------------------------------------------------
alter function jumlah_quotaMhs (@nim char (11))
returns int
as
begin
declare @jumlah int
set @jumlah = (select quota_perpus from mahasiswa where nim = @nim)
return @jumlah
end

--------------------------------------------------------------------

alter procedure hapus_peminjaman (@no_pinjam char(10))
as
begin
delete from peminjaman where no_peminjaman = @no_pinjam
end

--------------------------------------------------------------------

insert into peminjaman values ('298', getdate(), '05410104001')

insert into detil_peminjaman values ('298', '2', 0)

Minggu, 04 November 2012

Jawaban Latihan (5)


-- No. 1
--procedure sp_GetMKPerDosen untuk menghitung seluruh data MK
create proc sp_GetMKPerDosen @nid as char(6)
as
begin
--menampilkan data MK berdasarkan dosen yang diinputkan
select distinct d.nama, mk.kode_mk, mk.nama, mk.sks, mk.semester
from mk, nilai n, dosen d
where mk.kode_mk = n.kode_mk and
n.nid = d.nid and
d.nid = @nid --'010103'

--deklarasi variabel untuk menampung jumlah MK berdasarkan dosen yang diinputkan
declare @jumlah as numeric;

--set nilai jumlah
set @jumlah = (select count(distinct mk.kode_mk)
from mk, nilai n, dosen d
where mk.kode_mk = n.kode_mk and
n.nid = d.nid and
d.nid = @nid) --'010103'
print 'Jumlah MK yang diambil dosen adalah ' + convert(char,@jumlah)
end

--eksekusi procedure sp_GetMKPerDosen
--cara 1
sp_GetMKPerDosen '010306'
--cara 2
exec sp_GetMKPerDosen '010103'

--hapus procedure sp_GetMKPerDosen
drop proc sp_GetMKPerDosen

--No. 2
--procedure sp_insertDosen untuk memasukan data dosen
create proc sp_insertDosen @nid as char(6), @nama as varchar(100)
as
begin
insert into dosen
values (@nid, @nama)
end

--lihat data dosen
select * from dosen

--eksekusi procedure sp_insertDosen
sp_insertDosen '123456','Edo Yonatan K.';

--lihat data dosen
select * from dosen

--hapus procedure sp_insertDosen
drop proc sp_insertDosen

--No. 3
--procedure sp_DnsertDosen untuk menghapus data dosen
create proc sp_DeleteDosen @nid as char(6)
as
begin
delete from dosen where nid = @nid
end

--lihat data dosen
select * from dosen

--eksekusi procedure sp_DeleteDosen
sp_DeleteDosen '123456';

--lihat data dosen
select * from dosen

--hapus procedure sp_DeleteDosen
drop proc sp_DeleteDosen

Jawaban Tugas Prak (5)


-- No. 1
--function fCekMhs untuk mengecek nama
alter function fCekMhs (@nama as varchar(100))
returns numeric
as
begin
--set nilai @jumlah
return (select count(*)
from mahasiswa
where nama = @nama)
end

--hapus function fCekMhs
drop function fCekMhs

create proc sp_GetNilaiMhs @nama as varchar(100)
as
begin
--deklarasi variabel untuk menampung jumlah mahasiswa yang terdaftar
declare @jumlah as numeric

--set nilai pada variabel jumlah dengan memanggil function fCekMhs
set @jumlah = dbo.fCekMhs(@nama)

--cek jika jumlah = 0 => data tidak ada, maka akan mengembalikan nilai -1
if @jumlah = 0
begin
return -1
end
else
begin
select m.nama, n.tugas, n.uts, n.uas
from mahasiswa m, nilai n
where m.nim = n.nim and
nama = @nama;
end
end

--hapus procedure sp_GetNilaiMhs
drop proc sp_GetNilaiMhs

--deklarasi variabel untuk menampung hasil return dan non return
declare @jumlahData INT;

--eksekusi procedure sp_GetNilaiMhs
exec @jumlahData = sp_GetNilaiMhs 'Cinta';
print @jumlahData;



--No. 2
begin transaction

--function fBuatNIM untuk format NIM
create function fBuatNIM (@nim as varchar(11))
returns varchar(11)
as
begin
return right(year(getdate()),2)+'41010'+right('0000'+@nim,4);
end

--hapus function fBuatNIM
drop function fBuatNIM

--procedure sp_InsertMhs untuk menghitung seluruh data MK
create proc sp_InsertMhs @nim_urut as varchar(11),@nama as varchar(100),@alamat as varchar(100),
@kota as varchar(50),@jns_kelamin as char(1),@sts_nikah as char(1)
as
begin
--deklarasi variabel untuk menampilkan jumlah mahasiswa
declare @jumlah as numeric;


--set nilai jumlah mahasiswa sebelum ditambahkan
set @jumlah = (select count(*) from mahasiswa);

--cetak jumlah mahasiswa sebelum ditambahkan
print 'jumlah data mahasiswa (sebelum)' + convert(char,@jumlah);

--query memasukkan data mahasiswa
insert into mahasiswa
values (dbo.fBuatNIM(@nim_urut), @nama, @alamat, @kota, @jns_kelamin, @sts_nikah)

--set nilai jumlah mahasiswa sesudah ditambahkan
set @jumlah = (select count(*) from mahasiswa);

--cetak jumlah mahasiswa sesudah ditambahkan
print 'jumlah data mahasiswa (sesudah)' + convert(char,@jumlah);
end

--eksekusi procedure sp_InsertMhs
sp_InsertMhs '58','Edo Yonatan K.','Gunung Sari Indah L. 39','Surabaya','P','B'

--hapus procedure sp_InsertMhs
drop proc sp_InsertMhs

--hasilnya ditampilkan dalam bentuk tabel
select * from mahasiswa

rollback transaction

Selasa, 30 Oktober 2012

About JSC Bojonegoro


Jefide Software Crew sebagai salah satu entitas bisnis di bidang Teknologi Informasi dan komunikasi memberikan  suatu   solusi   yang     lebih dari yang lain    untuk kepuasan klien. Jefide Software Crew, berkedudukan di Bojonegoro. Dengan moto “Innovative IT & Business Solution”kepuasan klien menjadi misi kami. Kami menawarkan solusi teknologi information & communication  (infocom) yang inovatif dan komprehensif untuk memberikan hasil kerja yang berkualitas handal (reliable), aman  (secure), dan sesuai kebutuhan (customized), tapi dengan harga yang sangat kompetitif. Kemampuan, penguasaan teknologi, dan pengalaman (portfolios) berkembang sangat signifikan. 
VISI
Visi kami adalah menjadi perusahaan terkenal yang mengedepankan kekuatan solusi  dan kompetensi di bidang teknologi informasi dan komunikasi untuk memberikan kepuasan stakeholders.

MISI
  • Memberikan pelayanan terbaik demi tercapainya kepuasan pelanggan dengan jaminan kualitas pekerjaan, kecepatan, ketepatan, dan harga yang kompetitif.
  • Meningkatkan kemampuan dan mengoptimalkan  pengelolaan sumber daya manusia yang unggul dan dapat dipercaya.
  • Mengoptimalkan penggunaan teknologi yang handal (reliable), aman (secure), dan murah (low cost) menguntungkan.
  • Membangun pusat riset dan pengelolaan portfolios perusahaan (library)
  • Membangun kemitraan strategis dan bersinergi dengan klien maupun partner dengan prinsip saling menguntungkan.

KOMPETENSI
Sudah menjadi tekad kami untuk selalu memberikan layanan terbaik, melalui pengembangan keahlian dan profesionalisme SDM, serta melakukan inovasi teknologi serta solusi untuk mendukung tercapainya visi untuk menjadi yang terdepan di bidang jasa teknologi informasi.
about

Bisnis Software House

Bisnis software house adalah sekelompok orang atau individu atau perusahaan kecil yang melakukan bisnis dalam bidang pembuatan perangkat lunak (software) yang hasil produksinya bisa untuk client tertentu (seperti aplikasi intranet untuk sebuah company) , atau bersifat umum (seperti aplikasi untuk toko, apotik, rental mobil, dll) yang bisa digunakan oleh banyak client. Untuk Perkiraan kebutuhan dana awal dalam memulai usaha bisnis software house ini sekitar 25juta yang terdiri dari : komputer (Rp 16 juta), komunikasi (Rp 1 juta), internet (Rp 1 juta), promosi & marketing (Rp 2 juta), biaya lain (Rp 5 juta). Total sekitar Rp 25 juta.Ada beberapa yang perlu diperhatikan dalam usaha bisnis software house ini:
  • Marketing(pemasaran) merupaka kekuatan utama untuk mendapatkan banyak client.
  • Kepuasan pelanggan (client) berkaitan dengan produk dan layanan yang diberikan oleh software house. Termasuk pula di sini keaktifan pihak customer support dalam mem-follow up si client pasca penyerahan produk.
  • Developer team (tim pengembang) yang handal: yakni para programmer yang ada di balik suatu produk/aplikasi. Dari tangan mereka lah, sebuah produk handal dihasilkan.

Tips untuk usaha software house.Untuk mendapatkan orderan/project bisa dilakukan dengan promosi lewat iklan di media cetak atau internet, hunting project di internet, metode jemput bola (langsung membuat proposal dan penawaran kepada calon client yang berpotensi membutuhkan produk/jasa IT).Apabila kita mempunyai skill namun modal yang kita punya sangatlah minim kita bisa melakukan "kumpul bareng sesama SDM IT” yaitu membuat usaha gotong royong, masing-masing membawa "sumbangan modal" seperti komputer dan lain-lain, sedangkan output dari hasil project bisa diatur seproporsional mungkin yang menyenangkan semua pihak.
home

Senin, 15 Oktober 2012

Tugas Latihan Prak PBD per 4


--function fMhs untuk mengambil data mahasiswa berdasarkan kota
create function fMhs (@kota as varchar(50))
returns table
as
return (select nim,nama,alamat,kota,jns_kelamin,sts_nikah
from mahasiswa
where kota=@kota);

--menghapus function fMhs
drop function fMhs

--function fCetak untuk mencetak nama mahasiswa dan nim mahasiswa
create function fCetak (@nim as char(11), @nama as varchar(100))
returns varchar(100)
as
begin
return ' ' +@nama + '(' + @nim + ')'
end;

--menghapus function fCetak
drop function fCetak

--function fHitungMhs untuk menghitung jumlah mahasiswa
create function fHitungMhs (@kota as varchar(50))
returns numeric
as
begin
return (select count(*)
from mahasiswa
where kota = @kota);
end;

--menghapus function fCetak
drop function fHitungMhs


-- Jawaban Latihan Pertemuan 4 PBD

--deklarasi cursor cKota (jangan lupa deallocatenya juga)
declare cKota cursor for
select distinct kota from mahasiswa;

--deklarasi variabel kota untuk menampung data kota
declare @kota as varchar(50);

--open cursor cKota
open cKota;

--transfer data kota ke dalam variabel kota
fetch next from cKota into @kota;

--looping data kota
while @@fetch_status = 0
begin
--cetak data kota
print 'Kota : '+@kota;

--## ADA cursor cMhs, sehingga terdapat cursor di dalam cursor ##
--deklarasi cursor cKota (jangan lupa deallocatenya juga)
declare cMhs cursor for
select nim, nama from dbo.fMhs (@kota);

--deklarasi variabel kota untuk menampung data kota
declare @nim as char(11),
@nama as varchar(100);

--open cursor cMhs
open cMhs;

--transfer data nim, nama ke dalam variabel nim, nama
fetch next from cMhs into @nim, @nama;

--looping data nim dan nama
while @@fetch_status = 0
begin
--cetak data nim dan nama
print dbo.fCetak(@nim,@nama);

--transfer data nim dan nama selanjutnya ke dalam variabel nim, nama
fetch next from cMhs into @nim, @nama;
end;

--deklarasi variabel untuk jumlah mahasiswa berdsarkan kota
declare @jum_mhs as numeric;

--set nilai @jumlah
set @jum_mhs = dbo.fHitungMhs(@kota);

print ' >> jumlah MHS : '+ convert(char,@jum_mhs) + 'orang';

--close cursor cMhs
close cMhs

--buat deallocate untuk menghapus cursor cKota
deallocate cMhs;

--###############################################################

--transfer data kota selanjutnya ke dalam variabel kota
fetch next from cKota into @kota;

end;

--close cursor cKota
close cKota;

--buat deallocate untuk menghapus cursor cKota
deallocate cKota;


 

We are featured contributor on entrepreneurship for many trusted business sites:

  • Copyright © JSC BOJONEGORO™ is a registered trademark.
    Designed by Templateism. Hosted on Blogger Platform.