Spring系列-(1)Spring入门

Spring Boot Test 系列1 - 入门 文章目录Sprint Boot Test 系列1 - 入门前言创建Spring Boot项目Spring Boot Starter Test依赖集成测试集成测试,不启动server集成测试,启动server单元测试后记参考文档 Sprint Boot Test 系列1 - 入门 前言 本文为Spring Boot Test系列的第一篇的入门文章。 工具: Intellij IDEA Ultimate Spring Boot 2.4.0 JUnit5 (Spring Boot Test 2.4.0默认为JU 阅读详情

Spring系列 -(1)Spring入门

Spring简介

Spring 是一个开源框架,是为了解决企业应用程序开发复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架。这也是Spring的目的,Spring的大体内容可分为两部分IOC和AOP

IOC

IOC—Inversion Of Control,即“控制反转”,它表示将你需要创建的对象交给容器控制,让容器帮你创建对象,在传统的对象创建中,我们都是通过直接new的方式去创建对象,由程序主动去创建依赖对象,但是IOC是有一个特定的容器来创建你所需的对象,这叫控制。
传统应用程序是我们自己在对象中主动控制去直接获取依赖对象,也就是正转,而IOC容器帮我们查找及注入依赖对象,对象只是被动的接受依赖对象,这叫反转。

传统客户端与类的关系
在这里插入图片描述
IOC里客户端与类的关系
在这里插入图片描述

AOP

定义
AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。
以往我们要在方法执行前后加一些操作,都需要对原有方法进行改动,这使得代码维护难度变大,而且不易添加修改,AOP可以在不改变原有代码的情况下,在方法执行前后对方法进行一些操作

AOP简易图
在这里插入图片描述
来自雷丰阳老师的笔记截图
在这里插入图片描述

简单的HelloWorld

1.导包
idea创建一个普通的maven项目,在pom.xml导入spring-webmvc的包,导此包的好处是把IOC基本的核心包都导进来了,不需要一个一个包去导入
在这里插入图片描述

<dependency> 
    <groupId>org.springframework</groupId> 
    <artifactId>spring-webmvc</artifactId>
    <version>5.2.2.RELEASE</version> 
</dependency>

2.创建Hello.java
在src下的main下的java下创建Hello类

public class Hello {
    private String name;
    private String context;

    public Hello() {
    }

    public Hello(String name, String context) {
        this.name = name;
        this.context = context;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getContext() {
        return context;
    }

    public void setContext(String context) {
        this.context = context;
    }

    @Override
    public String toString() {
        return "Hello{" +
                "name='" + name + '\'' +
                ", context='" + context + '\'' +
                '}';
    }
}

3.创建bean.xml
在src下的main下的resources下创建一个叫bean的xml文件,在bean.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 https://www.springframework.org/schema/beans/spring-beans.xsd> 
   <bean id="hello" class="Hello"> 
       <property name="name" value="adai"></property> 
       <property name="context" value="hello"></property>
   </bean> 
 </beans>

4.创建Mytest测试类
在src下的test下的java创建Mytest类,类名可以自定义

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Mytest {
    public static void main(String[] args) {
        ApplicationContext context = new ClassPathXmlApplicationContext("bean.xml");
        Hello hello = context.getBean("hello", Hello.class);
        String context1 = hello.getContext();
        String name = hello.getName();
        System.out.println(context1);
        System.out.println(name);
    }
}

最后点击运行,控制台就会输出你在bean.xml里面配置的name和context的value值
在这里插入图片描述

总结

Spring是作为大学时代第一个接触的J2EE框架,对于每个Java程序员都有着熟悉而又陌生的感觉,熟悉是因为每个Java程序员必须经历它,陌生是因为要熟悉精通到它的底层源码是真的很不容易,但是我认为学习编程这种东西兴趣是坚持下去的动力,没有兴趣很难学会,过程很痛苦,但是当你了解熟悉了之后你会发现很多奇妙而有有趣的东西。好了,本次Spring的初级入门就更新到此,后续会进一步的更新,敬请期待

Spring Security 6.x 系列【1】基础篇之概述及入门案例 是Spring组织提供的一个开源安全框架,目前最新的版本为6.0.2,基于Spring开发,所以非常适合在中使用。提供认证、授权、抵御常见攻击等功能,将认证与授权分离,并提供了扩展点。对保护命令式(Spring MVC)和响应式()应用程序有一流的支持,是保护基于Spring开发的应用程序的事实标准。认证为身份验证提供了全面的支持,身份验证是验证进行访问的主体身份。常用方法是要求用户输入用户名和密码。一旦执行身份验证,就知道身份并可以执行授权。授权授权指的是验证某个用户是否有权限执行某个操作。 阅读详情

相关推荐

Spring Security 6.x 系列【28】授权服务器篇之Spring Authorization Server 1.0 入门案例

在前几篇文档中,我们学习了OAuth 2.0协议,并使用完成了基于授权码模式的第三方平台登录功能。OAuth 2.0中的四大角色,原生框架已经帮我们实现了资源所有者、客户端、资源服务器,那么Spring是否提供了授权服务器的实现呢?在OAuth 1.0时代,Spring组织已经开始开发基于对OAuth的支持,该框架就是。其实现了大部分的OAuth规范,并提供了资源服务器、客户端和授权服务器。

记录知识、锤炼自我 8365

SSM基础-雷丰阳

文章目录springspringMVCMyBatis spring springMVC MyBatis

strdhgthbbh的博客 1648

利用eds editor生成CANOPEN 设备eds文件

通过以上步骤,您可以根据实际设备的功能特性,自动生成一份符合CANopen协议标准的电子数据表(EDS文件),该文件可以被上位机软件或其他CANopen主站设备用于识别、配置和控制您的CANopen从站设备。使用CANopen EDS Editor生成CANOPEN设备的EDS文件是一个系统化的过程,它涉及将设备的具体技术参数和功能映射到CANopen规范定义的对象字典中。

weixin_38604759的博客 6458

雷丰阳Spring-03(JdbcTempalte)

文章目录带有具名参数功能的JdbcTemplateSpring 源码1. AOP2. IOCSTEP1: 带有具名参数功能的JdbcTemplate applicationContext.xml中配置 <!-- 配置有具名参数功能的 Jdbctemplate --> <bean id="namedParameterJdbcTemplate" class="org.springframework.jdbc.core.namedparam.NamedParameterJdb

weixin_44584614的博客 364

scannet数据集下载文件

scannet数据集下载文件 由于大家会申请scannet数据集,审批比较慢,我将下载的文件里面的内容贴出来,大家可以复制放进py文件中,运行就可以下载 ps:别再私信要数据集了,这个自己下载,如果光三维数据的话,还是很快的,当然如果路由器翻了墙的话,下载会更快。 #!/usr/bin/env python # Downloads ScanNet public data release # Run with ./download-scannet.py (or python download-scannet.

weixin_40766438的博客 9228

贝塞尔曲线基础

贝塞尔曲线于1962年由法国工程师皮埃尔·贝塞尔(Pierre Bézier)所广泛发表,他运用贝塞尔曲线来为汽车的主体进行设计。贝塞尔曲线最初由Paul de Casteljau于1959年运用de Casteljau演算法开发,以稳定数值的方法求出贝兹曲线。

YiYeZhiNian的博客 2043

Spring AOP简单了解(雷丰阳老师的笔记)

AOP:(Aspect Oriented Programming)面向切面编程; OOP:(Object Oriented Programming )面向对象编程; 面向切面编程:基于OOP基础之上新的编程思想; 指在程序运行期间,将某段代码动态的切入到指定方法的指定位置进行运行的这种编程方式,面向切面编程; 场景:计算器运行计算方法的时候进行日志记录; 加日志记录: 1)、直接编写在方法内部;不...

Dentmon的博客 1550

Qt EGLFS 图形后端详解

EGLFS (EGL Full Screen) 是Qt框架在嵌入式Linux系统中的高性能图形显示后端,它提供了直接基于EGL和OpenGL ES的硬件加速渲染解决方案。

浩瀚之水的专栏 511

Spring系列文章1:Spring入门程序

一个java框架、java语言开发,轻量级、开源框架、在j2se、j2ee中都可以使用。它是一个管理对象的容器,Spring 容器不装文本,数字。装的是java对象。核心技术:ioc、aop官网地址项目列表:https://spring.io/projects。

程序员一博 641

Python爬虫实战:58同城租房信息分析与可视化,寻找高性价比房源

随着城市化进程加快,租房需求日益增长。58同城作为国内领先的本地生活服务平台,汇聚了大量房源信息。本教程将使用最新的Python爬虫技术获取58同城租房数据,通过数据分析与可视化揭示各区域租金水平,并运用机器学习算法找出性价比高的房源。本项目将使用异步爬虫、反爬对抗技术、数据清洗、可视化分析和机器学习建模等技术栈。

2201_76125261的博客 1279

uniapp - 实现手机端H5网页直播功能效果,拿到后端推流地址或播放资源后进行前端的流畅播放和画面展示功能,uniapp实时推流/拉流直播系统详细教程(提供完整示例代码,一键复制开箱即用!)

uniapp,h5网页,手机端H5网页,uniapp h5直播功能页面,uniapp直播实时推送显示,uniapp h5直播怎么做,怎么使用uniapp去实现移动端手机H5直播,h5 vue+uniapp怎么做直播,uniapp中使用videojs构建H5直播播放器,uniappH5端怎么实现直播推流,uniapp如何实现直播,直播聊天功能,h5平台端直播用什么插件,uniapp手机网页直播用什么组件插件播放器,uniapp手机H5直播播放器详细教程,直播项目,怎么使用vue+uniapp怎么做H5实时直播

✅ 精选推荐文章 8792

《Spring AI 实战系列 入门篇》第 1 篇

本文为《Spring AI 实战系列 入门篇》第 1 篇,聚焦核心概念与快速上手 掌握 Spring AI 核心概念(Model、Prompt、Embedding),并创建你的第一个 AI 项目

qq_39805994的博客 471

pandas教程:2012 Federal Election Commission Database 2012联邦选举委员会数据库

里面包含了支持者的名字,职业和雇主,地址,赞助金额。我们可以已经能想到如何切割、整理数据,来提取赞助者的统计数据,或提取宣传活动的模式,这里我们展示一些不同的分析方法。可以看到有些职业是同一种工作类型,指代的是同一个东西。这两个连续操作是分别独立执行的,一个结束后,另一个才开始。上,这里我是把数据集压缩成了ZIP格式,解压后能正常导入)。我觉得也有必要好好了解一下,这个网站做了很好的讲解,),所以我们最好添加这样的信息。这样的情况,即把两个索引操作连在一起。,发现映射关系被正常执行了,所以这里的。

