En İyi 50 Struts Röportaj Soruları ve Cevapları (2024)

İşte hem yeni başlayanlar hem de deneyimli adaylar için hayallerindeki işi bulmaları için Struts mülakat soruları ve cevapları.


1. Struts Framework'ün bileşenleri nelerdir?

Struts çerçevesi aşağıdaki bileşenlerden oluşur:

  1. Java Sunucu Programları
  2. JSP (Java Sunucu Sayfaları)
  3. Özel Etiketler
  4. Mesaj Kaynakları

Ücretsiz PDF İndir: Struts Röportaj Soruları ve Cevapları


2. MVC tabanlı uygulamalarda işleyicinin rolü nedir?

MVC mimarisinin model katmanına bağlı olan istekleri uygun modellere aktarmak işleyicilerin görevidir. İşleyiciler, istek aktarımı için yapılandırma dosyalarındaki eşleme bilgilerini kullanır.


3. Struts tabanlı uygulamalarda isteklerin akışı nasıldır?

Struts tabanlı uygulamalar MVC tasarım modelini kullanır. Talep akışı şu şekildedir:

  • Kullanıcı herhangi bir bağlantıya tıklayarak veya herhangi bir form göndererek View ile etkileşime girer.
  • Kullanıcının etkileşimi üzerine istek denetleyiciye iletilir.
  • Denetleyici, isteğin uygun eyleme iletilmesinden sorumludur.
  • Eylem, Modelde tüm iş mantığının uygulandığı bir işlevin çağrılmasından sorumludur.
  • Model katmanından gelen yanıt, eylem tarafından geri alınır ve bu yanıt, kullanıcının yanıtı görebileceği görünüme doğru iletilir.

4. İstek yönlendirmesi için eşleme bilgilerini almak amacıyla denetleyici tarafından hangi dosya kullanılır?

Denetleyici, “struts-config.txt” adlı bir yapılandırma dosyası kullanır.xml Kullanıcının isteğini yönlendirmek için hangi eylemin kullanılacağına karar vermek üzere tüm eşleme bilgilerinin alınacağı dosya.


5. Struts'ta Action Class'ın rolü nedir?

Struts'ta Action Class bir denetleyici görevi görür ve aşağıdaki temel görevleri yerine getirir:

  • Kullanıcı isteğini aldıktan sonra kullanıcının isteğini işler.
  • Uygun modeli kullanır ve modelden veri çeker (gerekiyorsa).
  • Kullanıcıya yanıtı göstermek için uygun görünümü seçer.
Struts Mülakat Soruları
Struts Mülakat Soruları

6. ActionForm çekirdeği nasıl oluşturulur?

Vekil

actionForm fasulyesi, sınıfın genişletilmesiyle oluşturulur org.apache.struts.action.ActionForm

In the following example we have created an actionForm bean with the name 'testForm':

import javax.servlet.http.HttpServletRequest; 
import org.apache.struts.action.*; 
public class testForm extends ActionForm { 
private String Id=null; 
private String State=null; 
public void setId(String id){
this.Id=id; 
} 
public String getId(){
return this.Id;
}
public void setState(String state){ 
this.State=state; 
} 
public String getState(){ 
return this.State; 
}

7. Validator FrameWork tarafından desteklenen iki doğrulama türü nelerdir?

Validator Framework, form verilerinin doğrulanması için kullanılır. Bu çerçeve iki tür doğrulama sağlar:

