IDEA 配置国内源
1.打开配置界面Setting
保证User setting file 和 Local repository两个路径不能有中文,并且 两个 Override 必须勾选。
打开 User setting file 的目录 C:\Users\David\.m2 中,查看是否存在settings.xml 文件,如果没有此文件,需要自己添加进去。如果有就需要打开此文件,在里面配置国内源。
2.在New Projects Setup 的 Setting 中再像第一步一样设置
3.打开 Local repository 目录,将里面所有的文件删除,防止旧jar包不完整,之后在maven中 reload重新进行下载。
创建 Spring 项目
1.创建 maven 项目
2.引入 Spring 依赖
b)spring-context
a)spring-beans
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.2.3.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>5.2.3.RELEASE</version>
</dependency>
</dependencies>
引入之后要点击 reload 进行下载
3.创建启动类 ,使用大驼峰的命名方式,创建 main 方法
存取 Bean 对象 (旧版)
1.创建 bean 对象 (普通类 +普通方法)
public class User {
public void sayHi() {
System.out.println("Hi~");
}
}
2.在 resource 下创建 spring-config.xml (File)文件,名字可以任取,但规范名为 spring-config,
3.在里面添加,如下规定代码
<?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>
4.在<beans> 里面添加 <bean>标签,包含id 和 class 属性,id 可以任取,class 表示 bean 对象的包名 + 类名,例:
<?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 id="user" class="com.david.User"></bean>
</beans>
5.从 Spring 中取出 Bean 对象,在 main 中实现以下代码
1)得到 Spring 上下文对象
ApplicationContext context =
new ClassPathXmlApplicationContext("spring-config.xml");
2)从 Spring 对象中,取出 bean 对象
以下三种方法,最推荐使用第三种方法,进行获取 bean 对象
User user = (User) context.getBean("user");
User user = context.getBean(User.class);
User user = context.getBean("user",User.class);
3)使用 bean
user.sayHi();
存取 bean 对象 (新版)
1.创建 bean 对象
2.在 resource 下创建 spring-config.xml (File)文件,并在里面添加,如下规定代码
<?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:content="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd">
<content:component-scan base-package="com.david.controller"></content:component-scan>
</beans>
注意的是:在 spring-config.xml 文件中的最后一行,标记了一个目录,这个目录就是用来扫描bean 对象的,所以必须要与自己的目录匹配。
3.给 bean 对象 添加 注解
3.1 五大类注解
@Controller @Service
@Repository @Component
@Configuration
import org.springframework.stereotype.Controller;
@Controller
public class UserController {
public void sayHello(){
System.out.println("Hello~");
}
}
3.2 方法注解
@Bean
注意点1:@Bean 注解 必须配合 五大类注解使用。
注意点2:使用方法注解时,getBean() 中的第一个参数为 方法名。
如果方法名相同时,我们采用方法重命名的方法来解决。
注意点3:@Bean 只能使用在无参的方法上。
注意点4:@Bean 重命名后, 就不能 使用方法名 获取 Bean 对象了。
4.从 spring 中获取 bean 对象
1)得到 Spring 上下文对象
ApplicationContext context =
new ClassPathXmlApplicationContext("spring-config.xml");
2)从 Spring 对象中,取出 bean 对象
UserController userController = context.getBean("userController", UserController.class);
注意:此处的第一个参数,没有定义 id,这里常规采用的办法是,将类名的首字母大写,采用小驼峰的形式,构造第一个参数。
特殊情况是,若类名的第一个字母和第二个字母都为大写时,就直接使用类名作为第一个参数。
3)使用 bean
userController.sayHello();