自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(121)
  • 资源 (1)
  • 收藏
  • 关注

原创 Bean的自动装配和使用注解开发

因为按byName规则找不对应set方法,真正的setCat就没执行,对象就没有初始化,所以调用时就会报空指针错误。因为是按类型装配,所以并不会报异常,也不影响最后的结果。甚至将id属性去掉,也不影响结果。true,对象必须存对象,不能为null。将查找其类中所有的set方法名,例如setCat,获得将set去掉并且首字母小写的字符串,即cat。由于在手动配置xml过程中,常常发生字母缺漏和大小写等错误,而无法对其进行检查,使得开发效率降低。组件扫描和自动装配组合发挥巨大威力,使的显示的配置降低到最少。

2022-11-21 15:29:25 543 1

原创 Spring配置/依赖注入

Singleton是单例类型,就是在创建起容器时就同时自动创建了一个bean的对象,不管你是否使用,他都存在了,每次获取到的对象都是同一个对象。针对每次HTTP请求,Spring容器会根据loginAction bean的定义创建一个全新的LoginAction bean实例,且该loginAction bean实例仅在当前HTTP request内有效,因此可以根据需要放心的更改所建实例的内部状态,而其他请求中根据loginAction bean定义创建的实例,将不会看到这些特定于某个请求的状态变化。

2022-11-21 14:57:18 336

原创 Hello Spring和IOC创建对象方式

注: spring需要导入进行日志记录.我们利用maven ,他会自动下载对应的依赖项1.编写一个Hello实体类2.编写我们的spring文件,这里我们命名为beans.xml3.进行测试Hello对象是谁创建的?【hello对象是由Spring创建的 】Hello对象的属性是怎么设置的?【hello对象的属性是由Spring容器设置的 】这个过程就叫控制反转:控制:谁来控制对象的创建,

2022-11-21 14:16:26 231

原创 Spring IOC基础

没有IoC的程序中 , 我们使用面向对象编程 , 对象的创建与对象间的依赖关系完全硬编码在程序中,对象的创建由程序自己控制,控制反转后将对象的创建转移给第三方,个人认为所谓控制反转就是:获得依赖对象的方式反转了。那么我们要使用Oracle , 又需要去service实现类里面修改对应的实现 . 假设我们的这种需求非常大 , 这种方式就根本不适用了, 甚至反人类对吧 , 每次变动 , 都需要修改大量代码 . 这种设计的耦合性太高了, 牵一发而动全身 .在假设, 我们再增加一个Userdao的实现类 .

2022-11-07 09:56:18 114

原创 Spring概述

Spring : 春天 —->给软件行业带来了春天2002年,Rod Jahnson首次推出了Spring框架雏形interface21框架。2004年3月24日,Spring框架以interface21框架为基础,经过重新设计,发布了1.0正式版。很难想象Rod Johnson的学历 , 他是悉尼大学的博士,然而他的专业不是计算机,而是音乐学。

2022-11-07 09:44:06 76

原创 Vue计算属性

调用方法时,每次都需要进行计算,既然有计算过程则必定产生系统开销,那如果这个结果是不经常变 化的呢?此时就可以考虑将这个结果缓存起来,采用计算属性可以很方便的做到这一点,如果在方法中的值发生了变化,则缓存就会刷新!computed:定义计算属性,调用属性使用 currentTime2,不需要带括号;算 的能力(计算是动词),这里的 计算 就是个函数;计算属性的重点突出在 属性 两个字上(属性是名词),首先它是个 属性 其次这个属性有 计。起来的属性(将行为转化成了静态的属性),仅此而已;

2022-10-30 22:02:10 104

原创 Vue组件

号左边的 item 为 props 定义的属性名,右边的为 item in items 中遍历的 item 项的值;v-bind:item="item" :将遍历的 item 项绑定到组件中 props 定义的名为 item 属。组件是可复用的 Vue 实例,说白了就是一组可以重复使用的模板,跟 JSTL 的自定义标签、例如,你可能会有页头、侧边栏、内容区等组件,每个组件又包含了其它的像导航链接、博文之类的组件。像上面那样用组件没有任何意义,所以我们是需要传递参数到组件的,此时就需要使用。

2022-10-30 21:51:24 247

原创 Vue 双向绑定