  1. Kullanıcının tarayıcısında İstemci Tarafı doğrulaması
  2. Sunucu tarafı doğrulama

8. Struts Kurulumunun adımları nelerdir?

Struts çerçevesini kullanabilmek için geliştirme ortamımıza Struts.Jar dosyasını eklememiz yeterli. Jar dosyası CLASSPATH'te mevcut olduğunda, çerçeveyi kullanabilir ve Strut tabanlı uygulamalar geliştirebiliriz.

Struts Mülakat Soruları
Struts Mülakat Soruları

9. JSP formunda istemci tarafı doğrulaması nasıl etkinleştirilir?

Struts'ta istemci tarafı doğrulamayı etkinleştirmek için öncelikle struts-config.xml dosyasında doğrulayıcı eklentisini etkinleştirmemiz gerekiyor. Bu, bu dosyaya aşağıdaki yapılandırma girişlerini ekleyerek yapılır:

<!--  Validator plugin -->
<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
<set-property
property="pathnames"
value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml"/>
</plug-in>

Daha sonra validation.xml dosyasında doğrulama kuralları tanımlanır. Bir form e-posta alanı içeriyorsa ve bu alan için istemci tarafı doğrulamayı etkinleştirmek istiyorsak validation.xml dosyasına aşağıdaki kod eklenir:

<form name="testForm">
<field  property="email"
depends="required">
<arg key="testForm.email"/>
</field>
</form>

10. Struts yapılandırma dosyasında istek iletme için eylem eşleme etiketi nasıl kullanılır?

Struts yapılandırma dosyasında (struts-config.xml), yönlendirme seçenekleri action-mapping etiketi altında tanımlanır.

Aşağıdaki örnekte, bir kullanıcı köprüyü tıkladığında test.do, istek şu adrese iletilecek: /pages/testing.jsp struts-config.xml dosyasındaki aşağıdaki yapılandırmaları kullanarak:

<action  path="/test" forward="/pages/testing.jsp">

Bu yönlendirme, kullanıcı jsp sayfasındaki aşağıdaki köprüye tıkladığında gerçekleşecektir:

<html:link</strong> page="/test.do</strong>">Controller Example</html:link>

11. Struts'ta mükerrer form gönderimi nasıl kontrol edilebilir?

Struts'ta action sınıfı, mükerrer form gönderimlerini önlemek için kullanılabilecek iki önemli yöntem sağlar.

action sınıfının saveToken() yöntemi benzersiz bir belirteç oluşturur ve bunu kullanıcının oturumuna kaydeder. isTokenValid() yöntemi kullanılır ve daha sonra belirteçlerin benzersizliğini kontrol etmek için kullanılır.


12. Struts'ta Java çekirdeklerine ve özelliklerine nasıl erişebiliriz?

Bean Tag Kütüphanesi, Java çekirdeklerine erişmek için kullanılabilecek bir Struts kütüphanesidir.


13. JSP yapılandırma bilgilerini Struts'ta depolamak için hangi yapılandırma dosyası kullanılır?

JSP konfigürasyon detayları için Web.xml dosyası kullanılır.


14. Execute method of action sınıfının amacı nedir?

Eylem sınıfının yürütme yöntemi, iş mantığının yürütülmesinden sorumludur. Kullanıcının isteği üzerine herhangi bir işlem yapılması gerekiyorsa bu yöntemde gerçekleştirilir. Bu yöntem, uygulamayı uygun sayfaya yönlendiren actionForward nesnesini döndürür.

Aşağıdaki örnekte, yürütme yöntemi, struts-config.xml dosyasında "exampleAction" adıyla tanımlanan bir actionForward nesnesini döndürecektir:

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

public class actionExample extends Action
{
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response) throws Exception{
return mapping.findForward("exampleAction");
}
}

15. Struts Validation çerçevesinde validation.xml ve validator-rules.xml dosyaları arasındaki fark nedir?

Validation.xml'de herhangi bir belirli Java çekirdeği için doğrulama kuralları tanımlarız, validator-rules.xml dosyasında ise standart ve genel doğrulama kuralları tanımlanır.


16. Tüm doğrulama hatalarını JSP sayfasında kullanıcıya nasıl gösterebiliriz?

validation.xml dosyasında tanımlanan doğrulama kurallarına göre tüm doğrulama hatalarını görüntülemek için şunu kullanırız: JSP dosyamızdaki etiketi.


17. Struts'ta bildirime dayalı istisna yönetimi nedir?

İstisna işleme mantığı struts-config.xml'de veya eylem etiketi içinde tanımlandığında, Struts'ta bildirime dayalı istisna işleme olarak bilinir.

Aşağıdaki örnekte, NullPointerException için struts-config.xml dosyasında istisna tanımladık:

<global-exceptions>

<exception key="test.key"

Type="java.lang.NullPointerException"

Path="/WEB-INF/errors/error_page.jsp"

</global-exceptions>

18. DynaActionForm nedir?

