6.2Java EE——Spring的入门程序

news2024/10/6 5:13:19

下面通过一个简单的入门程序演示Spring框架的使用,要求在控制台打印“张三,欢迎来到Spring”,实现步骤具体如下。

1、在IDEA中创建名称为chapter06的Maven项目,然后在pom.xml文件中加载需使用到的Spring四个基础包以及Spring依赖包。

<dependencies>
        <!--Spring的基础包Spring-core-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <version>5.2.8.RELEASE</version>
        </dependency>
        <!--Spring的基础包Spring-beans-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-beans</artifactId>
            <version>5.2.8.RELEASE</version>
        </dependency>
        <!--Spring的基础包Spring-context-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>5.2.8.RELEASE</version>
        </dependency>
        <!--Spring的基础包Spring-expressinon-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-expression</artifactId>
            <version>5.2.8.RELEASE</version>
        </dependency>
        <!--Spring的依赖包commons-logging-->
        <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>1.2</version>
        </dependency>
    </dependencies>

2、创建名为HelloSpring的类,在HelloSpring类中定义userName属性和show()方法。

package com.mac;

public class HelloSpring {

    private String userName;

    public void setUserName(String userName){

        this.userName=userName; }

    public void show() { 

        System.out.println(userName+":欢迎来到Spring"); }

}

3、新建applicationContext.xml文件作为HelloSpring类的配置文件,并在该配置文件中创建id为helloSpring的Bean。

<!-- 将指定类配置给Spring,让Spring创建HelloSpring

对象的实例 -->

<bean id="helloSpring" class="com.mac.HelloSpring">

        <!--为userName属性赋值-->

        <property name="userName" value="张">

        </property>

</bean>

XML文件的约束信息配置

XML文件包含了很多约束信息,如果自己动手去编写,不但浪费时间,还容易出错。XML的约束信息如下所示。

<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">

其实,在Spring的帮助文档中,就可以找到这些约束信息。

Spring帮助文档获取约束信息

        打开Spring目录结构下的docs文件夹,在spring-framework-reference文件夹的Spring的参考文件目录下找到index.html文件。

 

使用浏览器打开index.html。

 

        在步骤2中单击“Core”链接进入Core Technologies页面,单击1.The IoC container→1.2.Container overview→1.2.1.Configuration Metadata目录,可以查看配置文件的约束信息。

        创建测试类TestHelloSpring,在main()方法中初始化Spring容器并加载applicationContext.xml配置文件,通过Spring容器获取HelloSpring类的helloSpring实例,调用HelloSpring类中的show()方法在控制台输出信息。

public class TestHelloSpring {

