Conventions et exigences concernant la définition des beans à utiliser avec pureQuery

Les conventions concernant la définition des beans sont flexibles et les exigences peu nombreuses.

Vous pouvez utiliser des beans avec pureQuery pour définir les valeurs des paramètres des instructions SQL et renvoyer les résultats de la requête.

la spécificationJavaBeans définit les conventions de la définition d'une classe d'objet, les conventions concernant la déclaration des propriétés de l'objet et l'attribution de nom des méthodes get() et set() pour la manipulation de ces propriétés. Une classe d'objet conforme aux conventions JavaBeans est idéale pour utiliser les capacités de pureQuery.

Cependant, pureQuery fonctionne très bien avec des objets ne respectant pas exactement les conventions.  Par exemple, si les méthodes get() ou set() n'existent pas pour une propriété précise, pureQuery peut lire ou définir directement la propriété.

pureQuery identifie les propriétés dans un bean en se basant sur les méthodes publiques get() et set() et les zones publiques du bean.

pureQuery imposes seulement sept exigences pour une définition d'un bean utilisé pour contenir les résultats d'une requête :
  • Un bean doit avoir un créateur sans argument disponible, explicite ou implicite.
  • Les noms des propriétés d'un bean unique doivent être uniques pour une recherche non sensible à la casse. Par exemple, vous ne pouvez pas créer de propriétés portant les noms "id" et "ID" dans le même bean.
  • Les méthodes get() et set() doivent se trouver par paires. Vous ne pouvez pas avoir une méthode get() sans une méthode set() correspondante et vice versa. Le nombre et le type des paramètres doivent être identiques pour les deux méthodes.
  • Les beans ne peuvent pas contenir des méthodes get() ou set() non associées aux propriétés.
  • Les beans peuvent avoir des zones publiques. Si vous utilisez des zones protégées ou privées, le bean doit présenter des méthodes publiques get() (ou des méthodes publiques is() pour les propriétés booléennes) et des méthodes publiques set(). Si un bean possède une zone publique et que la méthode get(), is(), ou set() correspondante est également publique, pureQuery émet une exception.
  • Si une méthode get() est appelée getNAME(), la propriété correspondante doit être nAME.
  • Les zones peuvent être seulement celles de type Java que JDBC prend en charge.

Pour les beans utilisés pour définir des paramètres d'entrée pour une instruction SQL, la seule restriction est que les propriétés auxquelles il est fait référence à l'aide des marqueurs de paramètres dans l'instruction SQL doivent être uniques pour une recherche non sensible à la casse.


Commentaires