DynaActionForm, dinamik olarak form çekirdekleri oluşturmak için kullanılan özel bir actionForm sınıfı türüdür (ActionForm Sınıfının alt sınıfı). Form çekirdeği oluşturmak için yapılandırma dosyalarını kullanır.


19. Döşemeleri Struts'ta kullanmak için hangi yapılandırma değişiklikleri gereklidir?

Tiles çerçevesiyle yeniden kullanılabilir bileşenler oluşturmak için struts-config.xml dosyasına aşağıdaki eklenti tanım kodunu eklememiz gerekir:

<plug-in className="org.apache.struts.tiles.TilesPlugin" >

<set-property property="definitions-config" value="/WEB-INF/tiles-defs.xml" />

<set-property property="moduleAware" value="true" />

</plug-in>

20. Jakarta Struts ile Apache Struts arasındaki fark nedir? Hangisini kullanmak daha iyidir?

Her ikisi de aynıdır ve aralarında hiçbir fark yoktur.


21. Struts.xml yapılandırma dosyasının kullanımı nedir?

Struts.xml dosyası, URL ile eylem arasındaki eşlemeyi tanımlamak için kullanılan Struts çerçevesinin önemli yapılandırma dosyalarından biridir. Bir kullanıcının isteği denetleyici tarafından alındığında, denetleyici uygun eylem sınıfını seçmek için bu dosyadaki eşleme bilgilerini kullanır.


22. Struts'ta etiket kütüphaneleri nasıl tanımlanır?

Etiket kitaplıkları, içindeki yapılandırma dosyasında (web.xml) tanımlanır. aşağıdaki gibi etiketleyin:

<taglib>

<taglib-uri>/WEB-INF/struts-bean.tld</taglib-uri>

<taglib-location>/WEB-INF/struts-bean.tld</taglib-location>

</taglib>

23. Struts'ta mantık etiketlerinin önemi nedir?

Struts'ta mantık etiketlerinin kullanılması, sunum katmanında komut dosyası kullanmadan temiz ve verimli bir kod yazmaya yardımcı olur.


24. Formbean'ler için iki kapsam türü nedir?

  • Talep Kapsamı: Formbean değerleri yalnızca mevcut istekte mevcuttur
  • Oturum Kapsamı: Formbean değerleri mevcut oturumdaki tüm istekler için mevcuttur.

25. Struts'ta ilgili eylemleri tek bir grupta nasıl gruplayabiliriz?

Birden fazla ilgili eylemi tek bir grupta gruplamak için DispatcherAction sınıfını kullanabiliriz.


26. SwtichAction'ı ne zaman kullanmalıyız?

SwitchAction sınıfını kullanmanın en iyi senaryosu, birden fazla modülün ayrı ayrı çalıştığı modüler bir uygulamaya sahip olduğumuz zamandır. SwitchAction sınıfını kullanarak, uygulamanın bir modülündeki bir kaynaktan, uygulamanın farklı bir modülündeki başka bir kaynağa geçiş yapabiliriz.


27. Struts çerçevesinin faydaları nelerdir?

Struts, MVC'yi temel alır ve dolayısıyla Struts'ta farklı katmanlar arasında iyi bir ayrım vardır, bu da Struts uygulamalarının geliştirilmesini ve özelleştirilmesini kolaylaştırır. Farklı konfigürasyon dosyalarının kullanılması Struts uygulamalarının kolayca yapılandırılabilir olmasını sağlar. Ayrıca Struts açık kaynaklıdır ve dolayısıyla uygun maliyetlidir.


28. Struts1'den Struts2'ye uygulama geçişi için hangi adımlar gereklidir?

Struts1'den Struts2'ye geçiş için aşağıdaki Adımlar gereklidir:

  1. Struts1 actionForm'u Struts2 POJO'ya taşıyın.
  2. Struts1 yapılandırma dosyasını (struts-config.xml) Struts2 yapılandırma dosyasına (struts.xml) dönüştürün

29. Struts'ta bir formun özellikleri nasıl doğrulanır?

Doldurulan özelliklerin doğrulanması için, formbean kontrolünün Action sınıfına işlenmesinden önce ActionForm sınıfının validate() yöntemi kullanılır.


30. ActionForm sınıfının sıfırlama yöntemi ne işe yarar?

actionForm sınıfının sıfırlama yöntemi, yeni bir istek başlatılmadan önce formun değerlerini temizlemek için kullanılır.


