Archive for the ‘JavaFX’ Category.

Javafx Jdbcdatasource ile Database Update İşlemleri

 1. Aşama

 

Netbeans de javafx desktop application oluşturuyoruz.

 

 

image

 

2. Aşama

Sol alttaki “Navigator” menüsünden aşağıdaki gibi jdbcdatasource ekliyoruz.

 

 

image

3. Aşama

Data Source Customizer menüsünden “Connection URL”, “username” ve “password” doldurup jdbcdatasource projemize ekliyoruz.

 

 

image

 

 

4. Aşama

Database de datasource denemek için basit bir tablo oluşturuyoruz.

 

 

image

 

 

4. Aşama

Database operasyonlarını yapacak class lar için bir paket oluşturuyoruz.

Oluşturduğumuz pakette database bağlantısını dönecek “DatabaseConnection.fx” class ını oluşturuyoruz.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
/**
 * @author ugur
 */


public class DatabaseConnection {

    public function getConnention () : org.netbeans.javafx.datasrc.DbDataSource {
       
        var jdbcDataSource = org.netbeans.javafx.datasrc.DbDataSource {
            connectionString: "jdbc:mysql://www.ugurdonmez.com:3306/udonmez_proje"
            user: "username"
            password: "password"
            query: "select name from category"
        };
        return  jdbcDataSource;
    }
}

 

5. Aşama

Insert, Update ve Delete yapacak fonksiyonları “Category” isimli bir class oluşturup yazıyoruz.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
/**
 * @author ugur
 */


public class Category {

    public function insertCategory(name : String ) {

        var pair = javafx.data.Pair {
            name: "name";
            value: name;
        }

        var pairs : javafx.data.Pair[];
        insert pair into pairs;

        var conn = DatabaseConnection{};
        conn.getConnention().create("category", pairs);
    }

    public function deleteCategory(id : Integer ) {

        var conn = DatabaseConnection{};
        var whereClause = "IDcategory = {id}";
        conn.getConnention().remove("category", whereClause);
    }

    public function updateCategory(id : Integer , name : String ) {

        var pair = javafx.data.Pair {
            name: "name";
            value: name;
        }

        var pairs : javafx.data.Pair[];

        insert pair into pairs;

        var whereClause = "IDcategory = {id}";
        var conn = DatabaseConnection{};

        conn.getConnention().update("category", pairs,whereClause);
    }
   
}

 

 

6. Aşama

Yazdığımız kodların çalışıp çalışmadığını test etmek için aşağıdaki kodu çalıştırıyoruz.

 

kod

1
2
3
4
var category = Category{};
category.insertCategory("New Categry");
category.deleteCategory(5);
category.updateCategory(4, "Updated Category");

 

önce

 

5

 

sonra

 

 

6

JavaFX Native Array Örneği

1
2
3
4
5
def commaSep:java.lang.String = "one,two,three,four";
def numbers:nativearray of java.lang.String =
        commaSep.split(",");
println("1st: {numbers[0]}");
for(i in numbers) { println("{i}"); }

Output:

1st: one
one
two
three
four

JavaFX Binding Örneği

1
2
3
4
5
6
var thisYear = 2008;
def lastYear = bind thisYear-1;
def nextYear = bind thisYear+1;
println("2008: {lastYear}, {thisYear}, {nextYear}");
thisYear = 1996;
println("1996: {lastYear}, {thisYear}, {nextYear}");

Output:
2008: 2007, 2008, 2009
1996: 1995, 1996, 1997

1
2
3
4
5
6
7
8
var flagA = true;
def flagB = bind not flagA;
def flagC = bind not flagB;
println("flagA = {flagA}, "
       "flagB = {flagB}, flagC = {flagC}");
flagA = false;
println("flagA = {flagA}, "
       "flagB = {flagB}, flagC = {flagC}");

Output:
flagA = true, flagB = false, flagC = true
flagA = false, flagB = true, flagC = false

1
2
3
4
5
6
7
8
9
10
11
12
var multiplier:Integer = 2;
var seqSrc = [ 1..3 ];
def seqDst = bind for(seqVal in seqSrc) { seqVal*multiplier; }

println("seqSrc = {seqSrc.toString()},"
        " seqDst = {seqDst.toString()}");
insert 10 into seqSrc;
println("seqSrc = {seqSrc.toString()},"
        " seqDst = {seqDst.toString()}");
multiplier = 3;
println("seqSrc = {seqSrc.toString()},"
        " seqDst = {seqDst.toString()}");

Output:
seqSrc = [ 1, 2, 3 ], seqDst = [ 2, 4, 6 ]
seqSrc = [ 1, 2, 3, 10 ], seqDst = [ 2, 4, 6, 20 ]
seqSrc = [ 1, 2, 3, 10 ], seqDst = [ 3, 6, 9, 30 ]

JavaFX Sequence Declaration Using a Slice

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import java.lang.System;
def source = [0 .. 100];
var slice1 = source[0 .. 10];
var slice2 = source[0 ..< 10];
var slice3 = source[95..];
var slice4 = source[95..<];
var format = "%s = %d to %d%n";


System.out.printf(format, "slice1",
        slice1[0], slice1[(sizeof slice1)-1] );
System.out.printf(format, "slice2",
        slice2[0], slice2[(sizeof slice2)-1] );
System.out.printf(format, "slice3",
        slice3[0], slice3[(sizeof slice3)-1] );
System.out.printf(format, "slice4",
        slice4[0], slice4[(sizeof slice4)-1] );

Output:

slice1 = 0 to 10

slice2 = 0 to 9

slice3 = 95 to 100

slice4 = 95 to 99

JavaFX String İşlemleri

1
2
3
4
def str1 = 'Single quotes';
def str2 = "Double quotes";
println("str1 = {str1}");
println("str2 = {str2}");

Output :

str1 = Single quotes
str2 = Double quotes

1
2
3
4
5
6
def multiline = "This string starts here, "
'and ends here!';
println("multiline = {multiline}");
println("UK authors prefer 'single quotes'");
println('US authors prefer "double quotes"');
println('I use "US" and \'UK\' quotes');

Output:

multiline = This string starts here, and ends here!
UK authors prefer ‘single quotes’
US authors prefer “double quotes”
I use “US” and ‘UK’ quotes

1
2
3
4
5
6
7
8
9
def rating = "cool";
def eval1 = "JavaFX is {rating}!";
def eval2 = "JavaFX is \{rating\}!";
println("eval1 = {eval1}");
println("eval2 = {eval2}");
def flag = true;
def eval3 =
"JavaFX is {if(flag) "cool" else "uncool"}!";
println("eval3 = {eval3}");

Output:

eval1 = JavaFX is cool!
eval2 = JavaFX is {rating}!
eval3 = JavaFX is cool!

JavaFXPad

      JavaFXPad JavaFX programlarının hızlı çalışması ve bu programlara hızlı erişilebilmesi bakımından güzel bir araçtır. JavaFXPad JavaFX in özelliklerini öğrenmek ve JavaFX i tanımak için yeterlidir.

 

      JavaFXPad i http://download.java.net/general/openjfx/demos/javafxpad.jnlp linkinden kullanabilirsiniz.

 

 

javafxpad