Problem Description:
A very simple spring project that uses static factory methods to configure bean instances. The directory structure of the project is as follows:

code show as below:
Car.java
1 package com.tt.spring.beans.factory;
2
3 public class Car {
4
5 private String brand;
6 private double price;
7
8 public String getBrand() {
9 return brand;
10 }
11 public void setBrand(String brand) {
12 this.brand = brand;
13 }
14 public double getPrice() {
15 return price;
16 }
17 public void setPrice(double price) {
18 this.price = price;
19 }
20
21 public Car(){
22 System.out.println("Car's Constructor...");
23 }
24
25
26
27 public Car(String brand, double price) {
28 super();
29 this.brand = brand;
30 this.price = price;
31 }
32
33 @Override
34 public String toString() {
35 return "Car [brand=" + brand + ", price=" + price + "]";
36 }
37
38
39 }
StaticCarFactory.java
1 package com.tt.spring.beans.factory; 2 3 import java.util.HashMap; 4 import java.util.Map; 5 6 /** 7 * Static factory method: you can directly call a static method of a certain class Return Bean instance 8 */ 9 public class StaticCarFactory { 10 11 12 private static Map<String,Car> cars = new HashMap<String, Car> (); 13 14 static { 15 cars.put("Audi", new Car ("Audi",300000 )); 16 cars.put("Ford", new Car("Ford",40000 )); 17 } 18 19 // Static factory method 20 public static Car getCar(String name){ 21 return cars.get(name); 22 23 } 24 25 }
beans-factory.xml
1 <?xml version="1.0" encoding="UTF-8"?> 2 <beans xmlns="http://www.springframework.org/schema/beans" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 4 xmlns:context="http://www.springframework.org/schema/context" 5 xmlns:p="http://www.springframework.org/schema/p" 6 xmlns:util="http://www.springframework.org/schema/util" 7 xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd 8 http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd 9 http://www.springframework.org/schema/util http: //www.springframework.org/schema/util/spring-util-4.0.xsd" > 10 11 <!-- Configure beans through static methods. Note that instead of configuring static factory method instances, but configuring bean instances --> 12 < bean id ="car1" 13 class ="com.tt.spring.beans.factory.StaticCarFactory" 14 factory-method ="getCar" > 15 < constructor-arg value ="Audi" ></constructor-arg> 16 </bean> 17 18 19 </beans>
Main.java:
1 package com.tt.spring.beans.factory;
2
3 import org.springframework.context.ApplicationContext;
4 import org.springframework.context.support.ClassPathXmlApplicationContext;
5
6 public class Main {
7
8 public static void main(String[] args){
9
10 ApplicationContext ctx = new ClassPathXmlApplicationContext("beans-factory.xml");
11
12 Car car1 = (Car) ctx.getBean("car1");
13 System.out.println(car1);
14 }
15 }
Run the Main.java program, the console error is as follows:
Exception in thread “main” java.lang.Error: Unresolved compilation problem:
Type mismatch: cannot convert from Object to Car
at com.tt.spring.beans.factory.Main.main(Main.java:12)
Cause Analysis:
First, you need to install jre 1.5.0 and above.
Second,
set your installed jre in eclipse’s’Window”Preference”Java’ and’Install JREs’.
Third, in eclipse’s’Window”Preference ” Java ‘in,
‘ Compiler ‘was set up’ Compiler compliance level ‘of 5.0 or more
(the key is the third step, the compatibility level)
problem solved:
Since the jdk version I installed is 1.8.0, the problem should be the Compiler compliance level.
Go to Window->Preference->Java->Compiler and find Compiler compliance level=1.5

Change the Compiler compliance level to 1.8:

Run the Main.java code again, it runs normally, and the console displays the following information:

Read More:
- How to Solve Springboot Error: Failed to convert value of type
- How to Fix Cannot convert value of type Error
- How to Solve Error: Element ‘dependency’ cannot have character [children], because the type’s content type is element-
- How to Solve Error: Missing type map configuration or unsupported mapping
- How to Solve Error Swift 4 Expression type ‘@value CGRect’ is ambiguous without more context
- How to Solve Error: Cannot find the declaration of element ‘beans’.
- How to Solve TypeError: type numpy.ndarray doesn’t define __round__ method
- How to Solve TypeError: type numpy.ndarray doesn‘t define __round__ method
- How to Solve Spring Cloud Error context has been closed already
- Yolox_s.pth Convert to tensorRT Error: AttributeError: ‘tensorrt.tensorrt.Builder‘ object has no attribute ‘max_workspace_size‘
- Error: (list) object cannot be coerced to type ‘double’
- How to Solve AspectJ error: error at ::0 can’t find referenced pointcut XXX
- How to Solve ERROR – unregister mbean error javax.management.InstanceNotFoundException: com.alibaba.druid:type=
- How to Solve Docker Error: elasticsearch exception: type=cluster_block_exception, reason=blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];
- Libtorch Error: Expected object of type Variable but found type CUDALongType for argument #2 ‘index’
- [Solved] Error:E0415 no suitable constructor exists to convert from “int“ to “Rational“
- How to Solve Error creating bean with name ‘log’loginController’
- How to Solve Spring MVC upload file error
- How to Solve SpringBoot MongoDB MongoAutoConfiguration Startup Error