31. Struts'un dezavantajları nelerdir?

Struts'un çok sayıda avantajı olmasına rağmen, aynı zamanda daha büyük bir öğrenme eğrisi gerektirir ve geliştirme sürecindeki şeffaflığı da azaltır.

Struts ayrıca uygun belgelerden yoksundur ve birçok bileşeni için kullanıcılar yardım için uygun çevrimiçi kaynakları alamamaktadır.


32. Resourcebundle.properties dosyasının Struts Validation çerçevesinde kullanımı nedir?

Resourcebundle.properties dosyası, kodda oluşabilecek olası hatalara yönelik anahtar değer çiftlerinde belirli hata mesajlarını tanımlamak için kullanılır.

Bu yaklaşım, geliştiricinin tüm hata mesajlarını kodun içine yerleştirmesine gerek kalmadığından kodun temiz tutulmasına yardımcı olur.


33. Alabilir miyim html ilişkili alıcı ve ayarlayıcı formbean yöntemleri olmadan form özelliği?

Her html form özelliği için formbean'deki alıcı ve ayarlayıcı yöntemlerinin tanımlanması gerekir, aksi takdirde uygulama hatayla sonuçlanır.


34. Bir Struts Uygulamasında kaç adet servlet denetleyicisi kullanılır?

Struts çerçevesi merkezi kontrol yaklaşımı konsepti üzerinde çalışır ve uygulamanın tamamı tek bir servlet denetleyicisi tarafından kontrol edilir. Bu nedenle, bir servlet uygulamasında yalnızca bir servlet denetleyicisine ihtiyacımız var.


35. Tek bir Struts uygulaması için birden fazla struts-config.xml dosyasına sahip olabilir miyiz?

Tek bir uygulama için istediğimiz sayıda Struts-config.xml dosyasına sahip olabiliriz.

Bunun için aşağıdaki konfigürasyonlara ihtiyacımız var:

<servlet>

<servlet-name>action</servlet-name>

<servlet-class>

org.apache.struts.action.ActionServlet

</servlet-class>

<init-param>

<param-name>config</param-name>

<param-value>

/WEB-INF/struts-config.xml

/WEB-INF/struts-config_user.xml

/WEB-INF/struts-config_admin.xml

</param-value>

</init-param>

.............

.............

</servlet>

36. Struts hangi model bileşenlerini destekliyor?

Struts, Java fasulyesi, EJB, CORBA dahil tüm model türlerini destekler. Ancak Struts'un belirli bir model için yerleşik desteği yoktur ve herhangi bir modeli tercih etmek geliştiricinin tercihidir.


37. IncludeAction'ı kullanmak ne zaman faydalıdır?

IncludeAction, Struts tarafından sağlanan ve Struts ile Servlet tabanlı uygulama arasında entegrasyon gerektiğinde yararlı olan eylem sınıfıdır.


38. Struts ipliği güvenli midir?

Evet Strut'lar iş parçacığı açısından güvenlidir. Struts'ta her isteği işlemek için yeni bir sunucu uygulaması nesnesine gerek yoktur; bunun yerine her yeni istek için eylem sınıfı nesnesinin yeni bir iş parçacığı kullanılır.


39. Struts'ta kaynak dosyalarını kullanmak için hangi konfigürasyon değişiklikleri gereklidir?

Kaynak dosyaları (.properties dosyaları), struts-config.xml dosyasına aşağıdaki yapılandırma girişi eklenerek Struts'ta kullanılabilir:

<message-resources parameter="com.login.struts.ApplicationResources"/>

40. Struts uygulamalarında iç içe fasulye nasıl kullanılabilir?

Strut'lar bu amaç için ayrı bir etiket kitaplığı (İç İçe Etiket Kitaplığı) sağlar. Bu kütüphaneyi kullanarak fasulyeleri herhangi bir Struts tabanlı uygulamaya yerleştirebiliriz.


41. Struts Framework'ün Çekirdek sınıfları nelerdir?

Struts Framework tarafından sağlanan temel sınıflar şunlardır:

  • Eylem Sınıfı
  • ActionForm Sınıfı
  • ActionMapping Sınıfı
  • ActionForward Sınıfı
  • ActionServlet Sınıfı

