amirjun32
جمعه 01 بهمن 1395, 19:29 عصر
سلام.من یک مثال از spring رو توی اکلیپس پیاده کردم ولی به یک مشکل تفریبا عجیب برخوردم.ابتدا کدهاشو یک نگاه کنید.
کلاس Main
package ir.springmvc.lifecycle;
import org.springframework.context.support.ClassPathXmlAp plicationContext;
public class Main {
public Main(){
ClassPathXmlApplicationContext context=new ClassPathXmlApplicationContext("MyConfig.xml");
MyBean bean=(MyBean)context.getBean("hassanBean");
System.out.println(bean.getMessage1());
context.close();
}
public static void main(String[] args) {
new Main();
}
}
کلاس MyBean
package ir.springmvc.lifecycle;
public class MyBean {
String message1;
public String getMessage1(){
return message1;
}
public void setmessage(String n){
message1=n;
}
}
و فایل MyConfig.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- bean definitions here -->
<bean id="hassanBean" class="ir.springmvc.lifecycle.MyBean">
<property name="Message" value="Bean Life Cycle" />
</bean>
</beans>
حالا چیزی که ظاهرا یک مشکله با اینکه بنده باهاش مشکل دارم اینه که مگه توی کلاس MyBean متد setmessage اسمش اختیاری نیست؟منظورم اینه که درسته این متد قراره یک پیغام ست کنه،ولی اسمش که نباید اهمیتی داشته باشه که چی هست.شاید بنده بخام اسم متدمو بزارم showmessage یا MySetMessage ولی کارش که فرقی نکرده.ولی متاسفانه توی این مثال باید حتما اون کلمه set اولش باشه وگرنه جواب نمیده. ظاهرا اون set جزنی از جاواست و ادامش هرکلمه ای که بنویسیم باید توی name="Message" فایل myconfig همون ادامه set رو بنویسیم.
امیدوارم منظورمو رسونده باشم.
کلاس Main
package ir.springmvc.lifecycle;
import org.springframework.context.support.ClassPathXmlAp plicationContext;
public class Main {
public Main(){
ClassPathXmlApplicationContext context=new ClassPathXmlApplicationContext("MyConfig.xml");
MyBean bean=(MyBean)context.getBean("hassanBean");
System.out.println(bean.getMessage1());
context.close();
}
public static void main(String[] args) {
new Main();
}
}
کلاس MyBean
package ir.springmvc.lifecycle;
public class MyBean {
String message1;
public String getMessage1(){
return message1;
}
public void setmessage(String n){
message1=n;
}
}
و فایل MyConfig.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- bean definitions here -->
<bean id="hassanBean" class="ir.springmvc.lifecycle.MyBean">
<property name="Message" value="Bean Life Cycle" />
</bean>
</beans>
حالا چیزی که ظاهرا یک مشکله با اینکه بنده باهاش مشکل دارم اینه که مگه توی کلاس MyBean متد setmessage اسمش اختیاری نیست؟منظورم اینه که درسته این متد قراره یک پیغام ست کنه،ولی اسمش که نباید اهمیتی داشته باشه که چی هست.شاید بنده بخام اسم متدمو بزارم showmessage یا MySetMessage ولی کارش که فرقی نکرده.ولی متاسفانه توی این مثال باید حتما اون کلمه set اولش باشه وگرنه جواب نمیده. ظاهرا اون set جزنی از جاواست و ادامش هرکلمه ای که بنویسیم باید توی name="Message" فایل myconfig همون ادامه set رو بنویسیم.
امیدوارم منظورمو رسونده باشم.