- 博客(38)
- 资源 (3)
- 收藏
- 关注
原创 Python中使用SQLite
在这个分页查询的例子中,我们使用了`LIMIT`和`OFFSET`子句。视图由`show_menu`、`show_users`和`get_user_input`函数组成,它们负责与用户交互。`显式地开始了一个事务。`sqlite3`模块还提供了`commit`和`rollback`的自动管理。使用`execute()`方法查询数据,并使用`fetchall()`或`fetchone()`获取结果。假设我们有两个表:`users`和`orders`,我们想要获取所有用户的详细信息以及他们对应的订单。
2024-08-31 09:48:39
1738
原创 开源软件新峰商城之DAO接口
配置类型,表示配置项的类型,取值范围为1-5,分别对应不同的配置类型:1-搜索框热搜,2-搜索下拉框热搜,3-首页热销商品,4-首页新品上线,5-首页为你推荐。:订单body,类型为varchar,长度为100,字符集为utf8,不可为空,默认值为空字符串。:收货人手机号,类型为varchar,长度为11,字符集为utf8,不可为空,默认值为空字符串。:订单号,类型为varchar,长度为20,字符集为utf8,不可为空,默认值为空字符串。:创建时间,类型为datetime,不可为空,默认值为当前时间。
2024-08-30 08:06:24
882
原创 MyBatis之动态和分页
1)在config包中创建DataSource1Config类,此类用于配置主数据源。@Primary@Primary@Primary@Primary配置主数据源需要添加@Primary注解,其他普通数据源不能加这个注解,否则会报错。2)在config包中创建DataSource2Config类,此类用于配置其他普通数据源。DataSource2Config是普通数据源配置类。
2024-08-29 08:12:58
868
原创 MyBatis之XML配置文件(二)
可以把内容首部的某些内容覆盖掉,即忽略,也可以把内容尾部的某些内容覆盖掉,对应的属性是prefixOverrides和suffixOverrides。在上面的示例中,使用trim标签生成insert语句,通过prefix和suffix属性在首尾加上“(”和“)”,同时通过suffixOverrides属性去掉拼接字段时多余的“,”。在上面的示例中,使用了set和if标签,如果某个传入参数不为null,则生成该字段,无须额外处理末尾的逗号,整个update语句更加清晰简洁。这样就避免了手动判断的麻烦。
2024-08-27 08:39:52
854
原创 MyBatis之XML配置文件(一)
MyBatis提供了insert、delete 、select、 update四个标签定义SQL语句,以下简要介绍每个标签的用法。
2024-08-26 17:43:10
1851
原创 MyBatis Generator 插件
使用ORM框架必须保持数据表、POJO实体类、 mapper接口方法和映射文件四者一致,如果数据表发生变化,则需要同时修改另外三个文件,过程非常烦琐,易出错。MyBatis Generator插件是MyBatis提供的自动插件,只需几步就能生成POJO实体类、mapper映射文件和接口文件。Spring Boot支持MyBatis Generator自动生成代码插件。以下的内容演示MyBatis Generator插件的使用。
2024-08-26 08:39:58
433
原创 MyBatis(二)之增、删、查、改
MyBatis是一个持久层框架,主要功能是完成由表映射实体,并通过xml文件或者注解完成Dao接口操作。本文将以学生表为例简述数据表中数据的增加、删除、查询、修改操作。实现前提是集成MyBatis到Spring Boot项目中,具体操作查看前作“数据持久层框架MyBatis”,实验条件为Window s 10 环境下的SpringBoot+MyBatis+MySql。
2024-08-23 16:16:29
359
原创 用Maven开发Spring Boot 项目
在Spring体系中,较早实现MVC框架的有Struts-Spring-Hibernate(SSH)框架和Spring-Spring MVC+MyBatis(SSM)框架,为了进一步在保证功能的前提下优化项目的开发流程,Pivotal公司于2014年4 月发布了Spring Boot 的第一个版本,当下该框架已经升级到了3.2.1版本。Spring Boot框架是一 套开源的后台开发框架, 继承了Spring MVC框架的前辈SSM框架的优秀特性,通过注解大幅减少程序员写配置的工作量。
2024-08-21 11:11:10
1459
5
原创 数据持久层框架MyBatis
MyBatis是一款优秀的数据持久层ORM框架,最早是Apache的一个开源项目,2010年这个项目迁移到Google Code,并且改名为MyBatis,2013年11月又迁移到GitHub。它支持定制化的SQL、存储过程、高级映射,可以使用简单的XML或注解配置和映射原生信息,轻松地将普通的JAVA对象与数据库的表进行关联。具有以下特点:(1)易学易用,没有第三方依赖,(2)封装JDBC操作,减少开发人员工作量(3)SQL和代码解耦,业务逻辑与访问逻辑分离。
2024-08-21 08:31:53
755
原创 WebRTC音视频开发读书笔记(六)
数据通道不仅可以发送文本消息, 还可以发送图片、二进制文件,将其类型binaryType属性设置成arraybuffer类型即可.
2024-08-18 17:18:45
701
原创 WebRTC音视频开发读书笔记(五)
WebRTC既可以收发音频和视频,还可以传输其它数据,如短消息、二进制数据、文本数据等。可以实现文本聊天、文件传输等场景。
2024-08-18 10:10:08
441
原创 WebRTC音视频开发读书笔记(四)
WebRTC中,连接是核心内容,通过RTCPeerConnection接口可以将本地流MediaStream发送至远端,同时也可以远端媒体发送至本地,从而建立对等连接。本地与远端之间进行媒体协商及网络协商成功后,将本地媒体流发送到远端的过程称为连接建立。
2024-08-16 17:59:14
916
原创 WebRTC音视频开发读书笔记(三)
当采集音频或视频时,设备会源源不断地产生媒体数据,这些数据就是媒体流,从Canvas,桌面,摄像头捕获的流为视频流,从麦克风捕获的的流称为音频流,媒体流中混入的可能是多种数据 ,因此WebRTC又将其划分成多个轨道,每个轨道对应于具体的设备。
2024-08-16 12:04:57
740
原创 WebRTC音视频开发读书笔记(二)
视频分辨率是指视频所成图像内包含的像素数量.通常视频在同样大小的屏幕下,分辨率越高,所包含的像素就越多,视频画面就越细腻、越清晰。常见分高清720P: 1280*720超清1080P: 1920*1080。
2024-08-15 16:01:48
1121
原创 WebRTC音视频开发读书笔记(一)
其基本思路是借助一个公网IP服务器,双方都向公网IP服务器发送IP/PORT网络信息包,公网IP服务器向Peer-A发送Peer-B的IP/PORT网络信息包,并且向Peer-B发送Peer-A的网络信息包。通信双方要了解对方的网络情况,找到一条通信链路,需要做以下二个步骤,一是获取本地的外网地址映射,二 是通过信令服务器交换网络信息。信令主要用来转发会话双方的媒体信息和网络信息。信令服务器:公网IP服务器,转发彼此的媒体信息和网络信息,还可以有其它功能,如房间管理、用户列表、用户进入,用户退出等。
2024-08-15 13:40:59
1714
原创 React之购物车
购物车是电商网站一个重要功能,此文使用React组件方式设计购物车组件,可根据状态变量showCart 灵活切换显示和隐藏购物车,当购物车商品为空时,显示空购物车,如下所示:否则显示商品信息,并计算各商品总价和购物车各商品总价和,如下所示:整体上设计为两个组件,一个空购物车组件EmptyCart, 主要功能是显示购物车图片和提示信息“购物车为空,快去添加商品吧”。另一外为购物车组件Cart ,,主要负责不为空时购物车显示和处理逻辑,此购物车有惟下几个属性: selectProducts :
2024-08-12 16:11:16
742
原创 React之组件的使用
Vue、React和Angular是三个流行的前端框架,采用组件化的开发方式。支持虚拟DOM(Virtual DOM)技术,有丰富的生态系统、大量的插件和工具可以使用。Vue的语法是传统的HTML和JavaScript,React使用JSX语法,Angular使用了TypeScript。Vue和React使用的是响应式数据绑定机制,即数据变化会自动更新视图,Angular使用的是双向数据绑定机制,即视图和数据之间可以互相同步变化。Vue和React是轻量级的框架,只关注视图层;
2024-08-11 15:00:50
643
原创 微信小程序之复选框
xcxc微信程序中,复选框(Checkbox)是一种常用的表单元素,主要应用在问卷调查、报名表单、页面设置、商品筛选、订阅服务等工作场景中,具有以的特点和作用。
2024-08-02 11:07:26
761
原创 微信小程序之单选框
微信小程序中的单选框(Radio)是一个常用的输入组件,用于在多个选项中进行选择。常见的应用场景有性别选择、选项过滤、问卷调查等。本文将介绍小程序中单选框的特点和作用及相应示例。
2024-08-01 21:41:04
1365
原创 微信小程序之用户登录
自定义登录状态是指由开发者自由决定如何维持用户的登录状态,常用的做法是,在开发者服务器中为登录成功用户生成一个token,然后通过验证token的有效性来识别用户的登录状态。此文的用户登录功能设计,登录成功时需要保存openid和session_key,然后生成一个 token响应给微信小程序,微信小程序下次请求时,需要携带token,当开发者服务器收到请求后,使用请求的token查询对应用户的openid和session_key,查询成功则已登录,否则未登录。
2024-07-29 12:03:59
1136
2
原创 微信小程序之调查问卷
此数据主要为name,gender,skills,opinion等数据,其中gender为性别数据,skill为技能数据,opinion为主观意见数据。使用this.setData()更新数据时,则输入框中显示的值会被更新,但用户在页面中修改了输入框里的值 ,htis.data.value值不会改变。小程序界面采用flex流式布局的column方式,从上至下分别为姓名,性别,专业技能,意见,按钮等内容。获取服务器端的数据,成功则 this.setData(res.data)设置数据,失败则显示提示信息。
2024-07-26 21:12:43
738
原创 微信小程序之计算器
data-*是微信小程序的自定义属性,由data-前缀加上自定义的属性名,自定义属性值表示要传递的数据 ,在事件处理函数中通过targert或currentTarget对象的datasett属性获取数据。
2024-07-25 21:27:06
1693
原创 开源项目面临的机遇与挑战
随着科技和经济环境变化,开源项目也悄然地联动变化,本文将从开源项目的现状、风险、A1的影响、趋势、应对五个方面,阐述开源项目面临的机遇与挑战。
2024-07-14 11:40:43
1065
原创 莫比乌斯带绘制与部署(python+streamlit+plotly)
u_value=st.sidebar.slider('中心带的值',1,4,4)v_value=st.sidebar.slider('带的宽度值',1,10,2)st.title('莫比乌斯带')st.write("这是一个使用Plotly绘制的莫比乌斯带")其中st.title和st.write用于输出标题和说明# 莫比乌斯带的参数方程。
2024-07-11 09:54:15
1018
原创 基于flask+opencv+sklearn+tensorflow的人脸识别系统(二)
本文是"基于flask+opencv+sklearn+tensorflow人脸识别系统"的续篇,主要说明在线进行人脸识别,主要分为超级链接人脸识别、图片上抟人脸识别、网页摄像人脸识别等内容。
2024-07-08 09:28:43
1114
3
原创 基于flask+opencv+sklearn+tensorflow的人脸识别系统(一)
近年以来,人工智能技术飞速发展,其主要分为鉴别和生成两个方面,其中人脸识别技术是其鉴别技术的重要分支,本文详细讲解使用opencv+sklearn+tensorflow技术,实现人脸识别的学习性项目。
2024-07-03 10:11:49
1271
2
原创 VSCode使用Python虚拟环境进行项目开发
安装python相当于安装一个全局环境,虚拟环境是pythob副本,标准库相同,python3.3以后venv作为标准库嵌入到oython中,在终端中可以使用:python -m venv -h 显示venv工具的用法.
2024-06-26 15:08:15
1171
原创 使用Vite从零开始构建Electron项目
"script" {项目开发成功后,开发者可以通过npm run start 方式启动应用。在根目录的script/dev/下, 创建文件index.js,它是启动开发环境的脚本,它主要完成如下四项工作:(1)启动Vue项目的开发服务。(2)设置环境变量(3)编译主进程代码(4)启动Electron子进程,并加载Vue项目的首页。
2024-06-24 16:44:03
1601
2
原创 Vite+Electronss构建vue3桌面应用
本文介绍使用vite构建Electron项目,使用@vitejs/plugin-vue插件辅助完成vue3桌面应用,主要使用Vite,Vue,Electron,@vitejs/plugin-vue四个模块。
2024-06-21 15:59:14
693
原创 使用Electron读取本地文件
Electron原来叫Atom Shell ,可以用Web技术搭建桌面端程序,以Electron为基础,可以用HTML,CSS和javascriptpt实现程序逻辑和用户桌面,Electron程序一般有主进程和渲染进程,主进程是启动程序的Node脚本,提供对原生的node模块访问。渲染进程是由chromium管理的Web界面。以下的内容介绍从零开始搭建一个读取本地文件的Electron项目。
2024-06-13 16:36:05
1963
原创 使用Vuex实现购物车
使用时,需要将商品列表组件Product.vue和购物车列表组件Cart.vue在App.vue中引入,并在Vuex的store文件夹下的cart.js中定义好商品数据 all_products和已添加到购物车的商品数据selected,然后将该模块放入index.js文件的modules对象中,将数据通过getters导出,将方法通过actions和mutations导出。当进行一些小项目开发时,涉及组件传值时,或者项目非常小,组件间共享状态不多的情况下,此时可以使用简单的store模式或者其它方式。
2024-06-06 10:02:37
593
原创 我所理解Vuex状态管理
Vuex是一个专供Vue应用程序开发的状态管理模式,采用集中式存储管理应用的所有组件的状态,并以相应的规则保证以一种可预测的方式发生变化。它是一个存放多个组件共用的数据的一个容器,存放的数据是响应式,即存放数据发生变化,各个组件都会自动更新。每一个vuex应用的核心就是store,store基本上就是一个容器,它包含着应用中大部分的状态,它的状态存储是响应式,当组件从store中读取状态时,若 store中状态变化,则相应组件会自动更新。不能直接改变store中状态,唯一途径就是显式提交mutation。
2024-06-04 15:16:30
1007
原创 我所理解的VUE路由管理
WEB的开发与应用可以分为单页面应用(SPA SinglePage Application)和多页面应用(MPA MultiPage Application),多页面应用是传统的web应用程序,每个页面都是独立的HTML文件,每次页面刷新都会加载整个页面。单页面应用基于现代web技术,它使用一个javascript在一个单独的页面上构建整个应用程序,实现局部刷新、数据异步加载和响应式布局等特性。将路由映射到组件中。path: '/',},//创建路由实例,把定义的路由挂载到路由实例中})
2024-05-23 15:58:48
857
2
原创 基于JWT验证的前后端实现
本文主要介绍了使用express 作为服务器,使用jsonwebtoken插件实现jwt的应用。前后端采用restful方式传递数据,
2024-05-09 16:37:13
205
2
基于flask+opencv+sklearn+tensorflow的人脸识别系统
2024-07-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人