- 博客(249)
- 收藏
- 关注
原创 python基础类型转换
int:整数类型float:浮点数str:字符串类型bool:布尔类型python是弱类型语言,如果向获取一个数据的类型可以用type()函数操作。
2025-04-13 16:33:24
214
原创 javaweb 0x08 删除员工&修改员工&异常处理&数据统计
三层架构每层负责实现的功能层:接收参数:直接通过形参数组接收前端传递过来的类型的参数直接封装在数组中封装在List中**@RequestParam注解**不能省略:调用mapper的删除员工基本信息,以及调用删除员工工作经历信息这两个方法,由于这两个删除需要同时完成,就需要开启事务:需要EmpMapper接口EmpExprMapper接口EmpMapper.xml映射文件:由于时批量删除所以需要使用动态sql</</EmpExprMapper.xml映射文件:和上面的一样</</
2025-03-15 21:55:32
682
原创 0x07 新增员工&事务管理&文件上传
将新增员工的任务拆分为保存员工基本信息和保存员工工作经历信息两部分保存员工基本信息前端传来的数据,可以看到除了员工基本信息还有员工工作信息,我们肯定选择用一个类去接收这些信息,现有的类中只有emp比较符合,但是缺少员工工作经历,于是我们还需要在Emp类中增加一个exprList的属性加上员工工作经历的Emp类如下下面是三层架构的代码controllerservicemapper批量保存员工经历信息可以在mapper层使用动态sql,也可在service层通过for循环多次调用mapper层使用动
2025-03-09 11:09:40
1020
原创 0x06 多表查询&员工管理
场景:部门与员工的关系(一个部门下有多个员工)关联两张表的方式是在一张表中添加一个字段关联一方的,就员工部门场景而言,就是在员工表上添加一个**关联的部门ID(dept_id)**字段。:部门数据可以直接删除,然而员工表中可能仍然存在与该部门相关联的数据,即员工属于该部门,此时出现了数据的不完整、不一致:部门表和员工表只是单纯地在逻辑上进行了关联,并未在数据库层面建立关联。:外键约束:使用foreign key定义外键关联另一张表由于物理外键上面的缺点,所以物理外键基本上不会用到,取而代之的是逻辑外键。
2025-03-07 23:59:49
745
原创 0x05 部门功能开发&日志技术
采用,表述性状态转换,是一种软件架构风格REST是风格,是约定方式,约定不是规定,可以打破描述功能模块通常使用复数形式加s(如users),表示此类资源,而非单个资源。
2025-03-02 18:20:08
1133
原创 0x04 jdbc和mybatis
MyBatis是一款持久层框架,用于简化JDBC的开发。MyBatis几乎免除了所有JDBC代码以及设置参数和获取结果集的工作。
2025-03-01 22:59:26
550
原创 0x02 js、Vue、Ajax
Vue是一款用于构建用户界面的渐进式的JavaScript框架渐进式指的是可以使用vue的一部分来构建我们的页面< body > < div id = " app " > < h1 > {{ msg }} </ h1 > </ div > < script type = " module " > // 1. 导入Vue import {data() {return {
2025-02-27 13:11:34
997
原创 0x01 html和css
对于三种css使用方式:第一种:行内样式stylecolorgrey;</第二种:内部样式spancolor;</</</</</第三种:外部样式html代码部分,用link标签引入css文件,后面可以在body部分使用</</</css代码部分注意第三种方式css代码每个选择器之间不能有分号,也就是下面代码种span元素选择器和a元素选择器之间没有分号三种方式在代码复用性方面来说,外部样式>内部样式>行内样式。
2025-02-26 23:03:28
1031
原创 python内置函数permutations
permutations是python的itertools模块的一个函数,可以用来求可迭代对象的全排列后面r的作用解释一下,加入iterable中元素有n个,r=m,就相当于先在n中选m个,再对m个进行全排列也就是Cnm结果可见下面这段代码C5360所有list的长度为60。
2024-12-15 00:58:33
482
原创 Python中定义抽象基类
python中定义可以定义抽象类,和Java中的抽象类是一样的,不能被直接实例化,而是作为一个基类,主要用于定义一组接口规范,接口的实现在继承其的子类中完成,并且要求子类必须实现定义的所有接口,和Java一样如何子类未完全实现父类中的所有接口,那么这个子类也会被定义成为一个抽象类,不能直接实例化。
2024-12-14 21:52:44
480
原创 python numpy基础使用
水平合并horizontal stack。垂直堆叠vertial stack。和python的list一样。深拷贝deep copy。
2024-12-14 12:43:22
294
原创 word中写论文的一些trick
然后就可以在里面打入latex或mathjax了,不过这个没有预览功能,可以在别的有预览功能的地方打好直接粘贴过来。第三步:选择指定位置插入,鼠标放在什么位置,就会在什么位置插入。但是这和我们常用的格式并不一样还需要进行一步替换。上面的内容也可以选择不是上表下标的版本,如下图。但引用部分还没有替换这里也是需要替换的。这里我选择的是替换成不是上标下标的格式。选中全文,在选项卡开始的右侧选择替换。在公式的末尾的latex中加入。然后重新渲染,就会出现编号了。第二步:设置脚注的格式。然后正文部分就被替换了。
2024-12-13 11:07:22
634
原创 配置服务器的免密登录
然后就生成了公钥和密钥,下一步进入.ssh文件夹。然后下一步,我们在这三个文件所在目录下创建。可以看到文件夹中会多出来三个文件。下面还需要配置一下免密登录。如果没有生成过公钥和密钥。这样就完成了别名的配置。
2024-12-10 00:02:20
362
原创 docker的简单使用
Docker是一个开源的应用容器引擎,基于Go语言并遵从Apache2.0协议开源。Docker可以让开方子打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux上也可以实现虚拟化。
2024-12-09 23:11:34
796
原创 python正则表达式
正则表达式,又称规则表达式(Regular Expression),是使用单个字符串来描述、匹配某个句法规则的字符串,常被用来检索、替换那些符合某个模式(规则)的文本。比如,验证一个字符串是是否符合条件的电子邮箱地址,只需要配置好正则规则,即可匹配任意邮箱。(如果开头都不匹配那就直接失败)进行匹配,匹配成功返回匹配对象,匹配不成功返回空。python正则表达式,使用re模块,并且基于re模块中三个基础方法来做正则匹配。简单来说,正则表达式就是使用:字符串定义规则,并通过规则去验证字符串是否匹配。
2024-12-06 23:49:57
717
原创 python大数据入门
map中传递一个函数,并且将rdd中的每一个元素都传递给这个函数去计算,这个函数需要返回一个元素,函数需要根据具体逻辑。:map算子是将RDD的数据一条条处理(处理逻辑基于map算子中接收到的处理函数),返回新的RDD。pyspark的数据计算都是基于RDD对象来进行的,更具体地是依赖于RDD对象内置丰富的。功能:将RDD各个分区内的数据,同意收集到Driver中,形成一个List对象。pyspark支持多种数据的输入,再输入完成后,都会得到一个RDD对象。功能:对RDD数据进行去重,返回新的RDD。
2024-12-06 23:01:14
707
原创 python操作数据库
这样每次写完插入语句还需要再多写一行代码commit,其实有一种简单的方法设置自动提交。python使用第三方库pymysql来操作mysql数据库。执行非查询性质的SQL语句。执行查询性质的SQL语句。
2024-12-06 20:52:05
337
原创 python类与对象
一旦复写父类成员,那么类对象调用成员的时候,就会调用复写后的新成员,如果需要使用被复写的父类的成员,需要特殊的调用方式。多态,指的是:多种状态,即完成某个行为时,使用不同的对象会得到不同的状态。子类继承父类的成员属性和成员方法后,如果对其不满意,那么可以进行复写。抽象类就好比定义一个标准,包含了一些抽象的方法,要求子类必须实现。虽然类对象无法使用,但是私有成员可以被类中的其他成员使用。就是其中之一,这些内置的类方法,各自有各自特殊的功能。关键字是成员方法定义的时候,必须填写的。# type: 类型。
2024-12-06 15:41:05
644
原创 python异常、模块和包
异常就是程序运行过程中出现了错误下面上运行上面这段代码的结果自定义模块就是自己写个python文件需要用的时候按照模块的导入正常导入就可以了注意当导入多个模块的时候,并且模块内有同名功能,后导入的模块会覆盖前面的可以用来测试模块,同时保证我们在别的python文件中导入模块的时候if条件里面的内容不会执行。为什么可以呢?# module.py文件当我们运行module.py这个文件的时候,这时候python的内置变量__name__就会成为’main。
2024-12-06 12:09:52
1095
原创 python文件操作
如果以“r+”模式打开,但是先写后读,那么写入的内容会覆盖原内容,读取时从写结束位置开始读。如果原文档内容小于新写入的,那么全部被覆盖,读到的为空。如果原文档内容大于新写入的,那么读到的内容为原文档剩下的内容。打开文档即清空原内容,从文档开头写起,写完后光标自动移到文档末尾,此时进行读取,内容为空。追加在原文档末尾,不会清空原内容,写完后光标移到文档末尾,此时进行读取,内容为空。如果以“a+”模式打开,先进行读操作,读到的内容也是为空,因为打开即把光标定位在文档末尾。清空原文档,光标自动定位到文档末尾。
2024-12-06 01:59:32
986
原创 python函数进阶
缺省参数:也叫默认参数,用于定义函数,为参数提供默认值,调用函数时可不传该默认值。接受,并组成字典,kwargs和args只是习惯上命名,可以用其他标识符。注意:参数是”键=值“形式的形式的情况下,所有的”键=值“都会被。作用:当调用函数时不确定参数个数时,可以使用不定长参数。作用:可以让函数更加清晰、容易使用,同时也。调用函数时根据定义函数的位置来传递参数。收集,它会根据传进参数的位置合并为一个。无名称的匿名函数,只可临时使用一次。不定长参数:也叫可变参数,用于。注意:传进的所有参数都会被。
2024-12-06 01:14:13
346
原创 python中的容器(container)
python中的数据容器:是一种可以容纳多份数据的数据类型,容纳的每一份数据称之为1个元素,每一个元素,可以是任意类型的数据,如字符串、数字、布尔等。列表(list)元组(tuple)字符串(str)集合(set)字典(dict)# 字面量[元素1, 元素2, 元素3, 元素4, 元素5, ...]# 定义变量# 定义空列表变量名称 = []变量名称 = list()列表中的元素的数据类型可以是不同的数据类型,并且列表支持嵌套元组定义:使用小括号,并且使用逗号。
2024-12-06 00:41:00
1434
原创 黑马JavaWeb-day06、07、08(SQL部分) _
关系型数据库(RDBMS):建立在关系模型基础上,由多张相互连接的二维表组成的数据库。使用表存储数据,格式统一,便于维护使用SQL语言操作,标准统一,使用方便,可用于复杂查询SQL:一门操作关系型数据库的编程语言,定义操作所有关系型数据库的统一标准。SQL语句可以单行或多行书写,以分号结尾。SQL语句可以使用空格/缩进来增强语句的可读性MYSQL数据库的SQL语句不区分大小写。注释:单行注释:-- 注释内容或# 注释内容多行注释:/注释内容索引(index)是帮助数据库。
2024-12-04 15:21:10
1103
原创 强化学习的数学原理-09策略梯度
是策略的函数,不同策略对应的值不同,所以就可以去优化,找到一个最优的策略让这个值达到最大。这个公式是没有办法应用的,因为公式中有期望,所以需要通过随机的梯度来代替真实梯度。现在由于策略梯度的方法是直接建立一个关于策略的函数,于是就要改变策略的形式。上面这个式子是有用的,因为有期望,所以可以通过采样的方式去近似。这就是策略梯度的思想,这个想法是很简单的,但是这其中会存在一些问题。上面相乘再相加的形式可以写成一种更简洁的形式就是两个向量的内积。但是上面的式子仍然是无法应用的,因为上面的式子里面涉及了。
2024-11-12 15:41:44
350
原创 黑马JavaWeb-day04
mavenMavenMavenMaven是apacheapacheapache旗下的一个开源项目,是一款用于管理和构建javajavajava项目的工具,它是基于项目对象模型(POM|project object model)的概念,通过一小段描述信息来管理项目的构建。maven的作用管理jar包:在引入maven之前,都是先下载jarjarjar包,然后在项目下面新建一个libliblib文件,然后将jarjarja。
2024-11-01 20:54:34
1025
原创 强化学习的数学原理-07时序差分方法
算法实际上是没有那么重要的,但是从一个经典算法出发,然后去推广改进,这种思路对于做研究来说是非常常见的。实际上也是在求解一个贝尔曼公式,只不过这个贝尔曼公式的形式和。基本上是一摸一样的,只不过是将对状态的估计,变成了对动作。,需要计算期望,也就需要更大的计算量,但是随机性减少了。算法及其变形在做的事情是给定一个策略能够估计出来一个。不同的是,这个贝尔曼期望方程是使用。这三个例子是层层递进的,都可以用。的距离更近了,所以这个算法就是把。这些数据的生成依赖于给定的策略。是一个比较小的正数,所以。
2024-10-29 21:08:44
1002
原创 强化学习的数学原理-06随即近似理论和随机梯度下降
的优势是不需要知道方程或目标函数的表达式,自然也不知道导数、梯度之类的信息.的随机性会比较大,需要的数据又比较少,效率和性能是比较高的.显示我们是不知道的(也是我们想要去求解的),但是我们可以对。:是指随机迭代的一类算法,进行求解方程或者优化的问题,求解这个问题下面给出3种方法,这三种方法是逐渐递进的。的随机性比较小,因为用了更多的数据去代替一个数据.的思想,思想比较简单,但是缺点是在每次更新。下面就看一下RM算法如何解决上面的问题。,如果能解决这个问题,就能得到。上面的这个式子就是所给出的。
2024-10-29 14:01:47
759
原创 强化学习的数学原理-05蒙特卡洛方法
总结:当模型未知的时候,我们就需要知道数据.没有数据的时候,需要有模型,反正两者需要其中的一个。逐渐减小,在开始时比较大,具有较好的探索能力,随着时间推移,逐渐减小,最后接近最优策略.这样期望计算起来就很简单了,但是问题是我们无法做到精确地知道这样的模型。这里是近似就会存在一个问题,这样去近似得到的结果是否是精确的?恰恰又是最优的,为了能得到最优的策略,我们还是要确保每一个。是没办法确保的,因为它依赖于策略和环境,没办法保证从一个。最难以理解的是怎么在没有模型的情况下去估计一些量。
2024-10-29 09:43:01
1039
原创 强化学习的数学原理-04值迭代与策略迭代
第一步进行:策略评估(PE, policy evaluation)Matrix-vector form对于理论分析通常是有用的。而实际中我们是不可能去计算无穷步的,我们之后计算算有限步,当。Elementwise form对于具体实现是有用的。是一个贪心的策略,因为他只是单纯地寻找最大的。主要的区别在Value更新的那一步。 根据贝尔曼方程可以计算出。是在计算了无穷步之后用收敛的。很小的时候就停止更新,这就是。是贪心的,上面的等式就变为。给一个随机初始化的策略。在计算了一步之后就用。
2024-10-28 11:47:56
873
原创 强化学习的数学原理-03贝尔曼最优公式
时策略又会发生变化,策略会变得非常短视,更具体地说策略只会关注。求解贝尔曼最优公式就是已知红色量求出上面公式中黑色的量。有了上面的压缩映射定理就可以解决贝尔曼最优公式了。求解不动点的算法:这是一个迭代式的算法,不断令。,同时收敛的速度会非常快(以指数的速度收敛),这样导致的结果可能是采用的策略根本到达不了。这个方程,求解这个方程就需要下面的知识了。,那么贝尔曼最优公式就可以利用上面的。基于上面的定义,于是就可以定义最优。比较小的时候则会比较短时,获得的。对于所有的状态s,和所有的策略。
2024-10-24 15:12:11
908
原创 黑马JavaWeb-day03
结尾的文件都称之为组件文件,每个组件有三个部分:, , 前端工程化:是指在企业级的前端项目开发中,把前端开发所需的工具、技术、流程、经验等进行规范化、标准化。:vue官方提供的一个脚手架,用于快速生成一个Vue的项目模板.也就是说我们vue项目中的html文件就可以部署在html中。:维护当前项目的基本信息,项目开发所需要的模块,版本信息。:保存vue项目的配置信息,如:代理,端口的配置。项目中生成的dist文件就是打包好的文件。
2024-10-23 11:25:41
991
原创 强化学习的数学原理-02贝尔曼公式
如果仅仅从这一个式子中求出state value是不可能的,但是注意到对于所有的state,贝尔曼公式都是成立的,如果有n个状态,那么就会有n个equation,把所有的equation放到一起就得到了一组,进一步就可把这些equation整理成matrix-vector form,matrix-vector form是非常优雅和重要的,对于我们求解state value是非常有帮助的。把所有的状态放到一起,就可以上面的式子变成matrix-vector form啦。
2024-10-22 11:49:10
752
原创 黑马JavaWeb-day02
Vue是一套前端框架,免除原生JavaScript中的DOM操作,简化书写.基于MVVM(Model-View-ViewModel)思想,实现数据的双向绑定,将编程的关注点放在数据上.:Browser Object Model 浏览器对象模型,允许JavaScript与浏览器对话,JavaScript将浏览器的各个组成部分封装成对象.:JavaScript Object Notation,JavaScript对象标记法,json就是通过JavaScript对象标记法书写的文本.
2024-10-21 23:12:51
949
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人