    public static void main(String[] args){

        // 初始化spring容器,加载applicationContext.xml配置

        ApplicationContext applicationContext=new 

     ClassPathXmlApplicationContext("applicationContext.xml");

        // 通过容器获取配置中helloSpring的实例

        HelloSpring helloSpring=

        (HelloSpring)applicationContext.getBean("helloSpring");

        helloSpring.show();// 调用方法 }

}

在IDEA中启动测试类TestHelloSpring,控制台会输出结果

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/742973.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【域渗透篇】渗透域环境下的windows7与2008-r2

目录 前言 域环境搭建测试 主机发现&&端口服务扫描&&漏洞脚本扫描 主机发现 全端口扫描 漏洞脚本扫描 永恒之蓝获取shell 主机信息收集 查看当前所在域及当前域用户 找到域控制器 收集域成员的IP msf后渗透阶段 Hashdump获取本地密码信息 破解ha…

cesium学习文档

文章目录 1. 简易的cesium安装依赖修改 vite.config.js申请token创建简单的cesium 2. 修改查看器3. 修改摄像头4. 设置纽约城市模型5. 划分城市区域并且着色6. 地图标记显示7. 实现无人机巡城 1. 简易的cesium 安装依赖 yarn add -D cesium vite vite-plugin-cesium修改 vite…

Openlayers实战:小物块运动轨迹动画

Openlayers地图在做轨迹的时候,除了标注各个位置点,连线,还经常会用到轨迹动画。 本实战就是这样示例,一个物块在轨迹上移动。其实质是用setInterval,每个一小段时间,重新计算定位一下小物块位置,整体串起来就是在移动。 效果图 源代码 /* * @Author: 大剑师兰特(xia…

TextMining Day3 基于信息抽取的文本挖掘

TextMining Day3 基于信息抽取的文本挖掘 1. 简介2. 背景:文本挖掘与信息提取3. 数据挖掘与信息提取相结合3.1 DISCOTEX系统3.2 评价 4. 使用挖掘规则改进IE4.1 算法4.2 评价 7. 结论 1. 简介 图1:基于IE&#xff08;信息抽取&#xff09;的文本挖掘框架概述 本文报告了计算机…

stm32 使用CubeIDE 移植RTX5

STM32 使用st的官方开发环境 cubeide &#xff08;eclipse gcc&#xff09;移植 cmsis rtos2 RTX5 实时操作系统 这套环境的主要优势是免费。cubeide免费使用。RTX5 免商业版税&#xff08;已从原keil中剥离出来&#xff0c;现在完全开源免费&#xff09;。 一&#xff0c;环…

微软开源社区上线,能够给微软Win95等“上古系统”打补丁

日前一个基于社区的项目“Windows Update Restored”上线&#xff0c;据了解该项目的目的是为老系统重新提供对Windows Update的支持&#xff0c;可为 Windows 95 / NT 4.0/98(包括 SE)/ME/ 2000 SP2 等“上古时期”的微软操作系统提供升级补丁、修复 bug 或安全漏洞。 据悉&a…

Python+Requests+Excel接口测试实战

1、EXCEL文件接口保存方式&#xff0c;如图。 2、然后就是读取EXCEL文件中的数据方法&#xff0c;如下&#xff1a; 1 import xlrd2 3 4 class readExcel(object):5 def __init__(self, path):6 self.path path7 8 property9 def getSheet(self): 10 …

设计模式【创建型】-- 原型模式

原型模式&#xff08;Prototype&#xff09; 原型模式是指原型实例指定创建对象的种类&#xff0c;并且通过拷贝这些原型创建新的对象。调用者不需要知道任何创建细节&#xff0c;不调用构造函数 主要应用&#xff1a; 浅拷贝深拷贝 原型模式&#xff1a; 抽象原型类&#xf…

【Redis】—— Redis的AOF持久化机制

&#x1f4a7; 【 R e d i s 】—— R e d i s 的 A O F 持久化机制 \color{#FF1493}{【Redis】 —— Redis的AOF持久化机制} 【Redis】——Redis的AOF持久化机制&#x1f4a7; &#x1f337; 仰望天空&#xff0c;妳我亦是行人.✨ &#x1f984; 个人主页——微风撞…

如何搭建一个优秀的移动商城?

移动商城是一种新兴的购物方式。随着移动设备的普及和人们对线上购物的需求不断增加&#xff0c;移动商城已经成为了现代电子商务的重要组成部分。 对于想要在这个领域中获得成功的人来说&#xff0c;建立一个优秀的移动商城非常重要。但在搭建移动商城的过程中&#xff0c;有很…

【监控系统】Prometheus架构相关概念及源码部署实战

上篇我们介绍了业界主流监控框架的对比&#xff0c;我们监控系统这块主要是采用Prometheus。 那么&#xff0c;什么是Prometheus 官网&#xff1a;https://prometheus.io/docs/introduction/overview/ Prometheus是一个开源的系统监控和报警系统&#xff0c;现在已经加入到CN…

Android Java代码与JNI交互 JNI方法Java类字段 (六)

🔥 Android Studio 版本 🔥 🔥 Java 基础类型数据对应 jni 中的字母 🔥 通过 jni 查找java某个类中相应字段对应的数据类型 , 需要使用到 jni 中的 GetFieldID() 函数 jfieldID GetFieldID(jclass clazz, const char* name, const char* sig){ return functions-&g…

MySQL 如何处理 慢查询

如何定位慢查询? 方式一&#xff1a; 可以使用开源工具&#xff0c;比如&#xff1a; 调试工具&#xff1a;Arthas运维工具&#xff1a;Prometheus 、Skywalking 方式二&#xff1a; 使用MySQL自带慢日志 慢查询日志记录了所有执行时间超过指定参数&#xff08;long_qu…

bsub 的用法和意义

bsub -R “rusage [mem40960]” -Is -XF 执行脚本的方法 bsub <run 几条有用的命令 bqueues 查询所有queue的状态 4. 常用命令之bhosts 显示各节点作业相关情况 bhosts hostname 常用命令之bjobs 查看提交作业运行情况; bjobs –r 显示正在运行的作业 bjobs –a 显示正在…

微信小程序,左上脚返回点击直接到首页

我们做小程序时就有很多这种情况&#xff0c;根据不同情况处理方式不同 第一种情况&#xff1a;小程序有多个tab onUnload(event){ //多层级跳转之后&#xff0c;监听左上角返回事件&#xff0c;直接退回到indexuni.switchTab({url:"/pages/index/index"})}, 第二种…

pandas 笔记:高亮内容

1 高亮缺失值 1.0 数据 import pandas as pd import numpy as npdata[{a:1,b:2},{a:3,c:4},{a:10,b:-2,c:5}]df1pd.DataFrame(data) df1 1.1 highlight_null df.style.highlight_null(color: str red,subset: Subset | None None,props: str | None None, ) 1.1.1 默认情…

【Elasticsearch】RestClient操作文档

目录 5.RestClient操作文档 5.1.新增文档 5.1.1.索引库实体类 5.1.2.语法说明 5.1.3.完整代码 5.2.查询文档 5.2.1.语法说明 5.2.2.完整代码 5.3.删除文档 5.4.修改文档 5.4.1.语法说明 5.4.2.完整代码 5.5.批量导入文档 5.5.1.语法说明 5.5.2.完整代码 5.6.小…

java 整合 Elastic 8.

1. 准备工作 使用docker 快速搭建的环境,官网docker-compose 方式搭建的集群 设置了密码登录 elastic elastic 需要给jdk 导入证书 找到 证书对应目录&#xff0c;复制到桌面。主要导入下面2个证书,执行如下命令 keytool -importcert -alias "修改成你的证书名"…

[数字图像处理]第八章 图像压缩

文章目录 第八章 图像压缩引言8.1 基础知识8.1.1 编码冗余8.1.2 空间冗余和时间冗余8.1.3 不相关的信息8.1.4 图像信息的度量山农第一定理 8.1.5 保真度准则8.1.6 图像压缩模型编码或压缩过程解码或解压缩过程 8.2 一些基本的压缩方法8.2.1 霍夫曼编码8.2.2 Golomb编码8.2.3 算…

开启visual studio,git for windows 疯狂占用内存的解决

1、开启visual studio&#xff0c;git for windows 疯狂占用内存的解决 最近开启visual studio写代码的时候&#xff0c;IDE总是会莫名奇妙的卡住然后闪退&#xff0c;今天打开任务管理器看了下原因&#xff0c;发现是visual studio所占磁盘内存不断疯涨&#xff0c;每秒几十M…