C语言实现密码本小项目
一、引言学C语言有一段时间了,趁着正好做了密码本的小项目,把它分享出来。二、思路与原理密码本,见名知意,就是存放账号密码,起到备忘录作用的本子,将需要备忘的数据通过加密存放在文本文件中,打开的文本文件为加密文本,需要通过软件查看已经存放的数据,提高安全性。(软件设...
2024-01-10YApi 可视化接口管理平台
YApi 是高效、易用、功能强大的 api 管理平台,旨在为开发、产品、测试人员提供更优雅的接口管理服务。可以帮助开发者轻松创建、发布、维护 API,YApi 还为用户提供了优秀的交互体验,开发人员只需利用平台提供的接口数据写入工具以及简单的点击操作就可以实现接口的管理。为 API 开发者设计的...
2024-01-10docker安装Elasticsearch7.6集群并设置密码
Elasticsearch从6.8开始, 允许免费用户使用X-Pack的安全功能, 以前安装es都是裸奔。接下来记录配置安全认证的方法。为了简化物理安装过程,我们将使用docker安装我们的服务。一些基础配置es需要修改linux的一些参数。设置vm.max_map_count=262144sudo vim /etc/sysctl.confvm.max_map_count=262144不重启, 直接生效...
2024-01-10ant-design-vue 时间选择器赋值默认时间的操作
我就废话不多说了,大家还是直接看代码吧~<template> <div> <a-range-picker show-time format="YYYY/MM/DD HH:mm:ss" :value="[this.moment(startTime, dateFormat),this.moment(endTime, dateFormat)]" //关键代码 @change="onChangeTime" ></a-range-picker> </div></template><script>...
2024-01-10Java多线程回调方法实例解析
所谓回调,就是客户程序C调用服务程序S中的某个方法A,然后S又在某个时候反过来调用C中的某个方法B,对于C来说,这个B便叫做回调方法。下面看一个实际例子来理解:本示例设置一个提问者,一个回答者,而回答者需要回答提问者一个很深奥的问题时,这时需要很多时间去查找,提问者又开始做...
2024-01-10Spring MVC深入学习之启动初始化过程
前言虽然从学java的第一个程序――helloworld至今,已经有好几个年头了。当时自己找资料,看视频,学习了java的输入输出流,多线程,网络编程等等, 而三大框架(Struts、Hibernate、Spring)基本只是开了个头就出来实习了,尤其对于Spring更是没有进行系统的学习, 虽然在实习的时候通过看项目,基本明...
2024-01-10Spring Boot 集成MyBatis 教程详解
Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。在集成MyBatis...
2024-01-10java web中使用cookie记住用户的账号和密码
毕业设计中需要用到记住账号密码的功能,网上搜到了一个解决方案,自己稍加改造就是下面的方法。首先是登录的页面,当用户勾选记住密码,传递给controller(我用的SSM框架),后台设置cookie的值,然后下次登录的时候就不用再次输入账号和密码了。login.jsp的代码:<%@page import="org.apache.commons.lang.String...
2024-01-10Java中的装箱和拆箱深入理解
自动装箱和拆箱问题是Java中一个老生常谈的问题了,今天我们就来一些看一下装箱和拆箱中的若干问题。本文先讲述装箱和拆箱最基本的东西,再来看一下面试笔试中经常遇到的与装箱、拆箱相关的问题。一.什么是装箱?什么是拆箱?在前面的文章中提到,Java为每种基本数据类型都提供了对应的包...
2024-01-10详解Java中synchronized关键字的死锁和内存占用问题
先看一段synchronized 的详解:synchronized 是 java语言的关键字,当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码。一、当两个并发线程访问同一个对象object中的这个synchronized(this)同步代码块时,一个时间内只能有一个线程得到执行。另一个线程必须等待...
2024-01-10Spring加载properties文件的方法
在项目中如果有些参数经常需要修改,或者后期可能需要修改,那我们最好把这些参数放到properties文件中,源代码中读取properties里面的配置,这样后期只需要改动properties文件即可,不需要修改源代码,这样更加方便。在Spring中也可以这么做,而且Spring有两种加载properties文件的方式:基于xml方式和基...
2024-01-10java开发微信公众号支付
最近做了微信公众号支付的开发,由于是第一次做也摸索了几天的时间,也只是达到了实现功能的水平,并没有太多考虑到性能问题,所以这篇文章比较适合初学者。 微信公众号支付的总体其实很简单,大致就分为三步。第一步需要获取用户授权;第二步调用统一下单接口获取预支付id;第三步H5...
2024-01-10深入理解Java遗传算法
关于遗传算法的详细原理以及具体的定义这里就不多介绍,想了解的可以自行百度,下面就简单介绍下自己对遗传算法的理解,本文对基因的编码采用二进制规则。算法思想: 遗传算法参照达尔文的进化论,认为物种都是向好的方向去发展(适者生存),因此可以认为到足够的代数之后,得...
2024-01-10javaweb实战之商城项目开发(二)
上一篇《javaweb实战之商城项目开发(一)》已经把实体类,分页工具创建好了,这一篇利用mybatis创建DAO层.另外mybatis的api文档可以参考一.mybatis的使用1. 引入架包这里引入mybatis和mysql的架包到lib中2. 编写Config.xml配置数据库环境先贴代码,然后逐个解释<?xml version="1.0" encoding="utf-8" ?><!DOCTYPE configuration...
2024-01-10尝试利用Cython将Python项目转化为单个.so
作者:张健 公众号:平安科技银河安全实验室Cython是一种方便开发者为Python写C extensions的语言,降低了开发者写C拓展的难度;Cython module可以是.py或者.pyx文件;编译Cython module的主要过程:1. Cython compiler将.py/.pyx文件编译为C/C++文件; 2. C compiler再将C/C++编译为.so(windows 为.pyd);通过Cython将.py转化为动...
2024-01-10mongoDB无法启动
mongoDB一直无法启动一直显示waiting for connections on port 27017我等了,等了超长的时间!请问是什么原因造成的呀..回答:这是服务已经起来了,等待你的客户端连接,连接到mongod服务的.。。。。。。再说你可以用在打开一个cmd用mongo连接试试啊,还等。。。。。。。。...
2024-01-10高并发下Apache+mongodb的php驱动不稳定
我的环境 : Apache/2.2.21 (Win32) PHP/5.4.3测试代码 :<?php$db=new Mongo("mongodb://localhost:27017");$c=$db->selectDB("npm")->selectCollection("user");$user = $c->findOne(array('userName' => 'admin','passWord'=>'admin'));if($user){echo var_dump($user);}echo var_du...
2024-01-10关于std:cin的一个细节问题
书上看到这个示例:#include <iostream>#include <string>using namespace std;int main(){ string buf; while (cin >> buf && !buf.empty()) cout << 1;}我想问!buf.empty()有必要吗?,据我的理解,cin>>buf不接受空白字符,那就肯定不是空字符串了,所以while(cin>>buf)就行了.回答:][1]其实不用加的 默认不接收空格换...
2024-01-10遍历二叉树时输出顺序出错先序遍历没问题但中序遍历和后序遍历出错
include<stdio.h>include<malloc.h>typedef struct BiTNode{int data;struct BiTNode *lchild,*rchild;}BiTNode,*BiTree;void CreateBiTree(BiTNode *&root);void PreorderShow(BiTNode *root);void InorderShow(BiTNode *root);void PostorderShow(BiTNode *root); int main(...
2024-01-10输入一串数字,反向输出其结果。
#include <stdio.h>void output(int n){ printf("%d", n%10); n/10 ? output(n/10) : 0; } int main(int argc, char* argv[]) { int n; scanf("%d", &n); output(n); return 0; } //对这个递归算法不是很理解//大牛带带我 |^_^|回答:这个递归程序在开始时先打印了个位数 `printf("%d",n%10)会...
2024-01-10