- armbian 安装docker
itmanll
docker容器运维
aptlist--installed|grepdocker查看已安装的docker,用aptremove程序名卸载apt-getremovedocker-ce-cli卸载后在安装curl-fsSLhttps://get.docker.com|bash-sdocker–mirrorAliyundockerdocker-vDockerversion25.0.2,build29cf629
- docker应用
疯癫的小珍呐
docker容器运维
打包传输1.将镜像打包#查看帮助文件docker--help#找到save,可以将镜像保存为一个tar包dockersave--help#查看save使用方式#查看现有的镜像dockerimages#dockersave--outputcentos.tarcentos:latestls...centos.tar...可以将tar发送给其他用户,也可以作为备份删除镜像[root@docker~]#d
- docker3
疯癫的小珍呐
linux
数据持久化线上考试系统部署1.部署前端服务器1.#将资源上传到服务器scp-rdist/
[email protected]:~2.#创建基础容器,在服务器上systemctlstartdocker.servicedockerpullcentosdockerrun-it--namec0centos:latest/bin/bash3.#在容器中修改yum源rm-rf/etc/yum.repos.d/*
- docker4
疯癫的小珍呐
linux
1、根据镜像创建容器docker-it--namec0centos:latest/bin/bash安装应用ctrl+p+qdockerexport-ocentos.tarc0dockerimport-m"山不像我走来,我便向山走去"centos.tarcentos:httpddockercommitc0centos:v2一、dockerfile应用在Dockerfile中定义所需要执行的指令,使用
- 实训day37(8.27)
Tʀᴜsᴛ⁴¹⁷487
linux
一、dockerfile应用[root@docker~]#mkdirhttp0[root@docker~]#cdhttp0/[root@dockerhttp0]#vimabc.sh[root@dockerhttp0]#lsabc.sh[root@dockerhttp0]#vimabc.sh#!/bin/bashrm-rf/run/*httpd*exec/sbin/httpd-DFOREGROUND
- Openstack 与 Ceph集群搭建(下): Openstack部署
范枝洲
系统运维openstackceph
文章目录文章参考部署节点准备1.修改Host文件与hostname名称2.安装NTP软件3.网卡配置信息4.开启Docker共享挂载5.安装python虚拟环境6.安装kolla-ansible7.加载AnsiblegalaxyrequirementsOpenstack安装前预配置1.配置密码2.配置multinode文件3.修改全局配置文件Openstack正式安装1.启动bootstrap-s
- Ubuntu 16.04下Firefox版本更新
天蓝蓝23528
ubuntufirefox腾讯云
在Ubuntu16.04系统下更新Firefox浏览器到最新版本是一个相对直接但需要注意细节的过程。由于Ubuntu16.04是一个较旧的操作系统版本,其默认的软件包管理器apt可能无法提供最新版本的Firefox。因此,用户通常需要手动下载Firefox的最新版本并进行安装。以下是一个详细的步骤指南,帮助您在Ubuntu16.04系统下更新Firefox浏览器。一、准备工作备份当前Firefox
- Ubuntu 22.04上安装微信的几种方法
我的运维人生
ubuntu微信wechat安装消息
在Ubuntu22.04上安装微信,虽然微信官方并未直接提供Linux版本的客户端,但用户可以通过多种第三方工具或方法来实现。以下是一些常见的安装方法:一、使用Snap安装Snap是Ubuntu上的一种软件打包方式,它允许应用程序在不同的Linux发行版上轻松安装和运行。对于大多数用户来说,这是安装微信最简单快捷的方式。确认Snap已安装:Ubuntu22.04通常已经预装了Snap,但你可以通过
- Docker微服务实战Demo
ctrlcvKing
dockerdocker微服务容器
通过IDEA新建一个微服务模块通过dockerfile发布微服务部署到docker容器通过IDEA新建一个微服务模块新建一个springboot项目modulemvnpackage打成一个jar包通过dockerfile发布微服务部署到docker容器编写dockerfile构建镜像运行容器访问测试编写dockerfile##继承自镜像java8FROMjava:8##作者MAINTAINERch
- 初识liunx系统
这么牛逼的代码我写的
c语言
进行嵌入式开发,依赖的是linux(Linuxisnotunix)系统,主要以终端指令为主linux也有图形化界面,由于嵌入式编程一般只将程序移植到开发板中,无需图形化界课程前期,需要一直使用linux系统,做到从windows向linux的转换放大终端ctrlshift+缩小终端ctrl-清屏ctrlL历史命令上下箭头用户名:hqwhoami主机名:Ubuntuhostname:$中间位置当前路
- ubuntu20.04安装、换源、安装软件包出现问题解决全记录(持续更新,实践可行)
IOT.FIVE.NO.1
软件安装ubuntulinux运维
我的环境:win10virtualbox7.0一、安装问题:1.安装时按钮下一步按钮不在屏幕内:解决办法:点击屏幕窗口同时按win键拖动,这样就可以把下一步按钮拖动出来。或者按tab切换到下一步按钮再enter。2.安装时在安装语言包和安装软件包出现长时间等待。解决办法:点击标题,然后点击右侧skip跳过。或者断网进入安装,选择最小安装。3.安装时全英文界面解决办法:退回最初始界面,左边向下选择到
- k8s上的clickhouse集群部署并创建分布式表(附详细参数说明和参考链接)
KirutoCode
开发技能
k8s上的clickhouse集群部署并创建分布式表制作docker镜像创建configmap创建clickhouseservicepod创建clickhouseclientpod创建Service创建分布式表部署总体参考:https://blog.csdn.net/tototuzuoquan/article/details/111305125clickhouse的配置文件相关解读:https:/
- Docker打包Python工程
Dockerdockerpython容器
文章目录Docker打包python项目1各个目录文件作用1.1Dockerfile示例1.2requirements.txt示例2创建镜像3运行镜像4保存镜像4.1删除镜像4.2加载打包好的tar包问题解决1.提示`Use'dockerscan'torunSnyktestsagainstimagestofindvulnerabilitiesandlearnhowtofixthem`2.Windo
- python 打包docker 加入本地依赖
摩戈
pythondocker
生成requirements.txt文件pipfreeze>requirements.txt创建package_modules文件夹下载依赖到指定目录下pipinstall-rrequirements.txt-t.\package_modules\DockerfileFROMpython:3.9.11-alpine3.14#添加代码到容器内指定目录ADD./bin/code/bin#添加依赖包AD
- docker 和conda 常用命令
风行傲天
dockerconda容器
docker命令#查看docker是否启动dockerinfo#查询所有镜像dockerimages#搜索镜像dockersearch镜像名如:dockersearchredis#拉取镜像dockerpull镜像名[:版本号]dockerpullredis或者dockerpullredis:latest#删除镜像dockerrmi'镜像名称'#docker运行dockerrun--namenaco
- Python项目打包成docker容器【docker build构建docker镜像】
巡检
python原创转载pythondocker开发语言源码软件容器
将本地Python项目打包构建docker镜像,并在docker中运行【流程1-8】DockerCompose(Docker编配)附录:其他常用docker命令首先,完成本地Python的开发、测试;将项目依赖库(即本地python环境)进行导出,使用如下命令:>>pipfreeze>requirements.txt执行完成后会生成一个叫requirements的TXT文件2.1requireme
- docker: Error response from daemon: could not select device driver with capabilities: [[gpu]]问题记录解决
爱科技Ai
docker容器运维
具体参考:docker:Errorresponsefromdaemon:couldnotselectdevicedriverwithcapabilities:[[gpu]]问题记录解决_奶茶不加冰的博客-CSDN博客docker:Errorresponsefromdaemon:couldnotselectdevicedriver““withcapabilities:[[gpu]]问题解决_一个菜鸟
- 初识Mybatis框架
澄岚明雪
mybatis
什么是框架框架就是对技术的封装,将基础的技术进行封装,让程序员可以快速的使用,提高开发效率JAVA后端框架mybatis对jdbc进行封装spring对整个java后端架构进行管理的springweb对web层(servlet)进行封装springboot对spring框架的搭建进行封装Linux操作系统mysqlredisdocker开发好的项目部署到linux环境mybatis背景介绍:myb
- 【Linux 从基础到进阶】 SSD与HDD存储优化
爱技术的小伙子
Linux从基础到进阶linux运维服务器
SSD与HDD存储优化引言在现代计算机系统中,存储性能对整体系统性能的影响至关重要。固态硬盘(SSD)和传统机械硬盘(HDD)是两种常见的存储设备,它们在速度、寿命和价格上各有优劣。为了充分发挥SSD和HDD的性能,合理的优化策略是必不可少的。本文将介绍如何在CentOS和Ubuntu系统中对SSD和HDD进行优化,以提高存储效率和延长设备寿命。1.SSD与HDD的区别1.1SSD(固态硬盘)速度
- Linux操作系统-12-ufw
Zkaisen
安全与运维linux运维服务器
在Ubuntu20.04上使用UFW来设置防火墙只有root或者其他有sudo权限的用户可以管理系统防火墙。推荐以sudo用户来运行和管理ufw。一、查看ufw状态sudoufwstatussudoufwstatusverbose默认情况下,ufw阻止所有进来的连接,并允许所有出去的连接。这就意味着任何人无法访问服务器,除非开放服务的端口。策略文件保存位置:/etc/default/ufw二、应用
- trt | torch2trt的使用方式
Mopes__
分享TensorRTtorch2trt
一、安装1.安装tensorrtpython接口下载trt包.tar.gzhttps://developer.nvidia.com/nvidia-tensorrt-5x-download解压tarxvfTensorRT-6.0.1.5.Ubuntu-18.04.x86_64-gnu.cuda-10.1.cudnn7.6.tar.gz安装trtpython接口cdpythonpipinstallte
- Mac brew安装docker配置加速文件
垣宇
macosdocker容器运维
HomeBrew安装科大源安装$/bin/bash-c"$(curl-fsSLhttps://gitee.com/ineo6/homebrew-install/raw/master/install.sh)"卸载$/bin/bash-c"$(curl-fsSLhttps://gitee.com/ineo6/homebrew-install/raw/master/uninstall.sh)"相关命令安
- 使用Dockerfile创建应用镜像及私有仓库
琉璃一梦
云计算学习eureka云原生docker服务器linux运维
目录1.Dockerfile介绍2.Dockerfile应用1.创建目录2.跳转目录3.编辑启动脚本4.编辑index.html文件5.编辑Dockerfile6.创建镜像7.查看镜像8.创建容器测试9.挂载其他项目测试3.私有仓库1.安装仓库镜像---仓库注册器2.创建目录3.启动容器、映射端口、挂载目录4.访问仓库5.配置pull和push,修改daemon.json文件6.重启docker服
- ubuntu20.04 ros安装
蓝羽飞鸟
ROSubuntu人工智能ros
conda安装参考此文,最后问是否需要运行condainit时,选yes。不然就要自己运行condainit如果已经装了anaconda,为了防止python版本冲突,要作以下修改在~/.bashrc的condasetup下面加上condadeactivate,如下unset__conda_setupcondadeactivate#添加#/etc/apt/sources.list.d/ros-la
- Dockerfile应用、私有仓库
墨染默笙
docker
通过dockerfile创建⼀个在启动容器时,就可以启动httpd服务的镜像步骤1.创建⼀个⽬录,⽤于存储Dockerfile所使⽤的⽂件1.在此⽬录中创建Dockerfile⽂件,以及镜像制作所使⽤的⽂件1.使⽤dockerbuild创建镜像1.使⽤创建的镜像启动容器(验证)思考1.基础镜像1.yum-yinstallhttpd1.使⽤脚本启动服务(httpd-kstart)1.应该将httpd
- 云计算实训35——镜像的迁移、镜像的创建、使用docker查看ip、端口映射、容器持久化
麻辣鱿鱼须783
云计算dockertcp/ip
一、镜像的迁移打包镜像dockersave-o文件名称镜像名:标签#查看帮助命令[root@docker~]#docker--help#查看save打包用法[root@docker~]#dockersave--help#查看原有镜像[root@docker~]#dockerimages#将镜像打包[root@docker~]#dockersave-ocentos.tarcentos:latest#
- 云计算实训36——mysql镜像管理、同步容器和宿主机时间、在容器外执行容器内命令、容器的ip地址不稳定问题、基础镜像的制作、镜像应用
麻辣鱿鱼须783
云计算mysqltcp/ip
一、线上考试系统的数据虚拟化技术部署1.部署前段服务器步骤一:将资源上传到服务器将dist.zip上传给服务器下载unzip的包yum-yinstallunzip解压unzipdist.zip步骤二:创建基础容器在服务器上启动服务systemctlstartdocker.service拉取镜像dockerpullcentosdockerrun-it--namec0centos:latest/bin
- docker常见指令——镜像指令and容器指令
麻辣鱿鱼须783
eureka云原生
docker镜像指令查看镜像dockerimages搜索镜像dockersearch镜像名上传镜像dockerpull镜像名或dockerpull镜像名:tag注:不加:tag表示最新版本,加:tag表示指定版本运行镜像dockerrun镜像名保存镜像dockersave镜像名/镜像id-o要保存的路径删除镜像删除一个dockerrmi-f镜像名/镜像id删除多个dockerrmi-f镜像名/镜像
- 【运维之服务器】如何查看Ubuntu版本及常见版本介绍
程序者王大川
运维运维服务器ubuntu
一、引言Ubuntu是一个基于Debian构建的免费、开源的操作系统,广泛应用于个人电脑、服务器以及云平台。了解Ubuntu版本对于系统维护、软件安装和更新都具有重要意义。本文将带你了解Ubuntu版本的概念,教你如何查看Ubuntu版本,并介绍一些常见的Ubuntu版本。二、什么是Ubuntu版本Ubuntu版本指的是Ubuntu操作系统的不同发行版。每个版本都有其独特的特点、更新周期和官方支持
- MongoDB 单机和集群环境部署教程
闲人编程
大数据mongodb数据库pythonJava集群部署
目录一、MongoDB单机环境部署1.环境准备2.安装MongoDB2.1在Ubuntu上安装MongoDB2.2在CentOS上安装MongoDB2.3启动MongoDB服务2.4验证MongoDB安装2.5MongoDB基本安全设置3.单机部署注意事项二、MongoDB集群环境部署1.环境准备2.MongoDBReplicaSet部署2.1配置每个节点的MongoDB实例2.2配置Replic
- SAX解析xml文件
小猪猪08
xml
1.创建SAXParserFactory实例
2.通过SAXParserFactory对象获取SAXParser实例
3.创建一个类SAXParserHander继续DefaultHandler,并且实例化这个类
4.SAXParser实例的parse来获取文件
public static void main(String[] args) {
//
- 为什么mysql里的ibdata1文件不断的增长?
brotherlamp
linuxlinux运维linux资料linux视频linux运维自学
我们在 Percona 支持栏目经常收到关于 MySQL 的 ibdata1 文件的这个问题。
当监控服务器发送一个关于 MySQL 服务器存储的报警时,恐慌就开始了 —— 就是说磁盘快要满了。
一番调查后你意识到大多数地盘空间被 InnoDB 的共享表空间 ibdata1 使用。而你已经启用了 innodbfileper_table,所以问题是:
ibdata1存了什么?
当你启用了 i
- Quartz-quartz.properties配置
eksliang
quartz
其实Quartz JAR文件的org.quartz包下就包含了一个quartz.properties属性配置文件并提供了默认设置。如果需要调整默认配置,可以在类路径下建立一个新的quartz.properties,它将自动被Quartz加载并覆盖默认的设置。
下面是这些默认值的解释
#-----集群的配置
org.quartz.scheduler.instanceName =
- informatica session的使用
18289753290
workflowsessionlogInformatica
如果希望workflow存储最近20次的log,在session里的Config Object设置,log options做配置,save session log :sessions run ;savesessio log for these runs:20
session下面的source 里面有个tracing 
- Scrapy抓取网页时出现CRC check failed 0x471e6e9a != 0x7c07b839L的错误
酷的飞上天空
scrapy
Scrapy版本0.14.4
出现问题现象:
ERROR: Error downloading <GET http://xxxxx CRC check failed
解决方法
1.设置网络请求时的header中的属性'Accept-Encoding': '*;q=0'
明确表示不支持任何形式的压缩格式,避免程序的解压
- java Swing小集锦
永夜-极光
java swing
1.关闭窗体弹出确认对话框
1.1 this.setDefaultCloseOperation (JFrame.DO_NOTHING_ON_CLOSE);
1.2
this.addWindowListener (
new WindowAdapter () {
public void windo
- 强制删除.svn文件夹
随便小屋
java
在windows上,从别处复制的项目中可能带有.svn文件夹,手动删除太麻烦,并且每个文件夹下都有。所以写了个程序进行删除。因为.svn文件夹在windows上是只读的,所以用File中的delete()和deleteOnExist()方法都不能将其删除,所以只能采用windows命令方式进行删除
- GET和POST有什么区别?及为什么网上的多数答案都是错的。
aijuans
get post
如果有人问你,GET和POST,有什么区别?你会如何回答? 我的经历
前几天有人问我这个问题。我说GET是用于获取数据的,POST,一般用于将数据发给服务器之用。
这个答案好像并不是他想要的。于是他继续追问有没有别的区别?我说这就是个名字而已,如果服务器支持,他完全可以把G
- 谈谈新浪微博背后的那些算法
aoyouzi
谈谈新浪微博背后的那些算法
本文对微博中常见的问题的对应算法进行了简单的介绍,在实际应用中的算法比介绍的要复杂的多。当然,本文覆盖的主题并不全,比如好友推荐、热点跟踪等就没有涉及到。但古人云“窥一斑而见全豹”,希望本文的介绍能帮助大家更好的理解微博这样的社交网络应用。
微博是一个很多人都在用的社交应用。天天刷微博的人每天都会进行着这样几个操作:原创、转发、回复、阅读、关注、@等。其中,前四个是针对短博文,最后的关注和@则针
- Connection reset 连接被重置的解决方法
百合不是茶
java字符流连接被重置
流是java的核心部分,,昨天在做android服务器连接服务器的时候出了问题,就将代码放到java中执行,结果还是一样连接被重置
被重置的代码如下;
客户端代码;
package 通信软件服务器;
import java.io.BufferedWriter;
import java.io.OutputStream;
import java.io.O
- web.xml配置详解之filter
bijian1013
javaweb.xmlfilter
一.定义
<filter>
<filter-name>encodingfilter</filter-name>
<filter-class>com.my.app.EncodingFilter</filter-class>
<init-param>
<param-name>encoding<
- Heritrix
Bill_chen
多线程xml算法制造配置管理
作为纯Java语言开发的、功能强大的网络爬虫Heritrix,其功能极其强大,且扩展性良好,深受热爱搜索技术的盆友们的喜爱,但它配置较为复杂,且源码不好理解,最近又使劲看了下,结合自己的学习和理解,跟大家分享Heritrix的点点滴滴。
Heritrix的下载(http://sourceforge.net/projects/archive-crawler/)安装、配置,就不罗嗦了,可以自己找找资
- 【Zookeeper】FAQ
bit1129
zookeeper
1.脱离IDE,运行简单的Java客户端程序
#ZkClient是简单的Zookeeper~$ java -cp "./:zookeeper-3.4.6.jar:./lib/*" ZKClient
1. Zookeeper是的Watcher回调是同步操作,需要添加异步处理的代码
2. 如果Zookeeper集群跨越多个机房,那么Leader/
- The user specified as a definer ('aaa'@'localhost') does not exist
白糖_
localhost
今天遇到一个客户BUG,当前的jdbc连接用户是root,然后部分删除操作都会报下面这个错误:The user specified as a definer ('aaa'@'localhost') does not exist
最后找原因发现删除操作做了触发器,而触发器里面有这样一句
/*!50017 DEFINER = ''aaa@'localhost' */
原来最初
- javascript中showModelDialog刷新父页面
bozch
JavaScript刷新父页面showModalDialog
在页面中使用showModalDialog打开模式子页面窗口的时候,如果想在子页面中操作父页面中的某个节点,可以通过如下的进行:
window.showModalDialog('url',self,‘status...’); // 首先中间参数使用self
在子页面使用w
- 编程之美-买书折扣
bylijinnan
编程之美
import java.util.Arrays;
public class BookDiscount {
/**编程之美 买书折扣
书上的贪心算法的分析很有意思,我看了半天看不懂,结果作者说,贪心算法在这个问题上是不适用的。。
下面用动态规划实现。
哈利波特这本书一共有五卷,每卷都是8欧元,如果读者一次购买不同的两卷可扣除5%的折扣,三卷10%,四卷20%,五卷
- 关于struts2.3.4项目跨站执行脚本以及远程执行漏洞修复概要
chenbowen00
strutsWEB安全
因为近期负责的几个银行系统软件,需要交付客户,因此客户专门请了安全公司对系统进行了安全评测,结果发现了诸如跨站执行脚本,远程执行漏洞以及弱口令等问题。
下面记录下本次解决的过程以便后续
1、首先从最简单的开始处理,服务器的弱口令问题,首先根据安全工具提供的测试描述中发现应用服务器中存在一个匿名用户,默认是不需要密码的,经过分析发现服务器使用了FTP协议,
而使用ftp协议默认会产生一个匿名用
- [电力与暖气]煤炭燃烧与电力加温
comsci
在宇宙中,用贝塔射线观测地球某个部分,看上去,好像一个个马蜂窝,又像珊瑚礁一样,原来是某个国家的采煤区.....
不过,这个采煤区的煤炭看来是要用完了.....那么依赖将起燃烧并取暖的城市,在极度严寒的季节中...该怎么办呢?
&nbs
- oracle O7_DICTIONARY_ACCESSIBILITY参数
daizj
oracle
O7_DICTIONARY_ACCESSIBILITY参数控制对数据字典的访问.设置为true,如果用户被授予了如select any table等any table权限,用户即使不是dba或sysdba用户也可以访问数据字典.在9i及以上版本默认为false,8i及以前版本默认为true.如果设置为true就可能会带来安全上的一些问题.这也就为什么O7_DICTIONARY_ACCESSIBIL
- 比较全面的MySQL优化参考
dengkane
mysql
本文整理了一些MySQL的通用优化方法,做个简单的总结分享,旨在帮助那些没有专职MySQL DBA的企业做好基本的优化工作,至于具体的SQL优化,大部分通过加适当的索引即可达到效果,更复杂的就需要具体分析了,可以参考本站的一些优化案例或者联系我,下方有我的联系方式。这是上篇。
1、硬件层相关优化
1.1、CPU相关
在服务器的BIOS设置中,可
- C语言homework2,有一个逆序打印数字的小算法
dcj3sjt126com
c
#h1#
0、完成课堂例子
1、将一个四位数逆序打印
1234 ==> 4321
实现方法一:
# include <stdio.h>
int main(void)
{
int i = 1234;
int one = i%10;
int two = i / 10 % 10;
int three = i / 100 % 10;
- apacheBench对网站进行压力测试
dcj3sjt126com
apachebench
ab 的全称是 ApacheBench , 是 Apache 附带的一个小工具 , 专门用于 HTTP Server 的 benchmark testing , 可以同时模拟多个并发请求。前段时间看到公司的开发人员也在用它作一些测试,看起来也不错,很简单,也很容易使用,所以今天花一点时间看了一下。
通过下面的一个简单的例子和注释,相信大家可以更容易理解这个工具的使用。
- 2种办法让HashMap线程安全
flyfoxs
javajdkjni
多线程之--2种办法让HashMap线程安全
多线程之--synchronized 和reentrantlock的优缺点
多线程之--2种JAVA乐观锁的比较( NonfairSync VS. FairSync)
HashMap不是线程安全的,往往在写程序时需要通过一些方法来回避.其实JDK原生的提供了2种方法让HashMap支持线程安全.
- Spring Security(04)——认证简介
234390216
Spring Security认证过程
认证简介
目录
1.1 认证过程
1.2 Web应用的认证过程
1.2.1 ExceptionTranslationFilter
1.2.2 在request之间共享SecurityContext
1
- Java 位运算
Javahuhui
java位运算
// 左移( << ) 低位补0
// 0000 0000 0000 0000 0000 0000 0000 0110 然后左移2位后,低位补0:
// 0000 0000 0000 0000 0000 0000 0001 1000
System.out.println(6 << 2);// 运行结果是24
// 右移( >> ) 高位补"
- mysql免安装版配置
ldzyz007
mysql
1、my-small.ini是为了小型数据库而设计的。不应该把这个模型用于含有一些常用项目的数据库。
2、my-medium.ini是为中等规模的数据库而设计的。如果你正在企业中使用RHEL,可能会比这个操作系统的最小RAM需求(256MB)明显多得多的物理内存。由此可见,如果有那么多RAM内存可以使用,自然可以在同一台机器上运行其它服务。
3、my-large.ini是为专用于一个SQL数据
- MFC和ado数据库使用时遇到的问题
你不认识的休道人
sqlC++mfc
===================================================================
第一个
===================================================================
try{
CString sql;
sql.Format("select * from p
- 表单重复提交Double Submits
rensanning
double
可能发生的场景:
*多次点击提交按钮
*刷新页面
*点击浏览器回退按钮
*直接访问收藏夹中的地址
*重复发送HTTP请求(Ajax)
(1)点击按钮后disable该按钮一会儿,这样能避免急躁的用户频繁点击按钮。
这种方法确实有些粗暴,友好一点的可以把按钮的文字变一下做个提示,比如Bootstrap的做法:
http://getbootstrap.co
- Java String 十大常见问题
tomcat_oracle
java正则表达式
1.字符串比较,使用“==”还是equals()? "=="判断两个引用的是不是同一个内存地址(同一个物理对象)。 equals()判断两个字符串的值是否相等。 除非你想判断两个string引用是否同一个对象,否则应该总是使用equals()方法。 如果你了解字符串的驻留(String Interning)则会更好地理解这个问题。
- SpringMVC 登陆拦截器实现登陆控制
xp9802
springMVC
思路,先登陆后,将登陆信息存储在session中,然后通过拦截器,对系统中的页面和资源进行访问拦截,同时对于登陆本身相关的页面和资源不拦截。
实现方法:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23