GoLang ile Veritabanı Bağlantısı Sağlamak

Merhaba, GoLang serime hız kesmeden devam edip, bir sonraki aşamada bir veritabanı ile GoLang’in nasıl çalıştığını size anlatmak istiyorum. Önbilgi: Veritabanı tercihim bu yazı için MySQL olacaktır.

Bu yazımda GOPATH ayarlarını yapmış ve Go kurulumunu yapmış olduğunuzu varsayıyorum. Bunları yapmayanlara önceki yazılarımı okumayı tavsiye ederim. Bu yazımda örnek bir kullanıcı tablosunda veri çekmeyi örnek olarak sunacağım. Öncelikle model kavramına girelim.

Nesne tabanlı programlama yapmış herkesin dünyadaki nesnelerin yazılım tarafındaki sanal bir nesneyle ifade edilebileceğini görmüştür. GoLang için bu durum biraz daha farklı. Gerçek dünyadaki özellikleri olan her varlığı GoLang’da structlar vasıtasıyla tanımlayabiliriz. Aşağıda gerçek dünyadaki bir kullanıcı için struct ile tanımlamayı göstereceğim.

type User struct {    
  Id   int    `json:"id"`    
  Name string `json:"name"`
  Surname string `json:"name"`
}

Yukarıdaki blokta Id, Ad ve Soyad özellikleri olan bir kullanıcı varlığı tanımlamış olduk. Bundan sonrasında u isimli yeni bir kullanıcı varlığı oluşturmak için aşağıdaki kod bloğunu kullanmamız yeterli olacaktır.

var u User 

Şimdi yeni bir kullanıcı oluştururken varsayılan (default) değerlerle nasıl kullanıcı oluşturabileceğimize bakalım:

var u = User{"1", "Onur", "Göker"}

Artık u kullanıcımızın varsayılan bir ID’si, Adı ve Soyadı mevcut. Alternatif olarak aşağıdaki gibi direkt bir kullanıcı varlığı yaratıp aynı zamanda değer ataması da yapabiliriz:

var u  = User{Id:"1", Name:"Onur", Surname:"Göker"}

Aşağıda kod bloğu sayesinde bir kullanıcı varlığımız için komple bir model oluşturabiliriz.

package models //hangi pakette oldugunu tanimliyoruz

type User struct {    
  Id   int    `json:"id"`    
  Name string `json:"name"`
  Surname string `json:"name"`
}

Şimdi projenizde models isimli bir klasör oluşturun ve bu klasör içinde oluşturacağız models.go dosyasına yukarıdaki kod bloğunu yapıştırın. Artık projemiz için bir modelimiz hazır!