Java企业级开发学习笔记
文章目录
- 一、Spring
- 1.1、Slay Dragon
- 1.2、RescueDamselQuest
一、Spring
第一周写了两个小项目均使用了原始调用和容器的方法
两个项目:<斩杀大龙与上路保卫战>
配一张文件位置图

1.1、Slay Dragon
BraveKnight
package net.sherry.spring.day01;public class BraveKnight {private String name; //骑士姓名private SlayDragonQuest slayDragonQuest; //杀龙任务public String getName() {return name;}public void setName(String name) {this.name = name;}public void setSlayDragonQuest(SlayDragonQuest slayDragonQuest) {this.slayDragonQuest = slayDragonQuest;}public void embarkOnQuest(){System.out.print("召唤师["+ name + "]");// 勇士流明slayDragonQuest.embark();// 执行任务}
}
Slay Dragon Quest
package net.sherry.spring.day01;public class SlayDragonQuest {public void embark(){System.out.println("Red team has slay the dragon");}
}
下面是调用方法
spring-config.xml
这个是下面两个方法所用的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.xsd"><!--配置斩杀任务Bean--><bean id="slayDragonQuest" class="net.sherry.spring.day01.SlayDragonQuest"/><bean id="braveKnight" class="net.sherry.spring.day01.BraveKnight"><property name="name" value="姜承録"/><property name="slayDragonQuest" ref="slayDragonQuest"/></bean><bean id="knight1" class="net.sherry.spring.day01.BraveKnight"><property name="name" value="Rookie"/><property name="slayDragonQuest" ref="slayDragonQuest"/></bean><bean id="knight2" class="net.sherry.spring.day01.BraveKnight"><property name="name" value="JackeyLove"/><property name="slayDragonQuest" ref="slayDragonQuest"/></bean><!--配置营救任务Bean--><bean id="rescueDamselQuest" class="net.sherry.spring.day01.RescueDamselQuest"/><!--配置营救Bean--><bean id="rescueDamselKnight" class="net.sherry.spring.day01.RescuedamselKnight"><constructor-arg value="Ning" /><constructor-arg ref="rescueDamselQuest" /></bean>
</beans>
TestBraveKnightOld
这个是原始方法
package net.sherry.spring.day01;import org.junit.Test;public class TestBraveKnightOLd {@Testpublic void testBraveKnight(){// 创建一个斩杀对象SlayDragonQuest slayDragonQuest = new SlayDragonQuest();// 创建勇敢骑士对象BraveKnight braveKnight = new BraveKnight();//设置勇敢骑士属性braveKnight.setName("姜承録");braveKnight.setSlayDragonQuest(slayDragonQuest);//调用勇敢骑士执行任务方法braveKnight.embarkOnQuest();}
}
TestKnightNew
使用容器的方法
package net.sherry.spring.day01;import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.springframework.context.support.ClassPathXmlApplicationContext;/*** 功能:采用Spring容器测试勇敢骑士类* 作者:Sherry* 日期:2023年02月13日*/
public class TestKnightNew {private ClassPathXmlApplicationContext context; // 基于类路径XML配置文件的应用容器(Bean工厂)@Before // 每次测试方法执行前都要执行的代码就放在此方法里public void init() {// 基于Spring配置文件创建应用容器context = new ClassPathXmlApplicationContext("xmlconfig/spring-config.xml");// 提示用户System.out.println("Spring应用容器已创建~");}@Testpublic void testBraveKnight() {try {// 根据名称从应用容器中获取勇敢骑士对象BraveKnight braveKnight = (BraveKnight) context.getBean("braveKnight");//BraveKnight// 勇敢骑士执行任务braveKnight.embarkOnQuest();BraveKnight knight1 = (BraveKnight) context.getBean("knight1");//BraveKnight// 勇敢骑士执行任务knight1.embarkOnQuest();BraveKnight knight2 = (BraveKnight) context.getBean("knight2");//BraveKnight// 勇敢骑士执行任务knight2.embarkOnQuest();}catch (Exception e){System.out.println("查无此人");}}@After // 每次测试方法执行后都要执行的代码就放在此方法里public void destroy() {// 关闭应用容器context.close();// 提示用户System.out.println("Spring应用容器已关闭~");}
}
1.2、RescueDamselQuest
上路保卫战
RescueDamselKnight
package net.sherry.spring.day01;/*** 功能:* 作者:Sherry* 日期:2023/2/15*/
public class RescuedamselKnight {private String name; //英雄名private RescueDamselQuest rescueDamselQuest; // 救援任务/*** 有参构造方法** @param name* @param rescueDamselQuest*/public RescuedamselKnight(String name, RescueDamselQuest rescueDamselQuest){this.name = name;this.rescueDamselQuest = rescueDamselQuest;}public void embarkOnQuest(){System.out.print("上路保卫者["+ name +"]" );rescueDamselQuest.embark();}
}
RescueDamselQuest
package net.sherry.spring.day01;/*** 功能:* 作者:Sherry* 日期:2023/2/15*/
public class RescueDamselQuest {public void embark(){System.out.println("执行营救任务……");}
}
TestRescueDamselKnightOld
package net.sherry.spring.day01;import org.junit.Test;/*** 功能:* 作者:Sherry* 日期:2023/2/15*/
public class TestRescueDamselKnightOld {@Testpublic void testRescuedamselKnight(){// 创建营救任务RescueDamselQuest rescueDamselQuest = new RescueDamselQuest();// 创建英雄对象RescuedamselKnight rescuedamselKnight = new RescuedamselKnight("Ning", rescueDamselQuest);// 执行任务rescuedamselKnight.embarkOnQuest();}
}
TestRescueDamselKnightNew
package net.sherry.spring.day01;import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.springframework.context.support.ClassPathXmlApplicationContext;/*** 功能:采用Spring容器测试营救任务* 作者:Sherry* 日期:2023/2/15*/
public class TestRescueDamselKnightNew {private ClassPathXmlApplicationContext context; // 基于类路径XML配置文件的应用容器(Bean工厂)@Before // 每次测试方法执行前都要执行的代码就放在此方法里public void init() {// 基于Spring配置文件创建应用容器context = new ClassPathXmlApplicationContext("xmlconfig/spring-config.xml");// 提示用户System.out.println("Spring应用容器已创建~");}@Testpublic void testRescueDamselKnight() {RescuedamselKnight rescuedamselKnight = (RescuedamselKnight) context.getBean("rescueDamselKnight");rescuedamselKnight.embarkOnQuest();}@After // 每次测试方法执行后都要执行的代码就放在此方法里public void destroy() {// 关闭应用容器context.close();// 提示用户System.out.println("Spring应用容器已关闭~");}
}相关文章:
Java企业级开发学习笔记
文章目录一、Spring1.1、Slay Dragon1.2、RescueDamselQuest一、Spring 第一周写了两个小项目均使用了原始调用和容器的方法 两个项目:<斩杀大龙与上路保卫战> 配一张文件位置图 1.1、Slay Dragon BraveKnight package net.sherry.spring.day01;public c…...
【算法基础】(一)基础算法 ---高精度
✨个人主页:bit me ✨当前专栏:算法基础 🔥专栏简介:该专栏主要更新一些基础算法题,有参加蓝桥杯等算法题竞赛或者正在刷题的铁汁们可以关注一下,互相监督打卡学习 🌹 🌹 dz…...
电源口防雷器电路设计方案
电源口防雷电路的设计需要注意的因素较多,有如下几方面:1、防雷电路的设计应满足规定的防护等级要求,且防雷电路的残压水平应能够保护后级电路免受损坏。2、在遇到雷电暂态过电压作用时,保护装置应具有足够快的动作响应速度&#…...
【零基础入门前端系列】—表单(七)
【零基础入门前端系列】—表单(七) 一、什么是表单 表单在Web网页中用来给访问者填写信息,从而采集客户信息端,使得网页具有交互功能。一般是将表单设计在一个HTML文档中,当用户填写完信息后做提交操作,于…...
Linux安装python3
Linux安装python3一.介绍二.下载三.配置1.文件夹2.安装依赖3.安装4.配置4.1python关系4.2配置测试-映射python3文件4.2.1 不用设置默认python3为默认版本4.2.2 将python3设置默认版本一.介绍 因为我的Centos7虚拟机里面只有python2.7.5,我想安装一个python3但是还要…...
怎么通过中级职称有窍门吗?
中级职称评审对人才加薪、升职自然不必说,更重要的是职称证书对于公司和企业同样具有重要的价值和意义,因此只要是说公司办理资质或者有项目招投标的公司对于人才参加中级职称评审毫无疑问会给予大力支持,既然工程师职称有这么多的好处&#…...
SAP ABAP根据事务码查找增强最直接的方法
下面是为任意事务代码查找用户出口的步骤: 方法一: 第 1 步:使用 事务代码:SE93。输入您要搜索用户出口的 事务代码。 在我们的场景中,我们将使用 CO11N。 第 2 步:点击显示: 第 3 步…...
HTTP协议——详细讲解
目录 一、HTTP协议 1.http 2.url url的组成: url的保留字符: 3.http协议格式编辑 ①http request ②http response 4.对request做出响应 5.GET与POST方法 ①GET ②POST 7.HTTP常见Header ①Content-Type:: 数据类型(text/html等)在上文…...
echonet-dynamic代码解读
1 综述 一共是这些代码,我们主要看echo.py,segmentation.py,video.py,config.py。 2 配置文件config.py 基于配置文件设置路径。 """Sets paths based on configuration files."""import conf…...
大气温室气体浓度不断增加,导致气候变暖加剧,随之会引发一系列气象、生态和环境灾害怎样解决?
大气温室气体浓度不断增加,导致气候变暖加剧,随之会引发一系列气象、生态和环境灾害。如何降低温室气体浓度和应对气候变化已成为全球关注的焦点。海洋是地球上最大的“碳库”,“蓝碳”即海洋活动以及海洋生物(特别是红树林、盐沼和海草&…...
字符串内存分配
涉及三块区域:栈,堆,字符串常量池(jdk1.7之前在方法区,jdk1.7之后在堆中) 关于字符串常量池到底在不在堆中: jdk1.6及以前,方法区独立存在(不在堆里面)&…...
CHI协议通道概念
通道定义为一组结点之间的通信信号。CHI协议定义了四种通道,请求REQ、响应RSP、侦听SNP和数据DAT。 RN结点上CHI协议通道信号组包括: 请求发送端信号,RN结点发送读/写等请求,从不接收请求响应接收端信号,RN结点接收来…...
XQuery 简介
XQuery 简介 解释 XQuery 最佳方式是这样讲:XQuery 相对于 XML 的关系,等同于 SQL 相对于数据库表的关系。 XQuery 被设计用来查询 XML 数据 - 不仅仅限于 XML 文件,还包括任何可以 XML 形态呈现的数据,包括数据库。 您应该具备的…...
Spring的Bean的生命周期与自动注入细节
1. Bean的生命周期 通过一个LifeCycleBean和一个MyBeanPostProcessor来观察Bean的生命周期: 构造(实例化)->依赖注入(前后处理)->初始化(前后处理)->销毁 LifeCycleBean Component public class LifeCycleBean {private static final Logger log LoggerFactory.g…...
谷粒商城:订单中心概念解析
1、订单中心 电商系统涉及到 3 流,分别时信息流,资金流,物流,而订单系统作为中枢将三者有机的集 合起来。 订单模块是电商系统的枢纽,在订单这个环节上需求获取多个模块的数据和信息,同时对这 些信息进行加…...
快递员配送手机卡,要求当面激活有“猫腻”吗?
咨询:快递员配送手机卡,要求当面激活有“猫腻”吗?有些朋友可能在网上看到了一些关于快递小哥激活会采集信息的文章,所以觉得让快递小哥激活流量卡并不安全,其实,哪有这么多的套路,只要你自己在…...
Sage X3 ERP的称重插件帮助食品和化工企业实现精细化管理
目录 需要称重插件管理的行业客户 Sage X3 ERP称重插件管理的两个关键单位 Sage X3 ERP称重插件的特色 Sage X3 ERP称重插件管理的重要性 需要称重插件管理的行业客户 术语“实际重量”表示在销售和运输时捕获的物品重量。生产销售家禽、肥料、钢材或任何其他需要跟踪实…...
【笔试强训】Day_01
目录 一、选择题 1、 2、 3、 4、 5、 6、 7、 8、 9、 10、 二、编程题 1、组队竞赛 2、删除公共字符 一、选择题 1、 以下for循环的执行次数是() for(int x 0, y 0; (y 123) && (x < 4); x); A 、是无限循环 B 、循环次…...
字节跳动青训营--前端day9
文章目录前言PC web端一、 前端Debug的特点二、 前端Debug的方式1. 浏览器动态修改元素和样式2. Console3. Sorce Tab4. NetWork5. Application6. Performancee7. Lighthouse移动端调试IOSAndroid通过代理工具调试前言 仅以此文章记录学习。 PC web端 一、 前端Debug的特点 …...
如何把模糊的照片还原?
在我们工作和学习中,经常需要各种各样的照片,方便我们需要时可以使用。比如写文档就需要添加图片、或者上传文章、视频等都需要使用图片。由于网络上的图片质量都不一样,难免会遇到不能满足自己的需求。如果是遇到了模糊的照片,如…...
大数据零基础学习day1之环境准备和大数据初步理解
学习大数据会使用到多台Linux服务器。 一、环境准备 1、VMware 基于VMware构建Linux虚拟机 是大数据从业者或者IT从业者的必备技能之一也是成本低廉的方案 所以VMware虚拟机方案是必须要学习的。 (1)设置网关 打开VMware虚拟机,点击编辑…...
Leetcode 3577. Count the Number of Computer Unlocking Permutations
Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接:3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯,要想要能够将所有的电脑解锁&#x…...
最新SpringBoot+SpringCloud+Nacos微服务框架分享
文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的,根据Excel列的需求预估的工时直接打骨折,不要问我为什么,主要…...
Cinnamon修改面板小工具图标
Cinnamon开始菜单-CSDN博客 设置模块都是做好的,比GNOME简单得多! 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...
工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配
AI3D视觉的工业赋能者 迁移科技成立于2017年,作为行业领先的3D工业相机及视觉系统供应商,累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成,通过稳定、易用、高回报的AI3D视觉系统,为汽车、新能源、金属制造等行…...
Unit 1 深度强化学习简介
Deep RL Course ——Unit 1 Introduction 从理论和实践层面深入学习深度强化学习。学会使用知名的深度强化学习库,例如 Stable Baselines3、RL Baselines3 Zoo、Sample Factory 和 CleanRL。在独特的环境中训练智能体,比如 SnowballFight、Huggy the Do…...
JVM暂停(Stop-The-World,STW)的原因分类及对应排查方案
JVM暂停(Stop-The-World,STW)的完整原因分类及对应排查方案,结合JVM运行机制和常见故障场景整理而成: 一、GC相关暂停 1. 安全点(Safepoint)阻塞 现象:JVM暂停但无GC日志,日志显示No GCs detected。原因:JVM等待所有线程进入安全点(如…...
VM虚拟机网络配置(ubuntu24桥接模式):配置静态IP
编辑-虚拟网络编辑器-更改设置 选择桥接模式,然后找到相应的网卡(可以查看自己本机的网络连接) windows连接的网络点击查看属性 编辑虚拟机设置更改网络配置,选择刚才配置的桥接模式 静态ip设置: 我用的ubuntu24桌…...
动态 Web 开发技术入门篇
一、HTTP 协议核心 1.1 HTTP 基础 协议全称 :HyperText Transfer Protocol(超文本传输协议) 默认端口 :HTTP 使用 80 端口,HTTPS 使用 443 端口。 请求方法 : GET :用于获取资源,…...
省略号和可变参数模板
本文主要介绍如何展开可变参数的参数包 1.C语言的va_list展开可变参数 #include <iostream> #include <cstdarg>void printNumbers(int count, ...) {// 声明va_list类型的变量va_list args;// 使用va_start将可变参数写入变量argsva_start(args, count);for (in…...
