7 Nisan 2015 Salı

Spring Mvc + Üye Kayıt

      S.a. Arkadaşlar,
      Bir önceki Spring MVC'ye giriş yazımızdan sonra şimdi de küçük çapta bir üye kayıt programı yazdık. Burada belki çoğu yerde gördüğünüz küçük bir program fakat burada inşaAllah elimizden geldiğince konuya devam edip süreklilik sağlamak niyetindeyiz. Çünkü yine belirttiğim gibi Türkçe döküman yok denecek azınlıkta. Çorbada bizim de bir tuzumuz olsun düşüncesiyle yazıyoruz. Umarım herkes için faydalı olur. Şimdi başlayalım. İlk giriş projemiz biraz da üzerinden devam edelim. O nedenle her sayfayi değil de yeni eklediğimiz şeyler üzerinden daha çok gideceğiz. Giriş sayfasına buradan ulaşabilirsiniz.



     Jsp sayfamizdan başlayalım. index.jsp->Giriş sayfamızdır.
<form method="post" id="myForm" action="save">
<!-- action ile save sayfasini calistiracagimizi soyluyoruz -->
<table>
<tr>
<td><label for="name">Name</label></td>
<td><input tabindex="1" type="text" name="name" id="name" /></td>
</tr>

<tr>
<td><label for="surname">Surname</label></td>
<td><input tabindex="2" type="text" name="surname" id="surname" />
<td>
</tr>

<tr>
<td><label for="phone">Phone</label></td>
<td><input tabindex="3" type="text" name="phone" id="phone" />
<td>
</tr>

<tr>
<td><input type="submit" value="Submit" /></td>
</tr>
</table>
</form>

     Daha sonra bu sayfaların sonuçlarının aktarılacağı save sayfamız var. Fakat dikkat etmekte fayda var save sayfamız views'ın altında. Projeyi paylaşacağım için oradan yapısını inceleyebilirsiniz.

   save.jsp

      <center>
<h2>Hello ${name} ${surname }</h2>
<h2>Your Phone: ${phone}</h2>
<!-- parametreyi istedigimiz yerde cagirip kullanabiliriz -->
</center>

    Jsp sayfalarımızı yazdıktan sonra şimdi de controller sayfamızı yazalım. Controller sayfamız içinde açıklamalar yazılı yorum satırlarıyla o yüzden tekrar yazmaya luzüm görmüyoruz, fakat soracaklarınız oldu mu elimizden geldiğince cevap vermeye çalışırız. controller sayfasını da verip yazıyı bitiriyoruz. Hoşça kalın

    UserController.java
package controller;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import javax.servlet.http.HttpServletRequest;

import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.ModelAndView;

import com.mysql.jdbc.PreparedStatement;
import model.*;

@Controller
// Controller sayfasi oldugunu belirtiyoruz
public class UserController {
//yonlendirecegimiz sayfa
@RequestMapping("/save")
public ModelAndView save(HttpServletRequest request, ModelMap model,
    //Kullanacagmiz parametreler
@RequestParam(required = false) String name,
@RequestParam(required = false) String surname,
@RequestParam(required = false) String phone) {



try {
if (!name.equals("")) {
//veritabani baglantilari
//eger siz de veri tabani kullanmak isterseniz kendi veritabani ayarlarinizi yapmaniz lazim
//ben mysql kullandim. 4 sutun mevcur id(primer key),name,surname,phone //tablo ismi infonal
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost:3306/infonal";
String kullaniciad = "root"; //burada kendi bilgilerinizi girin
String sifre = ""; //ayni sekilde sifrenizi
Connection con = null;
Statement st = null;
ResultSet rs = null;
con = DriverManager.getConnection(url, kullaniciad, sifre);
st = con.createStatement();

String sql = "INSERT INTO user (name, surname, phone)"+ "VALUES (?, ?, ?)";
PreparedStatement preparedStatement = (PreparedStatement) con.prepareStatement(sql);
preparedStatement.setString(1, name);
preparedStatement.setString(2, surname);
preparedStatement.setString(3, phone);
preparedStatement.executeUpdate();

//veri tabanina kayit yapiliyor
}
} catch (ClassNotFoundException ex) {
ex.printStackTrace();
System.out.println("Surucu projeye eklenmemis!");
} catch (SQLException ex) {
ex.printStackTrace();
System.out.println("Veritabanina baglanti saglanamadi!");
}

ModelAndView mvr = new ModelAndView("save");
mvr.addObject("name", name);
mvr.addObject("surname", surname);
mvr.addObject("phone", phone);
//parametreleri save sayfasindan kullanacagimizi belirtiyoruz
return mvr;

}
}


Hiç yorum yok:

Yorum Gönder