- java查询结果数据量过大
斜月三
springbootjava开发语言
场景:从db中查询数据,并根据查询的结果去构造参数,然后去更新另一张表。由于一次性查询出的结果量过大,很有可能造成OOM。解决办法:采用mybais流式查询废话不多说,先上完成后的代码:Service层:@Service@Slf4jpublicclassMarcInstanceServiceImplimplementsMarcInstanceService{@AutowiredprivateMar
- 使用MybatisGenerator
WilliamCode
javaMybatis
1、向pom.xml添加依赖项mysqlmysql-connector-java8.0.22org.mybatis.generatormybatis-generator-core1.3.7Mybais-Generator依赖JDBC2、编写config文件3、运行命令行生成(也可以通过4、java程序生成)java-jarPACKAGE_NAME-configfileCONFIG_FILE_NAM
- Mybatis 基本设置
别骂了别骂了真不会
Java
Mybatis基本设置一直忘记,所以写个博客以免忘记。第一步先在数据库建好表打开UniServer文件,打开StartMySQL,输入密码随便建一个表。打开给的Mybais包用记事本打开:将图中标识的地方需要修改的地方修改下。注意数据库名字,表名。。然后打开cmd,复制给的文件夹的路径。注意里面有一个空的src文件夹。然后将说明文件里面的生成命令复制到cmd里面,回车后就生成好了。然后回到src文
- 个人博客系统[SpringBoot+SpringMVC+MyBais]
爱吃大白菜
项目springboot后端java
文章目录前言1.项目目录介绍2.项目前准备2.1使用到的第三方库2.1配置文件(application.properties)2.2数据库介绍3.common目录工具类介绍3.1AjaxResult类3.2AppVariable类3.3CaptchaUtils类3.4PasswordUtils类3.5UserSessionUtils类4.config目录4.1LoginInterceptor---
- 测试持久层:Spring Boot + @DataJpaTest+H2 mem+Junit5
i7i8i9com
JDKjavaspringspringboot
基本概念:JPA是JavaPersistenceAPI的简称,中文名Java持久层API是Sun官方在JDK5.0后提出的Java持久化规范,hibernate实现了这个规范,比mybais有优势测试持久层目的:就是为了验证数据表创建,查询等,所以不用在mysql等数据库验证总结在这个位置停留了很久原因1:坚持使用h2三种模式之一的内存mem模式,也获得了urlurl:jdbc:h2:mem:mu
- [Java Web]Mybatis->超八千字详细介绍,带你由浅入深认识了解mybatis
逐梦苍穹
JavaWebmybatisjava数据库
目录1、简介1.1、持久层1.2、框架2、JDBC->Mybais3、使用Mybatis3.1、步骤概述3.2、步骤详述3.3、注意事项3.3.1、⭐MybatisDemo步骤3.3.2、bug3.3.3、映射文件警告信息4、代理开发4.1、简介4.2、使用要求4.3、代理代码实现4.3.1、注意事项4.4、mapper代理的bug1、简介MyBatis是一款优秀的持久层框架,用于简化JDBC开发
- Mybatis学习笔记之Mybatis的快速开始
孤独的偷学者
SSM框架学习java数据库缓存mybatis
文章目录1Mybatis简介1.1什么是Mybatis?1.2Mybais的第一个程序1.3搭建项目中容易出现的问题1.4项目搭建过程中的一些详细说明1.4.1全局配置文件的标签说明与顺序1.4.2mapper接口和mapper.xml之间遵循的规则1.4.3SqlSession的作用域(Scope)和生命周期1Mybatis简介1.1什么是Mybatis?它是一款半自动的ORM持久层框架,具有较
- Mybatis-Plus模糊分页查询及关联查询(全注解实现)
See you !
javamybatissql
文章目录Mybatis-Plus分页查询Mybatis-Plus分页插件解读分页查询条件准备分页查询5要素MP提供的分页条件类自定义的分页条件类案例一:使用MP提供的mapper进行分页查询案例二:使用MP提供的mapper进行模糊分页查询案例三:自定义mapper模糊分页查询Mybatis关联查询案例一:一对一查询(原生mybais)案例二:一对多查询(@Many)案例三:一对一查询(封装的查询
- springboot+mybais+mabatisplus(swagger)实现增删改查接口
低调的码农!
springbootspringbootmybatisjava
学习阶段,记录一下!数据库:/*NavicatPremiumDataTransferSourceServer:mySourceServerType:MySQLSourceServerVersion:50722SourceHost:localhost:3306SourceSchema:siteTargetServerType:MySQLTargetServerVersion:50722FileEnc
- plus 什么是mybais_MyBatis-plus简介
赛克心
plus什么是mybais
MyBatis-plus有什么特色1.代码生成2.条件构造器对我而言,主要的目的是使用它强大的条件构建器.快速使用步骤:1.添加pom文件依赖org.apache.velocityvelocity1.7com.baomidoumybatis-plus2.0.1注意:mybatis-plus会自动维护mybatis以及mybatis-spring的依赖,所以不需要引入后两者,避免发生版本冲突.2.修
- SpringBoot2.3.1+MyBais+MyBatis分页插件+Oracle、Mysql多数据源+Log4j2
在路上奔跑~
SpringBoot2.Xmybatisspring
一、使用Idea创建SpringInitializr项目,Pom.xml配置如下:4.0.0org.springframework.bootspring-boot-starter-parent2.3.1.RELEASEcom.bykysendmessage0.0.1-SNAPSHOTwarsendmessage发送门店pos消费消息1.8org.springframework.bootspring
- plus 什么是mybais_MyBatis和MyBatisPlus的区别是什么?
weixin_39990401
plus什么是mybais
区别一如果MybatisPlus是扳手,那MybatisGenerator就是生产扳手的工厂。通俗来讲——MyBatis:一种操作数据库的框架,提供一种Mapper类,支持让你用java代码进行增删改查的数据库操作,省去了每次都要手写sql语句的麻烦。但是!有一个前提,你得先在xml中写好sql语句,是不是很麻烦?于是有下面的↓MybatisGenerator:自动为Mybatis生成简单的增删改
- plus 什么是mybais_mybatis-plus快速入门使用
常非一
plus什么是mybais
目前正在维护的公司的一个项目是一个ssm架构的java项目,dao层的接口有大量数据库查询的方法,一个条件变化就要对应一个方法,再加上一些通用的curd方法,对应一张表的dao层方法有时候多达近20个,果断决定优化一下,经过一番探索,发现了一个mybatis的好伴侣,mybatis-plus,上手容易,简洁高效,这里有官方的文档入口,文档比较详细,本来不想在重复文档内容,但是关上文档,看着自己改过
- Mybatis一:什么是mybais?mybatis编写步骤、属性配置优化
m0_49569564
一、什么是Mybatis?Mybatis是一款优秀的的持久层框架,它支持定制化SQL、存储过程以及高级映射。Mybatis几乎避免了所有的jdbc代码和手动设置参数以及获取结果集。Mybatis可以使用简单的xml或者注解来配置和映射原生类型、接口和java的pojo为数据库中的记录。二、写mybatis的步骤思路:搭建环境-----》导入mybatis------>编写代码------》测试1、
- MyBatis 三剑客 —— 代码生成器 Mybais generator
鸦教授
mybatis
为了简化开发,会根据数据库表生成一些文件,自带一些简单的CRUD操作:pojo,mapper.java,mapper.xml。这里使用idea工具和mysql数据库的操作。一.新建数据库表user二.新建maven项目idea工具右上角–File–new–Project新建maven项目:新建后是这样的目录结构:这个不是完整的结构,要在main包下,新建java包和resources包1.新建ja
- 第五章 MyBais插件
目小温i
JavaWeb项目前置javamybatis
1.pageHelper分页插件1.1maven导入依赖com.github.pagehelperpagehelper5.3.01.2在MyBatis的xml文件中配置-->1.3使用三步走://配置要访问的页码和每页的记录数PageHelper.startPage(1,3)//执行自己的查询方法.........//用分页插件中的工具类来封装查询结果,这个对象就是封装好的分页结果对象newPag
- springBoot+mybaties后端多层架构的实现示例
目录前期准备配置mybais-config.xml数据库建表案例Paramr案例前期准备1.建立一个springBoot项目2.导入相关的pom依赖4.0.0org.springframework.bootspring-boot-starter-parent2.7.0com.exampleetf0.0.1-SNAPSHOTetfetf1.83.4.2com.alibabafastjson1.2.7
- SpringBoot整合mybatis通用Mapper+自定义通用Mapper方法解析
目录首先引入pom通用Mapper是tk.mybais中的也可以用代码进行配置数据库创建一张表member以及相关字段新建一个通用Mapper继承Mapper、MySqlMapper比较详细的一个入门示例举例我要写一个通用的单表分页在自己的BaseMapper写一个方法新建的BaseMapperProvider对上诉实现代码的描述返回后通用Mapper是怎么处理的最近公司在用的通用mapper,自
- MyBatis-起始
javamybatis
Mybatis:一种简化sql操作的持久层框架,开发只需要关注具体的sql语句即可传统的JDBC:1.操作sql2.操作Connection、Statment(向数据库发送sql的一个对象)、ResultSet等ORM框架:对象关系匹配,把关系数据库中的数据转换成面向对象程序中的对象hibernate(全自动sql)和mybatis(自定义sql)1.pom中引入依赖mybais只要这一个依赖就完
- 一篇文章带你学习JAVA MyBatis底层原理
目录一、传统JDBC的弊端二、mybatis介绍三、MyBatis架构图核心类解释工作流程四、自己通过加载xml配置走mybais流程实现例子总结一、传统JDBC的弊端jdbc没有连接池、操作数据库需要频繁创建和关联链接,消耗资源很大。在java中,写原生jdbc代码,硬编码不易维护(比如修改sql、或传递参数类型时、解析结果)。二、mybatis介绍MyBatis是一款优秀的持久层框架,它支持自
- springboot+mybais+mabatisplus(swagger)实现增删改查接口(2)
低调的码农!
Swaggermybatisplusspringboot
学习阶段,记录一下!数据库:空/*NavicatPremiumDataTransferSourceServer:mySourceServerType:MySQLSourceServerVersion:50722SourceHost:localhost:3306SourceSchema:useTargetServerType:MySQLTargetServerVersion:50722FileEnc
- SSM(SpringMVC+SpringIOC AOP+MyBatis)小案例
Cw2_
笔记
SSM流程案例ssm环境搭建mysql依赖文件夹创建spring环境搭建(业务层)springmvc环境搭建(表现层)Spring整合Springmvcmybatis环境搭建Spring整合MyBatisAOP流程首先我们要先配置三个框架,确保每个框架可以正常单独运行然后在spring整合springmvc测试成功后,再spring和mybais整合这样ssm算搭建完成。案例这里我的案例是在客户端
- mybatis中引入mapper的几种方式 笔记
以罗伊
0环境系统环境:win10数据库:mysqlIDE:IDEA1mybatis全局配置文件引入方式1:使用mapperresouce属性注册mapperxml文件 ❝「注意」直接引用的xml,Mapperxml中namespace同名的Mapper接口(接口存在)❞方式2:使用mapperclass属性注册Mapper接口 ❝mybais去加载class对应的接口,然后还会去加载该接口同
- org.apache.ibatis.binding.BindingException: Parameter not found,使用@Param注解与不使用@Param注解
Daisen.Z
Java基础异常处理
SSM异常今天在做一个Spring+springMVC+Mybais项目时,出现了一个很让人费解的异常,org.apache.ibatis.binding.BindingException:Parameter‘userId’notfound.Availableparametersare[arg1,arg0,param1,param2]意思是说我的这个userId的参数有异常,而我检查页面后发现页面
- mybatis map中存放数组进行foreach遍历
to样
Controller层传入map形式的参数给mybais处理时,如果其中一个参数数组,则涉及到xml文件如何读取该数组进行遍历如:controller层:Stringdistrict="章贡区";String[]ids={"1","2","3"};map.put("district",district);map.put("ids",ids);xml:select*fromspu_goodsspu,
- BindingException:Mapper method 'com.example.demo.dao.CartDao.getStock attempted to return null fr...
25799c5cd22c
以前敲代码一直不注意区别Integer和int,直接混用,今天写一个mybais的xml时,xmldao发现查询结果为null时org.apache.ibatis.binding.BindingException:Mappermethod'com.example.demo.dao.CartDao.getStockattemptedtoreturnnullfromamethodwithaprimit
- IDEA从mapper.java跳转到mapper.xml
夏臻Rock
在IDEA中写项目后台的时候,从controller到service到mapper到dao,都可以直接跳转,但是mapper.java到mapper.xml就需要自行寻找,为了开发方便,安装相应插件--mybais但是,这玩意收费,所以只能寻寻觅觅破解版首先到官网下载该插件image.png也可以通过IDEA自行安装然后,是破解文件,真的找了好久,才找到可以用的!破解文件备份地址上面的破解文件对应
- Mybatis概括总结
小福子的小小幸福
Mybatis概括总结将jdbc纯代码连接数据库和mybatis连接数据库的实例进行对比,可以得到:mybatis是持久层框架,可以从java端连接到数据集,对数据进行操作;***mapper.xml取代了原来的接口实现类相对于传统jdbc连接数据库,mybatis实现了将sql语句和java语句的分离(分别在不同的文件中),降低耦合度在百度百科输入mybais,可得到mybatis如下简介:My
- Java架构师之源码分析专题SpringBoot2.x、Spring5、SpringMVC、Mybatis源码分析
gotobackto
Java架构师之源码分析专题SpringBoot2.x、Spring5、SpringMVC、Mybatis源码分析源码中我们可以学到很多东西,学习别人高效的代码书写、学习别人对设计模式的熟练使用、学习别人对整个架构的布局等等。目前SpringBoot2.x、Spring5、SpringMVC、Mybatis非常火爆,因此SpringBoot2.x、Spring5、SpringMVC、Mybais是
- springBoot整合mybatis
灵修丶charion
springBoot整合mybais今天做的时候遇到了好多问题,第一个问题就是时区问题这个需要把url地址写成这种形式spring.datasource.url=jdbc:mysql://localhost:3306/myjdbc?serverTimezone=UTC第二个问题是在pom文件中如果决定用druid的话,需要导入依赖com.alibabadruid1.1.9同时在applicatio
- 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