框架,即数据双向绑定,即当数据发生变化的时候,视图也就发生变化,当视图发生变化的时候,数据也会跟着同步变化。元元素上创建双向数据绑定。它会根据控件类型自动选取正确的方法来更新元素。本质上不过是语法糖。它负责监听用户的输入事件以更新数据,并对一些极端场景进行一些特殊处理。控件不会涉及到数据双向绑定。因此, 更推荐像上面这样提供一个值为空的禁用选项。中,这会使用户无法选择第一个选项。值得注意的是,我们所说的数据双向绑定,一定是对于。打开浏览器,对比两个输入框,查看效果!的双向数据绑定用起来就特别舒服了。

2022-10-30 21:44:39 126

原创 Vue基本语法

我们这 click 是vue的事件,可以绑定到Vue中的 methods 中的方法事件!,然后 回车,你会发现浏览器中显示的内容会直接变成 Hello World,此时就可以在控制台直接输入 vm.message。层就是使用 观察者模式 来实现数据的监听与绑定,以做到数据与视图的快速响应。我们对于基础语法,说白了就是实现元素赋值,循环,判断,以及事件响应。的,在这个操作中,我并 没有主动操作 DOM。,就让页面的内容发生了变化,这就是借助了。在背后做了大量工作。指令,它的简写的形式就是一个冒号(:)

2022-10-30 21:12:01 72

原创 Vue 插槽

元素 作为承载分发内容的出口 作者称其为插槽 可以应用在组合组。件的场景中 比如准备制作一个待办事项组件(todo。组成 但这三个组件又是相互独立的 该如何操作。、将上面的代码留出一个插槽。) 该组件由待办标题(

2022-10-30 20:52:54 138

原创 计算机组成原理知识点汇总

将高级语言编写的源程序翻译成目的程序,然后由机器执行目的程序。应用软件:文字与表格处理软件、图形与图像处理软件、辅助设计软件、信息管理软件、科学计算程序等。指从用户向计算机发送一个请求,到系统对该请求做出响应并获得它所需要的结果的等待时间。时间(运行一个程序所花费的时间)与等待时间(用于磁盘访问、存储器访问、的指令集有较大差异,对应的机器指令也不同, 但同一系列的。是指计算机进行一次整数运算所能处理的二进制数据的位数。编写的程序与问题的描述相差甚远,可读性仍不好。指单位时间内与主存交换的二进制信息量。

2022-09-20 16:18:18 661

原创 Python 个人图书管理系统 (tkinter和sqlite实现)

bjfu 2020级python结课作业书籍的基本信息包括:序号、书名、作者、出版社和类别,类别分为专业书、工具 书、报告、小说和其他。 1.1 系统基本功能要求 (1)录入书籍信息 提示用户按一定格式输入书籍信息。 注意:书籍记录的查重,同一序号的书籍不能出现两次。 (2)保存书籍信息 将书籍信息保存至文件,并提示保存是否成功。 (3)浏览书籍信息 显示所有书籍信息,可以分页显示。 (4)查询书籍信息 可分别按照书名、作者、出版社、类别进行书籍查询。 .

2022-05-19 10:01:54 960 5

原创 Java 反射

反射机制目录Java 反射机制概述 理解 Class 类并获取 Class 实例 类的加载与 ClassLoader 创建运行时类的对象 获取运行时类的完整结构 调用运行时类的指定结构 Java 反射机制概述 静态 VS 动态语言 动态语言Java 反射机制概述静态 VS 动态语言1) 动态语言2)静态语言Java 可以称之为“准动态语言”。即 Java 有一定的动态性,我们可以利用反射机制获得类似动态语言的特性。Java 的动态性让编程的时候更加灵活Jav...

2022-05-19 09:45:18 182 2

原创 Java 网络编程

1.1概述 Java是Internet上的语言,它从语言级上提供了对网络应用程序的支持,程序员能够很容易开发常见的 网络应用程序。Java提供的网络类库,可以实现无痛的网络连接,联网的底层细节被隐藏在 Java 的本机 安装系统里,由JVM进行控制。并且Java实现了一个跨平台的网络库,程序员面对的是一个统一的网络 编程环境。 计算机网络: 把分布在不同地理区域的计算机与专门的外部设备用通信线路互连成一个规模大,功能强的网络系统, 从而使众多的计算机可以方便地互相传递信息,共享硬..

2022-05-08 20:50:29 744

原创 Java多线程详解五 线程通信

线程协作应用场景:生产者和消费者问题假设仓库中只能存放一件产品,生产者将生产出来的产品放入仓库,消费者将仓库中产品取走消费 如果仓库中没有产品,则生产者将产品放入仓库,否者停止生产并等待,直到仓储中的产品被消费者取走为止 如果仓库中放有产品,则消费者可以将产品取走消费,否则停止消费并等待,直到仓库中再次放入产品为止这是一个线程同步问题,生产者和消费者共享同一个资源,并且生产者和消费者之间相互依赖,互为条件对于生产者,没有生产产品之前,要通知消费者等待,而生产了产品之后,又需要马上通知消费者消