Cachel Wood的博客 349

Spring入门系列 小白跟着一起学 (1)

spring基础篇学习

qq_51082383的博客 194

YOLOv11 Neck革新:当SDI遇上BiFPN,带你打造精度飙升的特征融合网络

对于科研:这是一个新颖的特征融合思路,能做出差异化的实验,发论文、做项目都很有价值;对于工程:它能解决小目标漏检、大目标定位不准的痛点,让你的检测系统在工业质检、智能安防等场景下更可靠;对于技术成长:掌握了SDI和BiFPN的设计逻辑,你再去看其他特征融合方法(比如FPN、PAN),会有“一通百通”的感觉,以后优化任何检测模型都能举一反三。如果你之前在目标检测的精度上遇到了瓶颈,不妨试试SDI+BiFPN——它就像给YOLOv11装上了“透视眼”,让模型能看清每一个细节。

FJN110的博客 301

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

1.Spring入门系列

定义一个Person类:java复制代码读取配置文件:使用读取配置文件。解析配置文件:提取标签的id和class属性值。反射创建对象:使用根据class属性值创建对象实例,实际上调用了对象的无参构造方法。存储与管理对象:将创建的对象实例与id进行关联,并存储在容器中以便后续使用。注入是指通过Spring工厂和配置文件,为所创建的对象的成员变量赋值。java复制代码} }xml复制代码java复制代码直接在代码中为对象赋值存在耦合。

