• springboot+vue实现websocket配置过程解析

    1.引入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-websocket</artifactId> <version>1.3.5.RELEASE</version> </dependency> 2.配置ServerEndpointExporter @Configuration

    2026-02-27
  • JSON中optString和getString方法的区别

    optString方法会在对应的key中的值不存在的时候返回一个空字符串,但是getString会抛一个JSONException . /** * Returns the value mapped by {@code name} if it exists, coercing it if * necessary, or throws if no such mapping exists. * * @throws JSONException if no such mapping exists. */

    2026-02-27
  • python实现提取COCO,VOC数据集中特定的类

    1.python提取COCO数据集中特定的类 安装pycocotools github地址:https://github.com/philferriere/cocoapi pip install git+https://github.com/philferriere/cocoapi.git#subdirectory=PythonAPI 提取特定的类别如下: from pycocotools.coco import COCO import os import shutil from tqdm im

    2026-02-27
  • Java正则之贪婪匹配、惰性匹配

    贪婪量词: 先看整个字符串是不是一个匹配.如果没有发现匹配,它去掉最后字符串中的最后一个字符,并再次尝试.如果还是没有发现匹配,那么    再次去掉最后一个字符串,这个过程会一直重复直到发现一个匹配或者字符串不剩任何字符.简单量词都是贪婪量词. 惰性量词: 先看字符串中的第一个字母是不是一个匹配,如果单独着一个字符还不够,就读入下一个字符,组成两个字符的字符串.如果还没有发现匹配,惰性量词继续从字符串中添加字符直到发现一个匹配或者整个字符串都检查过也没有匹配.惰性量词和贪婪量词的工作方式恰好相反

    2026-02-27
  • 跟老齐学Python之赋值,简单也不简单

    变量命名 在<初识永远强大的函数>一文中,有一节专门讨论"取名字的学问",就是有关变量名称的问题,本温故而知新的原则,这里要复习: 名称格式:(下划线或者字母)+(任意数目的字母,数字或下划线) 注意:  1.区分大小写  2.禁止使用保留字  3.遵守通常习惯  •以单一下划线开头的变量名(_X)不会被from module import *语句导入的.  •前后有下划线的变量名(X)是系统定义的变量名,对解释器有特殊意义.  •以两个下划线开头,但结尾没有两个下划线的变

    2026-02-27
  • Python socket实现简单聊天室

    本文实例为大家分享了Python socket实现简单聊天室的具体代码,供大家参考,具体内容如下 服务端使用了select模块,实现了对多个socket的监控.客户端由于select在Windows下只能对socket使用,所以使用了多线程来实现对客户端输入和socket连接的同时监控.注意这里的socket设置为了非阻塞.这样就实现了在一个线程中同时进行socket的接收和发送. 服务器代码: # -*- coding: utf-8 -*- import socket,select conne

    2026-02-27
  • setTimeout函数的神奇使用

    [写在前面的胡言乱语] 自从大三开始实习之后,就没有写博客了,虽然学了很多东西,但是如果没有进行总结和分享,学的东西就很容易忘记,而且不进行分享,就不会手动去敲代码,这样对知识的理解就不够透彻. 现在毕业半年多了,最近学习了<JavaScript高级程序设计>这本书,受益匪浅,看了才知道虽然自己写了那么多JS,但是对JS的理解最多就只是中下水平. 现在看第二遍,边看边敲代码,边分享,希望看到这篇文章的你,能有所收获. [这是正文] <JavaScript高级程序设计>这本书里面,介

    2026-02-27
  • sql查询给表起别名要点小结(涉及嵌套查询)

    目录 可以通过空格或者as给表起别名 简单查询中使用别名 复杂查询中使用别名 总结 可以通过空格或者as给表起别名 但是注意如果操作的数据库是Oracle的话,只能使用空格,as不符合Oracle的语法. 举个栗子 简单查询中使用别名 select * from student s where s.id = '10'; 在简单的查询中使用别名,一般没有特别需要注意的地方,要做的操作少 复杂查询中使用别名 题目概要:有三个表格,student(sno,sname,ssex,sbirthday,cl

    2026-02-27
  • Python字典实现简单的三级菜单(实例讲解)

    如下所示: data = { "北京":{ "昌平":{"沙河":["oldboy","test"],"天通苑":["链接地产","我爱我家"]}, "朝阳":{"望京":["奔驰","陌陌"],"国贸":["CICC",&quo

    2026-02-27
  • 在PHP3中实现SESSION的功能(三)

    示例程序:test_session.php3 <?php require( "session.inc.php3"); require("cookie.inc.php3"); ?> <?php session_checkid( 20 ); //20分钟后session失效 //下面你需要设置mysql的连接参数 mysql_connect('localhost','user','pass') or Die("can't connect to

    2026-02-27
  • Java泛型常见面试题(面试必问)

    1.泛型的基础概念 1.1 为什么需要泛型 List list = new ArrayList();//默认类型是Object list.add("A123"); list.add("B234"); list.add("C345"); System.out.println(list); for(int i=0;i<list.size();i++){ //若要将list中的元素赋给String变量,需要进行类型转换,不然会报Incompati

    2026-02-27
  • js判断输入是否中文,数字,身份证等等js函数集合第1/3页

    * 判断指定的内容是否为空,若为空则弹出 警告框 */ function isEmpty(theValue, strMsg){ if(theValue==""){ alert(strMsg+"不能为空!"); return true; } return false; } /* 中文判断函数,允许生僻字用英文"*"代替 返回true表示是符合条件,返回false表示不符合 */ function isChinese(str){ var badCha

    2026-02-27
  • win10 oracle11g彻底删除并重装教程

    卸载oracle11g步骤: 1.首先关掉所有oracle的相关服务,然后找到oracle的卸载程序Universal Installer: 然后点击卸载产品,然后点击展开全部,将主目录以外的所有应用全部卸载掉,然后将点击显示空目录,将主目录删掉. 2.删除注册表: 按Windows徽标键和R键,打开运行窗口,输入regedit,打开注册表,依次展开HKEY_LOCAL_MACHINE\SOFTWARE,找到oracle,删除之.  依次展开HKEY_LOCAL_MACHINE\SYSTEM\C

    2026-02-27
  • C语言字符串旋转问题的深入讲解

    目录 字符串的旋转: 实现旋转字符串: 1.暴力求解法: 2.三步翻转法 判断一个字符串是否由另一个字符串旋转而来 1.暴力求解法: 2.优化算法: 关于用到的函数扩展: 1.assert 2.strcmp 3.strcat 4.strncat 5.strstr 总结 字符串的旋转: ABCD左旋一个字符为BCDA ABCD左旋两个字符为CDAB ABCD右旋一个字符为DABC ABCD右旋两个字符为CDAB 这里只写了左旋,右旋的原理和左旋一样. 实现旋转字符串: 1.暴力求解法: 思路: 假

    2026-02-27
  • Python爬虫基础讲解之scrapy框架

    网络爬虫 网络爬虫是指在互联网上自动爬取网站内容信息的程序,也被称作网络蜘蛛或网络机器人.大型的爬虫程序被广泛应用于搜索引擎.数据挖掘等领域,个人用户或企业也可以利用爬虫收集对自身有价值的数据. 一个网络爬虫程序的基本执行流程可以总结三个过程:请求数据,解析数据,保存数据 数据请求 请求的数据除了普通的HTML之外,还有json数据.字符串数据.图片.视频.音频等. 解析数据 当一个数据下载完成后,对数据中的内容进行分析,并提取出需要的数据,提取到的数据可以以多种形式保存起来,数据的格式有非常多

    2026-02-27
  • IE:巧妙复制主页内容

    有许多人向笔者反映,他们在互联网上搜寻到感兴趣的资料后,想把相关主页的内容复制下来,但有些网站的主页复制不了.只能打印主页,而打印的主页有页眉.页脚,内容和格式编排也不合乎个人的需要. 经认真分析不能复制的主页文本,发现原来是在主页文本中嵌入的JavaScript程序在作怪.当用户对打开的页面进行复制.粘贴的时候,IE浏览器会自动调用Submit事件.该事件执行的是名为"return false"的JavaScript代码.解决该问题的方法是把该事件的JavaScript处理代码去掉即

    2026-02-27
  • PHP数据库操作面向对象的优点

    我们都知道如何从Mysql获取我们需要的行(记录),读取数据,然后存取一些改动.很明显也很直接,在这个过程背后也没有什么拐弯抹角的.然而对于我们使用面对对象的程序设计(OOP)来管理我们数据库中的数据时,这个过程就需要大大改进一下了.这篇文章将对如何设计一个面对对象的方式来管理数据库的记录做一个简单的描述.你的数据当中的所有内部逻辑关系将被封装到一个非常条理的记录对象,这个对象能够提供专门(专一)的确认代码系统,转化以及数据处理.随着Zend Engine2 和PHP5的发布,PHP开发者将会拥

    2026-02-27
  • spring结合struts的代码详解

    Struts调用流程如下图所示. 看到这幅图一下子就能了解了struts的原理.Spring的核心就是IOC容器和AOP,所以我们用spring主要是管理业务对象和事务的管理,所以主要是Model层来让spring管理,这是我们的一种方案. 第一种集成方案在Action中取得beanFactory 还记的在上篇文章中,测试的时候是在单元测试中拿到的BeanFactory,与struts结合就是在Action中取得beanFactory.步骤如下. 1.          建立一个web项目. 2

    2026-02-27
  • 基于Bootstrap使用jQuery实现简单可编辑表格

    editTable.js 提供编辑表格当前行.添加一行.删除当前行的操作,其中可以设置参数,如: operatePos 用于设置放置操作的列,从0开始,-1表示以最后一列作为放置操作的列:(这里的操作包括 编辑当前行.在当前行下添加一行.删除当前行) handleFirst 设置表格的第一行是否作为操作的对象,true为真,false为假: edit.save.cancel.add.confirm.del 分别设置显示操作的操作名,默认显示"编辑"."保存".&qu

    2026-02-27
  • SpringBoot集成内存数据库Sqlite的实践

    目录 目标 为什么 操作步骤 工程截图 运行 效果 完整源代码 目标 在SpringBoot中集成内存数据库Sqlite. 为什么 像H2.hsqldb.derby.sqlite这样的内存数据库,小巧可爱,做小型服务端演示程序,非常好用.最大特点就是不需要你另外安装一个数据库. 操作步骤 1.修改pom.xml文件 <dependency> <groupId>org.xerial</groupId> <artifactId>sqlite-jdbc</a

    2026-02-27
yixingzi wulianji zhihuizuan yunmashang pengyihao