1.1 Spring是什么
" 转载自黑马程序员最全SSM框架教程|Spring+SpringMVC+MyBatis全覆盖_SSM整合_哔哩哔哩_bilibili,包涵黑马课程截图,仅为复习回忆所用,侵权必删 ! "
Spring是分层的Java SE/EE 应用full-stack轻量级开源框架,以IoC ( Inverse OF Control : 反转控制 ) 和 AOP ( Asepect Oriented Programming : 面向切面编程 )为内核。
提供了展现层 SpringMVC 和 持久层Spring JDBCTemplate 以及业务层事务管理等众多的企业级应用技术,还能整合开源世界众多著名的第三方框架和类库,逐渐成为使用最多的java EE 企业应用开源框架。
2.创建一个Spring项目
1.导入Spring坐标,修改pom.xml(配置文件)
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.0.5.RELEASE</version>
</dependencies>
2.编写Dao接口和实现类
项目结构:
3.创建Spring核心配置文件
在main文件下的resources目录下 NEW----> XML Configuration File ---> Spring Config点击创建配置文件。如果XML Configuration File选项下只有JSP Tag Library Descriptor一个选项可尝试刷新或重启idea。
4. 在Spring配置文件中配置UserDaoImpl
<!--
无参构造方法实例化
使用singleton创建一次对象,调用init-method,使用自定义初始化方法,使用destroy-method,自定义销毁方法
<bean id="userdao" class="com.cxh.dao.impl.UserDaoImpl" scope="singleton" init-method="init" destroy-method="destoty"></bean>
-->
<!--
无参构造方法实例化
使用prototype创建多个对象
<bean id="userdao" class="com.cxh.dao.impl.UserDaoImpl" scope="prototype"></bean>
-->
<!--工厂静态方法实例化-->
<!--
<bean id="userdao" class="com.cxh.factory.StaticFactory" factory-method="getUserDao"></bean>
-->
<!--工厂实例方法实例化-->
<bean id="factory" class="com.cxh.factory.DynamicFactory"></bean>
<bean id="userdao" factory-bean="factory" factory-method="getUserDao"></bean>
5.使用Spring的API获得Bean实例
接口文件:UserDao
package com.cxh.dao;
public interface UserDao {
public void sb();
}
实现类:UserDaoImpl
package com.cxh.dao.impl;
import com.cxh.dao.UserDao;
public class UserDaoImpl implements UserDao {
public UserDaoImpl() {
System.out.println("UserDaoImpl对象创建。。。。");
}
public void init(){
System.out.println("初始化方法!!!");
}
public void destoty(){
System.out.println("销毁方法!!!");
}
@Override
public void sb() {
System.out.println("hello");
}
}
测试类:UserDaoDemo
package com.cxh.demo;
import com.cxh.dao.UserDao;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class UserDaoDemo {
public static void main(String[] args) {
System.out.println(123);
ApplicationContext app = new ClassPathXmlApplicationContext("applicationContext.xml");
UserDao userDao = (UserDao) app.getBean("userdao");
System.out.println(456);
userDao.sb();
}
}
注:如果出现此处如果出现错误可能是,没有修改maven设置。