2301_78976656的博客 408

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Spring AI 1.x 系列【2】入门案例

本文介绍了使用Spring AI集成DeepSeek大模型的开发过程。首先明确了环境要求:JDK 17-25、Maven 3.6.3+和Spring Boot 3.5.11。然后创建了Spring Boot项目工程,通过父POM管理依赖版本。接着详细说明了获取DeepSeek API密钥的步骤,并展示了如何引入spring-ai-starter-model-deepseek依赖。最后演示了配置DeepSeek连接信息、创建对话客户端以及测试对话功能的完整流程,成功实现了与大模型的交互。

记录知识、锤炼自我 1008

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

【spring系列】spring security(1)入门

【spring系列】spring security入门 ​ spring security作为spring的亲儿子,在进行web开发的时候,可以进行一个优雅的权限控制。笔者说来惭愧,工作n多年一直没有机会深入研究此框架。如有不对的地方望大家指正。 spring boot引入 maven引入jar <dependency> <groupId>org.springframework.boot</groupId> <art

叁滴水 的博客 1529

spring boot系列1 入门

构建微服务:Spring boot 入门篇 什么是spring boot Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。用我的话来理解,就是spring boot其实不是什么新的框架,它默认配置了很多框架的使用方式,就像maven整合了所

baidu_27776187的博客 287

