一、框架
什么是框架
通常指为实现某个业界标准或完成特定基本任务的软件组件规范,
也指为了实现摸个软件组件规范时,提供规范所要求之基础功能的软件产品。
框架的特点
- 半成品
- 封装了特定的处理流程和控制逻辑
- 成熟的、不断升级改进的软件
为什么使用框架
- 软件系统日趋复杂
- 重用度高,开发效率和质量极高
- 软件设计人员要专注与对领域的了解,使需求分析更明确
- 易于上手、快速解决问题
二、接口
- 用于沟通的中介物的抽象化
- 实体把自己提供给外界的一种抽象化的说明,用以内部操作分离出外部沟通方法,使其能修改内部
- 而不影响外界其他实体与其交互的方式
- 对应Java接口即声明,声明了哪些方法是对外公开提供的
- 在Java8中,接口可以拥有方法体
面向接口编程:
- 结构设计中,分清层次调用关系,每层只向外层提供一组接口,各层之间依赖接口而非实现类。
- 接口实现的变动不影响各层之间的调用,这在公共服务中尤为重要
- ”面向接口编程“中的接口是用于隐藏具体实现和实现多态性的组件
三、Spring
1.1 IOC 控制反转
其思想是反转资源获取的方向。
应用了IOC之后,则是容器主动的将资源推送给他所管理的组件,组件所要做的仅仅是选择一种合适的方法接受资源。这种行为也被称为查找的被动形式
1.2 DI 依赖注入
IOC的另一种表示方式:即组件以一些预先定义好的方式(如:setter方法)
接受来自容器的资源注入
1.3 AOP 面向切面编程
专门用于处理系统中各个模块的交叉关注点的问题
1.4 环境构建 (可参考http://www.jikexueyuan.com/course/675.html)
Spring官网:https://spring.io/projects
点击Spring Framework,选择相应版本的Reference
选择2.3里面的红框位置,进入下载列表,选择相应版本后,点击第一个进行下载。下载后名称如:spring-framework-4.3.7.RELEASE-dist
新建工程,导入JAR包。
Spring 模块
1.5 环境检测
新建一个HelloWorld类
package com.lbh.spring.beans;
public class HelloWorld {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
System.out.println("setName="+name);
}
public void name() {
System.out.println("hello:"+name);
}
public HelloWorld() {
System.out.println("HelloWorld constructor...");
}
}
新建一个applicationContext.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-4.3.xsd">
<!-- 配置bean -->
<bean id="helloworld" class="com.lbh.spring.beans.HelloWorld">
<property name="name" value="111"></property>
</bean>
</beans>
新建main方法进行输出测试
package com.lbh.spring.beans;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.core.io.ClassPathResource;
public class Main {
/**
* @param args
*/
public static void main(String[] args) {
// HelloWorld helloworld = new HelloWorld();
// helloworld.setName("lbh");
// helloworld.name();
//1.注册配置文件2.获取bean 3.调用bean方法
ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
HelloWorld helloworld = (HelloWorld) ctx.getBean("helloworld");
helloworld.name();
}
}
相关推荐
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。
毕业设计:在线考试系统_hy4
Python-jmtt爬虫,可下载每个分类下的所有漫画,已经打包成EXE文件并放入Releases里,喜欢就点个Watc_hy4
3个小项目分别是利用Python实现报表自动化、某连锁超市、某银行数据分析,展示了问题分解、数据清洗、数据分析与可视化的过程。_hy5
vscode rust插件
一个利用机器学习做数据挖掘实战的小项目,参考书《Python数据分析与挖掘实战》_hy5
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。
DeepSeek 部署详细方式 DeepSeek 是一款功能强大的智能数据搜索和分析平台,其部署过程需要一定的技术背景和准备工作。以下是 DeepSeek 部署的详细步骤,旨在帮助用户顺利完成平台的搭建和配置。 一、准备工作 硬件要求: 服务器:具备足够的计算能力和存储空间,推荐配置高性能 CPU、大容量内存和 SSD 固态硬盘。 网络:确保服务器能够访问互联网,并且网络带宽足够支持数据传输和访问需求。 软件要求: 操作系统:支持 Linux(如 Ubuntu、CentOS 等)或 Windows Server。 数据库:MySQL 或 PostgreSQL 等关系型数据库,用于存储 DeepSeek 的数据和配置信息。 Python 环境:安装 Python 3.x 版本,并配置好相关的 Python 包管理工具(如 pip)。 域名和 SSL 证书: 域名:用于访问 DeepSeek 的 Web 界面。 SSL 证书:确保数据传输的安全性,推荐使用 Let's Encrypt 等免费 SSL 证书。 二、安装步骤 环境配置: 在服务器上安装并配置好操作系统、数据库和 Python
[项目分享]Python基于YOLOv5的交通标志识别系统[源码&技术文档&部署视频&数据集]
分布式事务处理_hy4
毕设(基于python和定向爬虫的商品比价系统的实现)_hy5
保活应用:前台进程、锁屏开一像素页面、循环播放无声音频、定时任务、双进程守护_hy4
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。
【Jupyter Notebook】Python与机器学习方向,《决策树与集成算法》课程仓库
【Python】闲聊QQ机器人,也就是人工智障_pgj
工程管理项目:想法起源于一个做包工程的朋友,想给他做一个系统去管理成本,管控进度,工资结算等。但是好几年没写过java项目了,现_hy4
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。
NUAA操作系统实验平时作业及往年考试题记录_hy5
本文是一篇关于汇编语言的深度开发指南,全面介绍了汇编语言的相关知识。汇编语言作为直接面向硬件的低级编程语言,在计算机科学中地位举足轻重,能让开发者深入理解计算机运行机制,优化程序性能。文章先介绍了汇编语言的概念,它直接与硬件交互,用助记符代替机器指令,可实现对计算机资源的精细控制。接着阐述其起源与发展,为降低编程难度应运而生,随硬件发展不断演进。然后深入讲解了寄存器、内存模型、指令集等基础概念,还介绍了搭建开发环境、编写简单程序及编译链接的方法。在高级特性方面,探讨了宏汇编、条件语句与循环结构、子程序与函数调用等内容。最后,文章列举了汇编语言在操作系统开发、嵌入式系统编程、性能优化等领域的应用,并对其未来发展进行了展望,认为在新兴技术领域汇编语言将迎来新机遇,也需适应计算机体系结构的演进,鼓励读者深入学习汇编语言,探索计算机底层奥秘。