spring框架学习日志一
2024-08-28 07:40:41
一、简介
1.对spring框架的简单理解
可以理解为它是一个管理对象的创建、依赖、销毁的容器
Spring 是一个开源框架. Spring 为简化企业级应用开发而生. 使用 Spring 可以使简单的 JavaBean 实现以前只有 EJB 才能实现的功能.
Spring 是一个 IOC(DI) 和 AOP 容器框架.
2.具体描述 Spring
轻量级:Spring 是非侵入性的 - 基于 Spring 开发的应用中的对象可以不依赖于 Spring 的 API
依赖注入(DI --- dependency injection、IOC)
3.面向切面编程(AOP --- aspect oriented programming)
容器: Spring 是一个容器, 因为它包含并且管理应用对象的生命周期
框架: Spring 实现了使用简单的组件配置组合成一个复杂的应用. 在 Spring 中可以使用 XML 和 Java 注解组合这些对象
一站式:在 IOC 和 AOP 的基础上可以整合各种企业应用的开源框架和优秀的第三方类库 (实际上 Spring 自身也提供了展现层的 SpringMVC 和 持久层的 Spring JDBC)
二、spring创建的步骤,建立一个简单的demo
1.加入依赖的jar包
2.创建dao类,并实现接口
public interface Dao {
public void add();
public void update();
public void delete();
public void findById();
}
public class OracleDao implements Dao {
public void add() {
System.out.println("Oracle添加");
}
public void update() {
System.out.println("Oracle修改");
}
public void delete() {
System.out.println("Oracle删除");
}
public void findById() {
System.out.println("Oracle查询");
}
}
3.建立service进行方法调用
public class Service {
//以前这样写
//private MysqlDao mdao=new MysqlDao();//硬编码,不能扩展 需要借助spring
private Dao mdao; //这里不再需要自己new新的对象 public void show() {
System.out.println("show===");
mdao.delete();
}
public void setMdao(Dao mdao) {
this.mdao = mdao;
} }
4.加入配置文件
<?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:表示管理的类标签
class:具体的类
id:标注该标签
ref:要与id的值相同,这里没用value是因为其后跟的是对象
-->
<bean id="mysql" class="com.zhiyou100.xz.dao.MysqlDao"></bean>
<bean id="orcale" class="com.zhiyou100.xz.dao.OracleDao"></bean> <bean id="s" class="com.zhiyou100.xz.service.Service">
<property name="mdao" ref="orcale"></property>
</bean>
</beans>
5.测试
public class Test {
public static void main(String[] args) {
//以前:
// Service s=new Service();
// s.show();
//现在都由spring容器来管理你的对象。用bean标签
//加载spring配置文件
ApplicationContext app=new ClassPathXmlApplicationContext("applicationContext.xml");
//获取指定的类对象
Service s=(Service) app.getBean("s");//强转
s.show();
}
}
最新文章
- 【2016-10-17】【坚持学习】【Day9】【反射】
- hdu 2489(枚举 + 最小生成树)
- enable feature AJAX of MOSS2007
- C语言基础回顾
- 黑马程序员_ Objective-c 之Foundation笔记(一)
- Scrum Meeting 8-20151210
- C#Winform程序如何发布并自动升级(图解)
- ios 代码截屏模糊问题解决办法
- Topo图
- Wijmo 日历插件
- 向Dialog中添加一个新的Menu
- COJ 0024 N皇后问题
- java多线程(同步与死锁问题,生产者与消费者问题)
- Oracle不能导入空表解决方案
- python安装多版本
- systemctl启动tomcat后,jps看不到进程
- 现阶段如何开始使用v-ray for unrealengine
- Luogu P2059 [JLOI2013]卡牌游戏
- 非const引用不能指向临时变量
- python常用模块-配置文档模块(configparser)
热门文章
- Spring RestTemplate 之exchange方法
- Requests方法 -- 参数关联
- 规模化敏捷LeSS(二):LeSS*队实践指南
- windows环境30分钟从0开始快速搭建第一个docker项目(带数据库交互)
- spring框架的学习->;从零开始学JAVA系列
- 初探Docker CentOS 7.9 2009 Mini 操作系统环境初始化 和Docker初始化
- 一口气说出 Redis 16 个常见使用场景!
- MySQL 执行优化查询
- bugku-web3
- UNIX环境高级编程APUE练习3.2-不用fcntl实现dup2的功能