Spring AI Alibaba 1.x 系列【3】入门案例

注意:务必按照案例中的版本来,否则很容易出现其他问题。

记录知识、锤炼自我 876

Spring MVC系列(1)-简介及入门案例

什么是Spring MVC 官方文档 Spring Web MVC 是建立在 Servlet API 之上的 Web 框架,从一开始就包含在 Spring Framework 中。是spring-framework框架下面的一个子模块。 与 Spring Web MVC 并行,Spring Framework 5.0 引入了一个反应式堆栈 Web 框架,其名称“Spring WebFlux”,也基于其源模块 ( spring-webflux)。Spring Cloud Gateway就是基于WebFlux

记录知识、锤炼自我 410

Spring Security系列(1)-Security5简介及入门案例

​ 本文基本上是引用大佬的文章:云烟成雨TD的博客-优快云博客 只是加入一点点我自己的补充,没有大佬的专业,此文是我的笔记,方便我自己看,具体的还是可以去看大佬的.

宝宝的博客 749

Spring Cloud入门系列(1)- Spring生态体系发展史+全系框架介绍

前言 Spring生态体系 Spring Framework Spring Data JDBC Spring Data JPA Spring Data LDAP Spring Data MongoDB Spring Data Redis Spring Data R2DBC Spring Data REST Spring Data for Apache Cassandra Spring Data for Apache Geode Spring Data for Apache Solr Spring Data

记录知识、锤炼自我 1116

springboot2.1入门系列四 Spring Session实现session共享

本文为Spring Boot2.1系列的第四篇,代码可以从github下载 https://github.com/yinww/demo-springboot2.git 相同的程序起了多个应用后就需要处理session共享的问题,要不然即使配置好了集群环境,但是session各自保存的话,用户身份就不能互通,就不是真正的集群环境。 本章介绍Spring Session技术,结合redis解决se...

跟着互联网 2641

Spring学习系列之BeanFactory入门(1)

简介: Spring的BeanFactory接口是Spring框架的最核心接口,它提供了高级IoC配置机制,Spring为BeanFactory提供了多种实现,其中最常用的XmlBeanFactory,它的getBean()方法可以从指定的XML文件中读取数据,返回特定的Bean. 本文从最简单的例子来展示如何使用BeanFactory   Bike类:   package com....

u012230451的专栏 149
下一篇: Spring系列-(2)HelloWorld的基本构成
磕瓜子
博客等级 码龄6年 3粉丝 7原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值