spring-start
-
artist: Rod Jahnson major in music
-
official website http://spring.io/
-
download address: https://repo.spring.io/libs-release-local/org/springframework/spring
-
spring is a light-weight IOC and AOP framework/container
-
IOC container implements the reverse control, the approach is called dependency injection(DI)
maven configeration
first configure maven in IDEA
- create repository, see maven markdown
then configure maven in spring
we just need to retrieve the webmvc component, and all the dependencies would be ready and downloaded automatically.
maven -> spring -> webmvc
<!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.2.6.RELEASE</version>
</dependency>
configure beans.xml in resources
<?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">
</beans>
use setmethod to do DI
<bean id = "hello" class = "com.hello">
<property name="str" value="Spring"/>
</bean>
must have set method in this field, it use set method implicitly
if value is another object created by spring
<bean id = "userDaoImpl" class = "com.dao.UserDaoImpl"/>
<bean id = "userServiceImpl" class="com.service.UserServiceImpl">
<property name="userDao" ref="userDaoImpl"/>
</bean>
test field
ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
UserServiceImpl userServiceImpl = (UserServiceImpl) context.getBean("userServiceImpl");
userServiceImpl.getUser();
just type new CPX
instantiate
-
use the default constructor
-
use parameter-filled cnstructor
-
<constructor-arg index="0" value="kuangshen2"/>
-
<constructor-arg name="name" value="kuangshen2"/> <!--name is the name of the parameter-->
-
<constructor-arg type="java.lang.String" value="kuangshen2"/> <!--type of the parameter-->
-
alias
<bean id = "hello" name="hello2" class = "com.hello">
<property name="str" value="Spring"/>
</bean>
import
<import resource = "path + beans.xml"/>
use corresponding java version
<properties>
<maven.compiler.source>14</maven.compiler.source>
<maven.compiler.target>14</maven.compiler.target>
</properties>