- 博客(135)
- 资源 (2)
- 收藏
- 关注
原创 Mybatis传入数组时 Available parameters are [array]
问题: 因为mybatis绑定参数的时候是传入的一个map中,默认数组的传入key就是array,因此解决办法有两种: 1.直接使用array,作为参数 <foreach collection="array" item="pid" open="(" close=")" separator=","> #{pid} </foreach>2.使用自命名的方式,在方法中声明...
2021-08-08 12:01:53
1175
原创 pinyin4J入门
1.导入jar包 导如jar包和一个pingyin4J的工具类2.使用 将汉字转为拼音:String[] strings = PinYin4jUtils.stringToPinyin("一二三");//转换的拼音都是小写 获得汉字拼音的首字母:String[] headByString = PinYin4jUtils.getHeadByString("催一单");...
2020-02-01 21:24:27
365
原创 quarter简单使用
其实很简单,他就是三层包装第一步 导入jar包 <!-- quartz --> <dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz</artifactId> <version>2.2.2...
2020-01-17 09:12:58
2386
原创 垂直权限漏洞与水平权限漏洞
一、水平权限漏洞简单举例:假设A可以更改1 2 3三条数据 而B可以更改 2 3条数据。那么我们一般会怎么做呢,会让用户A查询到123条数据,而用户B查询到23条数据但是一般情况下,我们是对接口做的做的权限验证 此时B权限会拿到23条数据,那么B提交修改的时候只需要将修改的id更改成1的id即可(很多情况下我们会使用主键自增长的方式),所以很容易出现问题。修复方案0:先看一...
2020-01-08 23:08:50
1592
原创 easyuidatagrid行高自适应
网上查了半天没有查到,只有通过css进行,于是想那通过js控制不也就可以了么?<style> .grid-panel .datagrid-btable tr{height: 40px;} </style> <div class="grid-panel" style="width: 100%;height: 100%">&l...
2020-01-08 20:48:56
1136
原创 Calendar 获得周五日期以及月年的最后一个工作日
一、获得周五1.首先要明白,在美国眼里,周天是第一天所以通过 Calendar cal = Calendar.getInstance(); int dayWeek = cal.get(Calendar.DAY_OF_WEEK);获得的值应该是 星期天对应 1 星期六对应72.通过日历类Calendar,我们可以获得一周中的时间 ...
2019-12-05 16:44:22
1779
原创 当一个表中的两个字段都是根据同一个数据字典中的值进行判断的情况
那就把他们写成别名的形式SELECT a.id, a.`name`, a.scContent, b.teamName, c.teamName as defaultTeamNameFROM ri_scheduledcheck_check aLEFT JOIN ri_team b ON a.check_Team = b.idLEFT JOIN ri_team c ON a.d...
2019-11-13 23:03:00
350
原创 shiro @RequiresPermissions多权限
一、RequirePermissions多权限权限值value用数组代替,再设置logical多选一:logical = Logical.OR例如:@RequiresPermissions(value = { "product_create", "product_edit" }, logical = Logical.OR)必须全部符合:logical = Logical.AND...
2019-08-30 10:25:28
5038
原创 并发基础知识
4.2GHZ 的cpu频率 已经是接近极限了,不再遵循摩尔定律有关并行的两个重要定律 一、Amdahl定律 阿姆达尔定律 二、Gustafson定律 古斯塔夫森并行化越多 加速度越大。...
2019-07-01 15:15:00
182
原创 从测试角度看数据库架构
主要内容包括:1.数据库性能测试的目的及范围 2.数据库的常用架构3.数据库主从同步的工作原理 4.数据库分库分表的设计方法数据库性能测试的目的 发现数据库相关的性能瓶颈 sql语句-慢查询 资源使用率 数据库架构的合理性 ...
2019-06-10 15:32:52
269
原创 SpringBoot与SpringCloud初识
一、SpringBoot初识 1.介绍 SpringBoot中web.xml springMVC甚至于mybatis的主配置文件都不用进行描述了,全部可以使用注解解决。反射操作类,要比dom去操作xml文件快很多,所以使用注解,会更加的迅速。注解开发,是面向对象的开发方式,所以使用注解开发,更加优秀。 可以帮助开发者快速的启动一个WEB服务,无需依赖外部的Servlet容器,...
2019-04-28 15:56:28
241
原创 spring与springMVC的配置问题
弄了这么久spring和springMVC一直以为这两个配置出来的对象是一致的,随便进行搭配,后来发现原来还是不一致的。springmvc和spring会分别创建一个IOC容器,那么我们在进行扫描的时候就要注意,下面我们将整个访问流程,进行一个梳理,一般情况下,controller是由我们springMVC进行管理,service和dao是由spring进行管理。一般我们将spri...
2019-04-19 15:13:52
282
原创 jsp运行原理 双亲委派机制
当我们把项目部署到tomcat中以后,他是怎么帮我们进行页面处理的呢?我们来看一下首先,找到我们部署项目的服务,项目文件都部署在webapps下面,work目录下是保存着我们的临时文件的,在里面可以看到tomcat为我们生成java代码能够看到生成的页面就tomcat帮我们进行输出的二、双亲委派机制内存分区,栈区,堆区和方法区。方法区用于存放类的结构,比如类的父...
2019-04-19 11:17:44
196
原创 shiro的简单使用
一.认证与授权 认证:系统提供的用于识别用户身份的功能,通常登录功能就是认证,让系统知道你是谁,qq登录,微信登录。 授权:系统用户可以访问哪些功能,让系统知道你能做什么。shiro核心功能,认证,授权、加密二.基本使用 1.引入框架依赖<!-- 引入shiro框架的依赖 --> <dependen...
2019-04-18 14:48:13
291
原创 eclipse中svn的常用功能总结
一、先来看看常出现的一些符号说明是当前版本没有的内容,需要进行添加至服务器说明是文件发生了更改,需要提交并进行更改的说明当前版本落后于服务器,需要从服务器更新数据 说明当前文件需要从服务器导入。说明与服务器连接同步(仅仅指svn的上一次同步没有发生变化),并且没有更改 后面包括版本号,作者和时间表示有不同步文件 第一次检出也会有雪花标志,因为会生成settings文件夹的...
2019-04-18 11:37:17
560
原创 关于一些常用的配置
一、扫描包: 当然不写.*也是可以的 <context:component-scan base-package="com.atguigu.atcrowdfunding.*"> <context:exclude-filter type="anntation" expression="org.springframework.stereotype.Con...
2019-04-15 16:46:55
338
原创 DepencyManagement与dependencies的区别
很多时候我们在maven中都会采用父工程对子工程或者是模块进行管理,那么DepencyManagement与dependencies都可以进行依赖的管理,我们来看看有什么区别。dependencies是指的子工程继承所有父工程的依赖包以及版本,而DepencyManagement中声明的dependencies只是对子工程指定版本,但是不会传递jar包。DepencyManagement的...
2019-04-15 11:16:01
633
原创 maven介绍
1.依赖的传递性maven导入包的传递性,makefriend工程依赖于helloFriend工程 又依赖于hello工程,但是 他们又分别引用了不同版本的log4j,因为Maven中内置了两条依赖原则:最短路径者优先和先声明者优先,上诉最短路径为HelloFriend,上述问题MakeFriend工程会自动使用log4j.1.2.14.jar。 如果路径相同,那么在pom里面先声...
2019-04-10 10:57:42
265
原创 AQS简易理解
本来想好好写一下,csdn编辑器 写到一半就崩溃了 ,草稿箱也没有了,随便写写给自己看就行了。。。 static final class Node { /** Marker to indicate a node is waiting in shared mode */ static final Node SHARED = new Node(); ...
2019-04-08 15:32:49
373
原创 原子性、有序性、可见性
一、原子性是指一个操作是不可中断的,要么全部执行成功要么全部执行失败,有着“同生共死”的感觉。及时在多个线程一起执行的时候,一个操作一旦开始,就不会被其他线程所干扰。像是a++ 并不是原子操作,因为a++其实包括,读取a的值,将a的值加1,将结果赋值给a那么java内存模型中定义了8种原子方法,这8中方法也不能再拆分1.lock(锁定)用于锁定主内存中变量,将他变成一个线程独占的状...
2019-03-07 16:19:37
905
原创 ArrayList循环遍历删除多个元素
以前都是用ArrayList删除一个元素,当然是没有问题的,今天用ArrayList删除多个元素,直接就出现问题了其实原因很简单,比如有5个元素你删除了第二个元素,那么此时你的遍历i为1数组arraylist长度变为4,此时你再去遍历i=2这个元素的时候本来应该是遍历原来arraylist的第三个元素,但是第二个删除了,后面的就依次向前移动,这样就跳过了遍历第三个元素。解决方案:...
2019-03-07 10:45:06
2002
原创 判断对象属性值是否为空
一般页面校验以后,还需要服务器进行校验,利用反射进行非空校验 public static boolean checkObjFieldIsNotNull(Object obj) throws IllegalAccessException { boolean flag = true; for(Field f : obj.getClass().getDeclaredFields()...
2019-03-05 14:10:15
2164
原创 volatile为什么不能保证原子性
根据定义被volatile关键字修饰的变量更改后,会直接刷新到主存和线程缓存中,那为什么不能保证原子性呢?看到各位大佬各种反编译,内存屏障一个变量i被volatile修饰,两个线程想对这个变量修改,都对其进行自增操作也就是i++,i++的过程可以分为三步,首先获取i的值,其次对i的值进行加1,最后将得到的新值写会到缓存中。线程A首先得到了i的初始值100,但是还没来得及修改,就阻塞了...
2019-03-05 11:54:44
1665
2
原创 spring配置xml事务
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xmlns:p="http://www.springfra
2019-03-04 15:04:32
164
原创 事务的隔离级别最清晰理解与MVCC实现机制
mysql事物的隔离级别包括四种 READ_UNCOMMITTED spring实现读未提交 (脏读) 脏读 READ_COMMITTED spring实现读已提交 (待解决--不可重复读+幻读) 不可重复读 ...
2019-03-04 15:04:05
147
原创 java split和js split的区别
当我们提交一对多的时候,为了方便,喜欢把结果组装成String result = "";for(int i=0;i<10;i++){ result = result + i + ",";}结果为1,2,3,4,5, 这种形式,最后都有个逗号1.如果使用java的split方法,他会自动帮我们屏蔽掉那个逗号,如果是js的split方法,那么生成的数组后面,还会有一...
2019-02-28 14:55:41
683
原创 easyui textbox失焦事件
data-options="events:{blur: function(){ findEquipmentByCode() }}"
2019-02-27 21:00:01
840
原创 hcharts更新问题
显示:hcharts的显示这里就不多说了,基本官网上的例子都有需要说明一点的是,在柱状图中表示时,可以使用坐标的方式指定表示的横坐标,而不是只能像官网上一样全部写完data可以写成[[1,5],[2,8]] 其中1代表横坐标,5代表纵坐标更新: hcharts更新时series不会自动增加或减少,需要我们手动增减在ajax访问成功后可以写到:succes...
2019-02-26 14:33:53
173
转载 mysql中根据月进行分组
SELECTCount(*),ri_equipmentmessage_equipment.equipment_Name,ri_equipmentmessage_equipment.equipment_Code,DATE_FORMAT( ri_repair_declarationsurface.report_Time, '%m' ) AS months,ri_departmen...
2019-02-25 15:32:34
289
原创 springMVC接受日期型数据 与js将字符创转日期型数据
springMVC接受js的 new Date() 的数据是可以但是无法处理2018-10-18这种数据,以及自定义数据,想要接受这种数据,必须使用DateTimeFormat注解强制定义上传方法,但是注意,如果使用这种方法上传就相当于固定格式了,不能接受new Date()方法上传的数据了@RequestMapping(value="/repair/repairIntelligentS...
2019-02-22 15:48:59
233
转载 highchart去掉水印
https://blog.youkuaiyun.com/g334082356/article/details/45339077
2019-02-21 19:32:40
185
原创 easyui窗口自适应解决方案
easyui窗口自适应确实头大fit:truefitColumns:true只适应于一般的简单情况。那么这个时候就需要我们手动来自适应窗体了,自己写自适应大小,总不会错吧window.onresize = function(){ /* $('#p').portal('resize'); */ $('#p1').panel('resize',{ width:...
2019-02-21 13:33:42
1082
原创 多表相加同一字段union联合的使用
业务需求:最近的问题就是,有很多部门,部门又拥有商品,商品有不同的品种,我们需要计算出不同部门里有多少不同商品,但是对一个部门来说 既有属于部门的商品,也有属于个人的商品,这也就是两个表,首先,我们知道,我们需要查的就是部门中同一个商品,个人持有量和部门持有量。SELECT ri_equipmentmessage_sparepart.id, ri_equipmentm...
2019-02-19 16:54:54
1097
转载 jquery克隆对象
var newData = jQuery.extend(true, [], data); https://blog.youkuaiyun.com/chadcao/article/details/50574404
2019-02-18 15:54:24
908
原创 js删除json数组中的元素
ha.splice(3, 1); //删除数组中的第四个json元素https://blog.youkuaiyun.com/qq_33242126/article/details/83107866
2019-02-18 10:18:48
1458
原创 Count和sum的区别
Count是指的列数 而sum是指定字段相加的和简单说一下 单表查询时 count某个值就是算的总列数有多少 而sum是计算指定列的相加和对一对多来说 那么你会将多的一方和某个字段的值相加,做为一的一方的一个字段来显示,就用sum,如果是计算对于一的一方对应的列数,那么就用count。...
2019-02-15 14:08:23
6719
原创 easyui的combobox禁止写入
这样写是不行的不能选中,/* $('#editScmethod').combobox({ editable:false }); */ 只能写在input里面<input id="editScmethod" data-options="valueField:'id',textField:'methodname',multiple:true,editable:fals...
2019-02-14 11:00:36
1658
原创 文件上传 不跳转并接受返回值
<div id="fileuploadbox"> <form action="${ctx}/itemPortrait.do?method=attachSave&prj_id=${bean.prj_id}&flag=222" method="post" target="tg" enctype="multipart/form-da
2019-02-13 10:11:26
465
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人