La méthode d'usine d'instance de Spring et la méthode d'usine statique peuvent être utilisées pour instancier des haricots. Dans cet article, nous allons examiner les exemples connexes.
Méthode d'usine statique: l'appel directement des méthodes statiques peut renvoyer l'instance du haricot
package com.zhu.string.factory; import java.util.hashmap; importation java.util.map; classe publique StaticCarfactory {/ ** * Méthode d'usine statique: Appelez directement la méthode statique pour renvoyer une instance du bean * * / carte statique privée <String, Car> Cars = new HashMap <String, Car> (); statique {cars.put ("Audi", new Car (3000, "Aodi")); Cars.put ("Fodo", New Car (3000, "Aodi")); } // Méthode d'usine statique publique Static Car getCar (nom de chaîne) {return cars.get (name); }}Exemple de méthode d'usine. Autrement dit, appelez l'usine elle-même, puis appelez la méthode d'instance de l'usine pour renvoyer l'instance Bean
package com.zhu.string.factory; import java.util.hashmap; importation java.util.map; classe publique InstanceCarfactory {/ ** * Méthode d'usine d'instance. Autrement dit, appelez l'usine elle-même, puis appelez la méthode d'instance de l'usine pour renvoyer l'instance de bean * / carte privée <chaîne, car> Cars = null; public instanceCarfactory () {// Todo Auto-Generated Constructor Stub Cars = new HashMap <String, Car> (); cars.put ("Audi", nouvelle voiture (1000, "Audi")); Cars.put ("Dffdas", New Car (2000, "Audi")); } public Car GetCar (String Brand) {return cars.get (marque); }}beans-factory.xml
<span style = "font-size: 14px;"> <? xml version = "1.0" Encoding = "utf-8"?> <beans xmlns = "http://www.springframework.org/schema/beans" xmlns: xsi = "http://www.w3.org/2001/xmlschema-instance" xmlns: p = "http://www.springframework.org/schema/p" xsi: schemalocation = "http://www.springframework.org/schema/bans http://www.springframework.org/schema/beans/spring-beans.xsd "> <! - Configurez les beans via des méthodes statiques. Notez qu'il ne configure pas des instances de méthode d'usine statique, mais de la configuration des instances de bean -> <! - Attribut de classe: pointant le nom de la classe complète de la méthode statique-méthode d'usine: pointant le nom de la méthode statique Constructeur-arg: si la méthode d'usine doit passer dans des paramètres, utilisez le constructeur-arg pour configurer les paramètres -> <beear id = "car1" Mothod-Method = "GetCar" <Constructor-Arg Value = "Audi"> </ Constructor-Arg> </Eban> <! - Configurez l'instance d'usine -> <Bean Id = "Carfactory"> </ Bean> <Bean Id = "Car2" Factory-Bean = "Carfactory" Factory-Method = "GetCar"> <Constructor-arg Value = "Audi"> </ Constructor-arg> </ Bean> </ BEARG
Classe d'entité car.java
Package com.zhu.string.factory; public class car {private double prix; marque de chaîne privée; public double getPrice () {prix de retour;} public void setPrice (double prix) {this.price = prix;} public string getBrand () {return marque;} public void setBrand (string marque) {this.brand = brand = "} @ overde Brand + ", Price =" + Price + "]";} public Car () {System.out.println ("Cars..Constructor");} public Car (double prix, marque de chaîne) {super (); this.price = prix; this.brand = marque;}}Main.java
package com.zhu.string.factory; import org.springframework.context.applicationContext; import org.springframework.context.support.classpathxmlapplicationcontext; public class Main {/ ** * @param args * / public static Void Main (String [] args) {// TODO Auto-generated méthode application) ClassPathxmlApplicationContext ("Beans- Factory.xml"); Car Car1 = (Car) Cx.getBean ("Car1"); System.out.println (Car1); Car Car2 = (Car) CX.getBean ("Car2"); System.out.println (Car2);}} Résultats en cours:
Voiture [marque = Aodi, prix = 3000,0]
Voiture [marque = Audi, prix = 1000,0]
Résumer
Ce qui précède est l'intégralité du contenu de cet article sur l'exemple de la méthode d'usine de Spring et l'exemple de code de méthode d'usine statique. J'espère que ce sera utile à tout le monde. Les amis intéressés peuvent continuer à se référer à d'autres sujets connexes sur ce site. S'il y a des lacunes, veuillez laisser un message pour le signaler. Merci vos amis pour votre soutien pour ce site!