2022-05-08 20:23:04 113

原创 Java多线程详解四 线程同步

三种不安全情况 同步方法 同步块 死锁 Lock锁多个线程操作同一个资源并发:同一个对象被多个线程同时操作现实生活中我们常用排队去解决并发现象 而线程中,会将多个需要同时访问的线程装进对象等待池中形成列队,等待前面线程使用完毕后,下个线程再使用。同步形成条件:队列+锁锁机制【synchronized】锁机制存在以下问题:一个线程持有锁会导致其他所有需要此错的线程挂起 在多线程竞争中,加锁,释放锁会导致比较多的上下文切换和调度延时,引起性能问题 如果一个优先级高的线.

2022-05-08 17:38:11 442

原创 Python 实验三 使用 TCP 实现智能聊天机器人

编写聊天程序的服务端代码和客户端代码。完成后,先启动服务端代码,然 后启动客户端程序输人问题,服务端可以返回相应的答案。要求服务端代码具 有一定的智能,能够根据不完整的问题识别客户端真正要问的问题。 程序运行后界面如下图所示。 源代码:服务端 Sever.py:from os.path import commonprefixfrom posixpath import splitimport socket#建立聊天回复字典words={'how are...

2022-05-08 17:24:48 1556

原创 Python 实验二 tkinter 版小学数学口算题生成器设计与实现

在小学一、二年级,只能口算 20 以内整数的加、减法;三、四年级可以口 算超过 20 的整数四则运算;五年级以上可以口算带括号的式子。 编写程序,批量生成小学口算题,要求把生成的口算题写入 Word 文件中 的表格。表格共 4 列,用户指定表格行数和题目适用年级。程序运行后界面如 下图所示。import randomimport osimport tkinterimport tkinter.ttkfrom docx.shared import Ptfrom docx imp..

2022-05-08 17:21:38 3633

原创 Python 第六章 输入和输出

1.完成本章中的例6.1~例6.18,熟悉Python程序的输入和输出功能。2.(P6-prg2.py)尝试修改例6.2编写命令行参数解析的程序,解析命令行参数所输入边长的值,计算并输出正方形的周长和面积。import argparseparser = argparse.ArgumentParser()parser.add_argument('--length', default = 10, type =int, help ='边长')args = parser.parse_args().

2022-05-08 17:15:09 3023

原创 Java多线程详解三 线程状态

常用方法setPriority(int newPriority) 更改线程的优先级static void sleep(long millis) 在指定的毫秒数内让当前正在执行的线程休息(会抛出异常)void join() 等待该线程终止(超车)static vioid yield() 暂停当前正在执行的线程对象,并执行其他线程void intreeupt() 中断线程(建议不要用这个方法)boolean isAlive() 测试线程是否处于活动状态停止线程 线程休眠s.

2022-05-08 16:59:59 144

原创 Java多线程详解二 线程实现

三种创建方式Thread class→ 继承Thread类(重点)Runnable 接口→ 实现 Runnable 接口(重点)Callable 接口→ 实现 Callable 接口 (了解)Thread自定义线程类继承 Thread 类 重写 run() 方法,编写线程执行体 创建线程对象,调用 start() 方法启动线程//继承 Thread 类public class TestThread01 extends Thread { //重写 run()...

2022-05-08 16:46:53 833

原创 Java多线程详解一 线程简介

目录线程简介 线程实现(重点) 静态代理模式 Lambde表达式 线程状态 线程同步(重点) 线程通信问题 高级主题一、线程简介线程Thread :类似于道路普通方法和多线程:一个进程里面可以有多个线程Process与Thread:通常在一个进程中可以包含若干个线程,当然一个进程中至少有一个线程,不然没有存在的意义。线程是CPU调度和执行的单位。注意:很多多线程是模拟出来的,真正的多线程是指由多个cpu,即多核,如服务器。如果是模拟出来的多线程,即在一个cp.

2022-05-08 16:32:51 103

原创 Linux下多线程错误 undefined reference to `sem_wait‘

undefined reference to `sem_init'undefined reference to `sem_wait'编译选项需要加入一个多线程:gcc -pthread -o outfile.out filename.cppoutfile就是你要导出的名称 filename是编译文件名称

2022-04-19 11:19:05 2415

原创 Java中ArrayList和HashSet的区别