42. Struts'taki istisnaları programlı olarak ele alabilir miyiz?

Evet, koddaki try, catch bloklarını kullanarak Struts'taki istisnaları programlı olarak ele alabiliriz.

try {

// Struts code

}

Catch (Exception e) {

// exception handling code

}

43. Struts Framework'ün bir parçası mı? J2EE?

Struts çerçevesi JSP, Java Beans, Servlet vb. gibi J2EE teknolojilerine dayanmasına rağmen J2EE standartlarının bir parçası değildir.


44. Struts'ta eylem eşleme nasıl yapılandırılır?

Eylem eşlemeleri, etiketi altındaki struts-config.xml yapılandırma dosyasında yapılandırılır. aşağıdaki gibi:

<pre><action-mappings>
<action path="/login"
type="login.loginAction"
name="loginForm"
input="/login.jsp"
scope="request"
validate="true">
<forward name="success" path="/index.jsp"/>
<forward name="failure" path="/login_error.jsp"/>
</action>
</action-mappings>

45. Struts Framework'ü ne zaman tercih etmeliyiz?

Aşağıdaki koşullardan herhangi biri veya birkaçı doğru olduğunda payandalar kullanılmalıdır:

  • Son derece sağlam, kurumsal düzeyde bir uygulama geliştirme gereklidir.
  • Yeniden kullanılabilen, yüksek düzeyde yapılandırılabilir bir uygulama gereklidir.
  • Farklı katmanların net bir şekilde ayrıldığı gevşek bağlı, MVC tabanlı bir uygulama gereklidir.

46. ​​ActionServlet Struts'ta neden tekildir?

Struts çerçevesinde actionServlet bir denetleyici görevi görür ve kullanıcılar tarafından yapılan tüm istekler bu denetleyici tarafından kontrol edilir. ActionServlet, bu denetleyici sınıfı için yalnızca bir nesnenin oluşturulması gerektiğinden, tekil tasarım modelini temel alır. Daha sonra her kullanıcı isteği için birden fazla iş parçacığı oluşturulur.


47. Struts'ta doğrulayıcı çerçevesini kurmak için gerekli adımlar nelerdir?

Struts'ta doğrulayıcı çerçeveyi kurmak için aşağıdaki Adımlar gereklidir: – Yanlış yazım

  1. WEB-INF dizininde valdator-rules.xml ve validation.xml dosyalarını yerleştirin.
  2. Aşağıdakileri ekleyerek struts-config.xml dosyalarında doğrulama eklentisini etkinleştirin:
<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
<set-property property="pathnames" value="/WEB-INF/validator-rules.xml,
/WEB-INF/validation.xml"/>
</plug-in>

48. Struts'ta View Layer'da hangi teknolojiler kullanılabilir?

Struts'ta görünüm katmanında aşağıdaki teknolojilerden herhangi birini kullanabiliriz:

  • JSP
  • HTML
  • XML/XSLT
  • WML Dosyaları
  • Hız Şablonları
  • servletler

49. actionForm'un doğru çalışması için koşullar nelerdir?

ActionForm'un doğru çalışması için aşağıdaki koşulları karşılaması gerekir:

  • Argümansız bir yapıcıya sahip olmalıdır.
  • Tüm özellikleri için public getter ve setter yöntemlerine sahip olmalıdır.

50. Onay kutuları, metin kutuları vb. form öğeleri için Struts hangi kütüphaneyi sağlıyor?

Struts, metin alanları, metin kutuları, radyo düğmeleri vb. gibi form öğelerini eklemek için kullanılabilecek HTML Etiketleri kitaplığı sağlar.


Bu mülakat soruları aynı zamanda yaşamınızda da yardımcı olacaktır.

paylaş

3 Yorumlar

  1. Avatar demir diyor ki:

    Çok teşekkür ederim efendim,Harika ;):)pdf indirme linki çalışmıyor.Teşekkürler

    1. Avatar Guru99 diyor ki:

      Hata Düzeltildi! Bildirdiğin için teşekkürler

      1. Avatar demir diyor ki:

        Teşekkürler efendim :):)

Yorum bırak

E-posta hesabınız yayımlanmayacak. Gerekli alanlar işaretlenmişlerdir. *