当前位置: 首页 > news >正文

IP地址什么?工业场景网络注意事项有哪些?

OCP原则

ocp指开闭原则,对扩展开放,对修改关闭。是七大原则中最基本的一个原则。

依赖倒置原则(DIP)

什么是依赖倒置原则

核心是面向接口编程、面向抽象编程, 不是面向具体编程。

依赖倒置原则的目的

降低耦合度,提高扩展力

什么是控制反转

控制反转:Ioc(Inversion of Controll),一种编程思想、设计模式。为了降低程序耦合度

反转有两点:

不在程序中采用硬编码的方式new对象,把创建对象交给别人(UserService userService = new UserServiceImplForMysql())。

不在程序中采用硬编码的方式维护对象关系。

spring框架

spring实现了Ioc,因此可以创建和维护对象见的关系。

控制反转实现方式主要有 依赖注入(Dependency Injection DI)

依赖注入的方式有以下方式:

Set注入(执行Set方法赋值)

构造方法注入(执行构造方法赋值)

依赖注入中的“依赖”、“注入”的含义

依赖:A对象和B对象的关系

注入:是一种手段,通过这种手段让A和B产生关系。

依赖注入的实现方式有:set注入和构造方法注入。

set注入

配置文件配置bean

在类中写set方法

package com.ali.service;

import com.ali.dao.UserDao;

public class UserService {

private UserDao userDao;

// set注入需要提供一个set方法,方法名以set开头,spring容器调用这个set方法注入UserDao

public void setUserDao(UserDao userDao) {

this.userDao = userDao;

}

public void saveUser(){

userDao.insertUser();

}

}

这样即可注入成功。

注入外部bean

注入内部bean

注入简单类型

实际开发中,一般不会吧Date类型当作简单类型,会使用ref来注入Date类型

级联属性赋值

注入数组

注入List和Set类型

张三

里斯

詹姆思

北京

上海

广州

注入Map集合

注入Properties类型

v1

v2

v3

注入null和空字符串

注入特殊字符串

构造注入

配置文件配置bean

2.使用p命名空间注入属性,语法:p:属性名="属性值" p:属性名-ref="引用类型属性值"-->

c命名空间注入(简化构造注入)

基于xml的自动装配byName

基于xml的自动装配byType

引入外部的属性配置文件

jdbc.properties文件

jdbc.diverClass=com.mysql.cj.jdbc.Driver

jdbc.url=jdbc:mysql://localhost:3306/spring6db?useSSL=false&server

jdbc.username=root

jdbc.password=123456

spring怎么实例化对象?

默认情况下spring通过反射机制,调用类的无参数构造方法实例化对象

把创建好的对象存储到Map结构中。

当有多个配置文件时,可读取多个配置文件

ApplicationContext context = new ClassPathXmlApplicationContext("spring.xml","spring-dao.xml");

可以在配置文件中注入jdk自带的类,只要这个类有无参数构造方法就行。

getBean()时,Bean的id不存在时会报错

从类路径之外的路径获取xml配置文件

// 读取类路径之外的配置文件

ApplicationContext context = new FileSystemXmlApplicationContext("D:/applicationContext.xml");

Object user= context.getBean("user"); // 获取spring容器中的对象

ApplicationContext的超级父接口是BeanFactory。

BeanFactory是Ioc容器的顶级接口。

spring的Ioc容器底层使用了工厂模式。

启用Log4j2

spring5之后支持Log4j2框架。

引入依赖

org.apache.logging.log4j

log4j-slf4j2-impl

2.19.0

org.apache.logging.log4j

log4j-core

2.19.0

编写配置文件,文件名必须是log4j2.xml,放在类根路径下

使用日志框架 ,在SpringTest01类中使用如下代码

Logger logger = LoggerFactory.getLogger(SpringTest01.class);

logger.info("日志信息");堵饺渤且

http://www.cnnetsun.cn/news/1716025.html

相关文章:

  • 春联生成模型安装包制作:一键部署exe工具开发
  • 千问3.5-2B开源可部署教程:基于CSDN GPU平台,5分钟完成图文理解服务上线
  • 别再只会‘永不在此停止’了!实战绕过网站JS混淆与内存爆破的三种硬核方法
  • 《RNN、LSTM、BiLSTM算法原理与数学表达详解》
  • 从策略到视觉一键生成!详解传统策划升级AI全案营销师的创意自动化矩阵
  • Qwen3-14B私有部署镜像Node.js环境配置与API服务搭建
  • 办公神器PasteMD:粘贴即美化,技术日志、网页内容一键整理
  • 从GET到Cookie:用Sqli-Labs靶场实战拆解SQL注入的5种常见姿势(附脚本)
  • YOLO26功能体验:官方镜像预置多种权重,开箱即用体验最新模型
  • Anaconda环境下的Phi-4-mini-reasoning开发全流程
  • 前端代码规范最佳实践:eslint + prettier + editorconfig + lint-staged + vscode的settings.json文件
  • Qwen3-ForcedAligner-0.6B模型量化实战:减小部署体积
  • 线控转向(SBW)的‘手感’是怎么来的?深度拆解HWA路感模拟算法
  • FlutterApp安全防护完整指南:数据加密、权限管理与网络安全配置终极教程
  • 千问3.5-2B驱动AI Agent:自主任务规划与执行框架搭建
  • RexUniNLU开源模型实战:400MB模型在A10/A100/T4不同GPU上的适配
  • Oh-My-Posh V2与V3终极对比:功能差异与完整迁移指南
  • 领域驱动设计实战:解密DDDSample中Cargo聚合根的黄金法则
  • 终极指南:深入理解Gumbo-parser字符引用解析与HTML实体处理
  • WordPress代码质量提升:如何使用自定义规则集优化项目
  • YOLOE官版镜像入门指南:从零开始搞定文本提示检测
  • Emacs Plus 社区生态系统:如何发现和使用第三方资源
  • OpenClaw学术助手:Qwen2.5-VL-7B论文图表解析与总结
  • 开源模型可持续维护:雯雯的后宫-造相Z-Image-瑜伽女孩版本更新与回滚策略
  • 从唤醒到合成:基于讯飞、VOSK与DeepSeek的纯离线语音助手全链路实践
  • Stable-Diffusion-v1-5-archive生成多样性控制:Temperature-like采样策略模拟
  • RVM多用户环境管理终极指南:团队开发的完整解决方案
  • FuelUX药盒与占位符组件:提升用户体验的终极输入控件指南
  • 终极指南:如何快速参与build-linux操作系统开发与维护
  • RMBG-2.0开源模型贡献指南:如何提交PR优化头发分割模块