HashSet1) HashSet不能够存储相同的元素,元素是否相同的判断:重写元素的equals方法。equals方法和hashCode方法必须兼容,如:equals方法判断的是用户的名字name,那么hashCode的返回的hashcode必须是name。hashcode();2) HashSet存储是无序的,保存的顺序与添加的顺序是不一致的,它不是线性结构,而是散列结构,(通过散列表:散列单元指向链表)。因此,HashSet的查询效率相对比较高。3) HashSet不是线程安全的...

2022-04-05 17:34:17 2876

原创 Python 简易图形用户界面计算器

简易用户图形界面计算器设计思路:简易图形用户界面计算器的界面和功能设计如下:(l)第一行显示输入的运算表达式:第二行显示当前输入的作数或运算结果:第三行到篤七行为计算器按钮·(2)输入擬作数·按数字0到9和小数点按钮键时,可以输入显示操作数·(3)操作数编辑。按“-”按钮腱,可以清除当前输入作数的最后一个字符:按“±”按钮键,切换当前输入数的正负号:按"C”按钮腱,清除当前输入的操作数·(4)输入运算符·按运算符“/、*`、+”按钮键时,显示到目前为止的输入的运算表达式·(5)执行...

2022-03-29 16:33:04 3541 2

原创 Python 第五章 序列数据类型

2.(P5-prg2.py) 统计所输入字符串中单词的个数,单词之间用空格分隔。word = input("请输入您要统计的字符串:")num = word.count(" ")print("该字符串中的的单词个数为{}个".format(num+1))3.(P5-prg3.py)编写程序,删除一个list里面的重复元素。提示:可以利用s.append(x)方法把对象x追加到列表s的尾部。def delete(L): newL=[] for i in L: ...

2022-03-28 13:36:35 1436

原创 Ordering Tasks / 拓扑排序

Ordering TasksJohn has n tasks to do. Unfortunately, the tasks are not independent and the execution of one task is only possible if other tasks have already been executed. Input The input will consist of several instances of the problem. Each inst.

2022-03-27 20:21:11 71

原创 Oil Deposits /DFS

Oil Deposits GeoSurvComp地质调查公司负责探测地下油藏。GeoSurvComp每次只处理一个大的矩形区域,并创建一个划分的网格把土地分成许多正方形的地块。然后利用传感设备分别分析每个地块确定该地块是否含有石油。含有石油的地块被称为油穴。如果两个口袋是相邻的,那么它们是相同的一部分石油储蓄。石油矿床可能相当大,并可能包含许多小块。你的工作是决定网格中包含多少种不同的储蓄。Input 输入文件包含一个或多个网格。每个网格以包含m和n(数字)的一行开始网格中的行和列,用.

2022-03-27 19:26:40 203

原创 Java BigInteger常见用法

常见运算方法BigInteger abs() 返回大整数的绝对值BigInteger add(BigInteger val) 返回两个大整数的和BigInteger and(BigInteger val) 返回两个大整数的按位与的结果BigInteger andNot(BigInteger val) 返回两个大整数与非的结果BigInteger divide(BigInteger val) 返回两个大整数的商double doubleValue() 返回大整数的double类型的值...

2022-03-25 16:23:51 786

原创 Algorithm Design and Analysis Experiment 1

BJFU 算法设计与分析实验一

2022-03-24 23:06:31 539

原创 Python 实验一 抓狐狸小游戏 查找Word中加粗和红色文本

(1)编写程序,模拟抓狐狸小游戏。假设一共有一排 5 个洞口,狐狸最开始的时候在其中一个洞口,然后玩家随机打开一个洞口,如果里面有狐狸就抓到了,如果洞口里没有狐狸就第二天再来抓,但是第二天狐狸会在玩家来抓之前跳到隔壁洞口里。如果在规定的次数内抓到了狐狸就提前结束游戏并提示成功;如果规定的次数用完还没有抓到狐狸,就结束游戏并提示失败。from random import choice, randrangedef catchMe(n=5, maxStep=10): '''模拟抓小狐狸,一共n个

2022-03-24 14:33:24 6362

原创 Python 第四章 常用内置数据类型

2. (P4-prg2.py)编写程序,格式化输出杨辉三角。杨辉三角即二项式定理的系数表,各元素满足如下条件:第一列及对角线上的元素均为1;其余每个元素等于它上一行同一列元素与前一列元素之和。提示:可以使用“print("1".center(20))”的语句形式在一行上打印20个字符,并且居中对齐。num = int(input("请输入杨辉三角的行数:"))while(num<1): num = int(input("请输入杨辉三角的行数:")) def trian.

2022-03-24 14:21:39 4019

原创 Python 第三章 程序流程控制

2. 编写程序(P3-prg2.py),计算2+4+6+8…+100之和。sum =0for i in range(1,101): if i%2==0: sum = sum+iprint("2+4+6+..+100的和为",sum)3. 编写程序(P3-prg3.py),计算Sn=1+1/2+1/3+…。import mathsum=0i=1while(1/i>=pow(10,-6)): sum= sum+1/i ...

2022-03-24 14:16:37 2504

原创 python 第二章 语言基础

第二章2. 编写程序(P2-prg2.py),输入本金、年利率和年数,计算复利(结果保留两位小数)。提示:用户可以使用“print(str.format("本金利率和为:{0:2.2f}",amount))”的语句形式输出程序运行效果(结果保留两位小数)。import mathprincipal =float(input("请输入本金:"))interest =float(input("请输入年利率:"))year =float(input("请输入年数:"))r =float(p..

2022-03-24 14:06:08 7224

原创 图的最小生成树 Prim&Kruskal

Prim算法struct//辅助数组的定义,用来记录从顶点集U到V-U的权值最小的边 { char adjvex;//最小的边在U中的那个顶点 int lowcost;//最小的边上的权值 }closedge[MVNum];int Min(AMGraph G)//普里姆算法中的Min { int i,//次数 a,//用于记录最小值的位置 min = MaxInt;//先使min设为最大值 for(i=0;i<G.vexnum;i++) { if(clo.

2022-01-27 11:35:44 203

原创 有向图的最短路径 弗洛伊德和迪杰斯特拉算法

均基于图的邻接矩阵表示一、迪杰斯特拉算法void ShortestPath_DIJ(AMGraph G,int v0)//用Dijkstra算法求有向图G的v0到其余顶点的最短路径 { int i,n,v,min,w;//下面所用到的所有变量 n = G.vexnum;//顶点个数 bool S[n];//辅助数组S[]的定义 int D[n],Path[n];//辅助数组D[]和Path[]的定义 for(v=0;v<n;v++)//辅助数组的初始化 { S.

2022-01-27 11:29:12 310

原创 BJFU 计算机组成原理期末知识点总结

本文按照每章后的小结和重点展开 某些零碎知识点可能并未包括 具体以实际为准 仅供学弟学妹们参考文章目录一、各章节小结和重点二、第一章三、第二章四、第三章重点五、第四章重点六、第五章七、第六章重点八、第七章一、各章节小结和重点二、第一章​三、第二章四、第三章重点五、第四章重点六、第五章七、第六章重点八、第七章...

2022-01-27 11:18:34 577 1

原创 基于链表的简单选择排序

描述试以单链表为存储结构,实现简单选择排序算法。输入多组数据,每组数据两行。第一行为序列的长度n,第二行为序列的n个元素(元素之间用空格分隔,元素都为正整数)。当n等于0时,输入结束。输出每组数据输出一行,为从小到大排序后的序列。每两个元素之间用空格隔开。输入样例 154 5 3 2 961 3 5 7 9 20输出样例 12 3 4 5 91 2 3 5 7 9#include<iostream>using namespace s

2022-01-27 10:24:47 2927 2

原创 二维数组中的元素查重

描述设二维数组a[1..m, 1..n] 含有m*n 个整数。写一个算法判断a中所有元素是否互不相同。输入多组数据,每组数据有m+1行,第一行为二维数组的行数m和列数n,之后m行为输入的二维数组。当n=0且m=0时输入结束。输出对于每组数据分别输出一行,若二维数组中存在相等元素则输出“YES”,否则输出“NO”。输入样例 14 31 2 34 5 67 8 910 11 123 41 2 3 45 6 7 81 9 10 110 0输出样例 1N.

2022-01-27 10:22:19 2052

原创 字符串的插入

描述编写算法,实现下面函数的功能。函数void insert(char*s,char*t,int pos)将字符串t插入到字符串s中,插入位置为pos(插在第pos个字符前)。假设分配给字符串s的空间足够让字符串t插入。(说明:不得使用任何库函数)输入多组数据,每组数据有三行,第一行为插入的位置pos,第二行为要被插入的字符串s,第三行为待插入的字符串t。当pos为“0”时输入结束。输出对于每组数据输出一行,为t插入s后的字符串。输入样例 11abcdeabc2acd.

2022-01-27 10:20:38 6031

jquery-3.6.1.js

jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(框架)于2006年1月由John Resig发布。jQuery设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设计和Ajax交互。

2022-12-06

MyFrame.java

MyFrame.java

2022-04-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除