- 博客(49)
- 收藏
- 关注
原创 MySQL深分页问题
在项目中有一个数据导出的需求,原来的实现方式也比较简单,根据查询条件分页查所有的数据,然后转成csv的格式一行一行写进文件存储中。
2025-04-11 14:31:36
118
原创 Win11企业版安装wsl遇到的坑
通ipaddress查了一下githubusercontent的ip,配置到host文件中;配置完host以后,执行ping命令发现还是有很高的丢包率。
2025-04-10 13:51:25
164
原创 mysql如何查询数据出现的次数
在mysql中,可以利用select语句配合group by和count查询数据出现的次数,count能够返回检索数据的数目,语法为“select 列名,count(*) as count from 表名 group by 列名”。count函数是用来统计表中或数组中记录的一个函数,count(*) 它返回检索行的数目, 不论其是否包含 NULL值。SELECT 从一个表中检索,而不检索其它的列,并且没有 WHERE子句时, COUNT(*)被优化到最快的返回速度。
2023-10-27 10:45:24
3213
原创 List如何正确删除元素
为了避免这个问题,可以使用Iterator的remove()方法来删除元素,这样可以避免ConcurrentModificationException异常的出现。中的元素,而在集合被修改时,迭代器可能会失效,从而导致ConcurrentModificationException异常的抛出。这是因为在使用foreach循环时,Java会使用迭代器来。以上代码还有一个简单的写法,使用removeIf。
2023-07-20 15:59:51
302
原创 mysql范围in查询时结果排序
where qc_code in (1,2,3,4)order by instr('1,2,3,4',qc_code);
2022-05-20 23:41:13
1820
原创 maven问题合集
1.没有办法下载jar包对应的sources文件在命令行执行如下语句mvn dependency:resolve -Dclassifier=sources
2022-03-24 16:51:18
454
原创 Stream API
Stream 是 Java8 中处理集合的关键抽象概念,它可以指定你希望对集合进行的操作,可以执行非常复杂的查找、过滤和映射数据等操作。 使用Stream API 对集合数据进行操作,就类似于使用 SQL 执行的数 据库查询。也可以使用 Stream API 来并行执行操作。简而言之, Stream API 提供了一种高效且易于使用的处理数据的方式。什么是Stream?Stream是数据渠道,用于操作数据源(集合、数组等)所生成的元素序列。集合讲的是数据,流讲的是计算。Strea
2022-03-23 10:48:39
394
原创 idea 常见问题
1.运行报错:Command line is too long.在该项目文件夹.idea/workspace.xml中找到 PropertiesComponent,然后在其中添加:<property name="dynamic.classpath" value="true" />2.maven无法下载源码,提示can not download source.用IDEA无法下载源码,可以在命令行项目根目录下,执行如下命令 :mvn dependency:resolve -Dc.
2021-07-05 11:20:56
335
原创 如何更好的进行非空判断
1.Objects2.Optional3.使用CollectionUtils4.使用Maps工具类5.使用StringUtils工具类
2020-12-01 15:08:18
284
原创 git分支开发模式如何进行代码合并?
1.通过git fetch获取最新的origin分支信息;2.本地通过git check out切换到当前需求分支;3.git push把本地变更推送到origin远端;4.如果origin master有变更,分支代码必须先进行merge操作;5.如果没有冲突,可以自动合并成功;如果有冲突,需要在当前分支对origin master进行git pull,把master最新内容pull到本地,解决冲突之后git commit,然后git push。...
2020-12-01 15:00:18
262
原创 Linux服务器日志检索
1.grep xxx a.log 普通检索2.zgrep xxx a.log 在压缩文件中检索3.grep -a xxx a.log 如果根据方式1检索出现‘Binary file a.log matches’之后,可以增加-a参数等同于文本文件处理4.grep -C nxxx a.log 在方式1的基础上前后检索n行...
2020-10-23 16:16:19
708
原创 mybatis调试怎么查看最终执行的sql语句
在org.mybatis.spring.SqlSessionTemplate类的invoke方法出打断点,就可以在sqlSession的executor中的delegate中的statementMap里看到要执行的sql语句,详细信息见下图。掌握这个技能,定位问题非常高效。
2020-08-04 18:08:19
29777
8
原创 SpringMVC实现导出Excel功能
//1.在controller需要做excel下载的方法中增加HttpServletResponse入参 public void export(HttpServletResponse response){ //2.从response中获取输出流,并设置输出流的格式 OutputStream output = response.ge...
2019-12-13 15:29:33
385
原创 服务器IO处理模型
目录背景单线程阻塞IO模型多线程阻塞IO模型背景本文主要从IO的阻塞与非阻塞,IO处理的单线程和多线程角度探讨服务模型。对于IO,可以分成阻塞IO和非阻塞IO两大类型。阻塞IO在做IO读写操作时会使当前线程进入阻塞状态,而非阻塞IO则不会进入阻塞状态。对于线程,单线程情况下由一条线程负责所有客户端连接的IO操作,而多线程情况下则由若干线程共同处理所有客户端连接的IO操作。下面将对线程和阻...
2019-04-16 19:47:22
503
原创 在git bash中使用git rebase的流程
1.在需要rebase的分支先使用git status查看是否有未commit的代码;2.切换到本地的master分支,使用git pull把master更新到最新;3.切换回需要rebase的分支,使用git rebase -i master,-i是交互式rebase的选项,确认commit的message,选择第一个pick,剩下的改为s;4.如果rebase过程中有冲突,先解决冲...
2018-08-21 17:57:05
1066
原创 非空校验
1.String可以使用apache commons-lang3中的StringUtils.isEmpty和StringUtils.isBlank来判断null、“”、“ ”;其中isEmpty可以判断null和“”,而isBlank除了可以判断null、“”,还可以判断“ ”;也可以使用Google Guava中的Strings.isNullOrEmpty来判断null、“”;...
2018-06-07 16:46:34
2844
2
原创 Java常见代码问题
1.潜在的NullPointerException因为链式调用方便而忽略可能存在的空指针问题;比如user.getId()在调用之前需要判断user!=null,这样的判断看似繁琐,但却是很必要的;2.数值对象类型的比较使用==数值对象之间的比较应该使用equals而不是==,因为==比较得到的结果是否是同一个对象;3.DateFormat的线程不安全性在日期类的工具类中,习惯性的静态初始化一个对...
2018-04-23 11:46:12
430
原创 Java使用jni以及dll
1.在linux环境中管理动态链接库在linux环境中编译完以后,在使用中报[cannot open shared object file: No such file or directory]错误时,可以使用ldconfig解决;
2018-04-17 17:11:03
158
原创 Tomcat使用问题集锦
1.如何设置不加工程名访问?在conf文件夹下的server.xml文件中的Host节点中增加Context节点,其中path留空,docBase为解压以后的项目的绝对路劲;<Host name="localhost" appBase="webapps" autoDeploy="true" unpackWARs="true"> <!-- path留空代表访问域名后面...
2018-04-17 17:05:21
134
原创 Java不好的代码习惯
1.魔数一些没有注释且从命名上也看不出什么意思的数字常量或者字符串,很可能在过一段时间之后谁也不知道这个常量或者字符串代表什么意思。这个常量或者字符串就会被称为魔数。...
2018-04-12 15:28:38
328
原创 读写json文件并新增或覆盖其中的数据节点
1.json转MapMap map = JSON.parseObject(json); [使用fastjson]2.Map转jsonString json = JSON.toJSONString(map); [使用fastjson]3.读json文件File file = new File(filePath);String json = FileUtils.readFileToStr...
2018-04-12 09:59:52
4826
1
原创 Linux命令
1.杀死某个指定进程netstat -ano[|findstr 'port']查询指定端口的pidtaskkill /pid 'pid' -t -f
2018-01-19 23:34:07
163
原创 Web开发踩过的坑
1.接口url中包含advertiser关键字被adblock插件屏蔽导致接口failed通过浏览器的console发现报“net::ERR_BLOCKED_BY_CLIENT”,最终发现是adblock插件导致;教训是接口url中尽量避免出现advertiser相关的关键字,否则可能因为用户开启了adblock插件而导致部分接口访问失败;2.可变长参数和原生数组类型是等价的,如果接口传参是一...
2017-12-11 16:25:07
280
原创 IntelliJ IDEA踩过的坑
1.启动Tomcat卡住?可能是卡在了断点上,在Debug窗口中找到breakpoints,先把断点去掉。2.启动Tomcat以后提示请求的资源不存在404?可能是对项目进行过clean操作,重新install项目以后再启动Tomcat。3. IDEA Unable to open debugger port BindException: Address already in u
2017-12-05 15:12:18
376
原创 SFTP搭建及文件上传
1.Centos 搭建SFTP服务器http://www.cnblogs.com/reed/p/5516474.html2.使用JSch连接sftp服务器http://www.tuicool.com/articles/3qymIb3
2017-06-08 15:27:49
452
原创 SpringMVC读取Excel文件
1.直接读取Excel文件使用注解接收文件 @RequestParam(value = “excel”, required = true) MultipartFile file 其中value的值是上传文件的文件名;从file读取输入流 从file中获取文件名、文件大小以及输入流等信息; InputStream is = file.getInputStream();使用输入流构造...
2017-06-07 11:15:27
2424
原创 Java集合类型遍历和排序
1.Java集合Set、List、Map的遍历方法List的遍历 //List的第一种遍历方式:因为list有顺序,利用size()和get()方法获取 for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i)); } //List的第二种遍历方式:利用Iterator
2017-03-28 11:56:48
1622
原创 Hibernate-validator校验框架使用
可以有两种使用方法:第一种:在要检验的Dto对象之前加@Valid注解,这种方法必须配合BindingResult参数一起使用,否则验证不通过就会返回400,并且抛出"org.springframework.validation.BindException"异常。第二种:将validation逻辑封装成工具类,使用工具类对dto进行校验,然后根据校验结果做响应的处理。
2017-03-09 09:59:59
5643
原创 Chrome浏览器打开百度https报红叉
打不开百度网页是因为chrome强制转跳https,所以删除对某个域名的强制转跳即可。方法:chrome的地址栏输入:chrome://net-internals/#hsts , 在Delete domain 栏的输入框中输入要http访问的域名,然后点击“delete”按钮,即可完成配置。然后你可以在 Query domain 栏中搜索刚才输入的域名,点击“query”按钮后如果提示“Not
2016-12-15 15:32:15
2797
转载 工具类如何使用依赖注入其他组件
@Component //申明为spring组件 public class TestUtils { @Autowired private TestService testService; //添加所需service的私有成员 //关键点一 静态初使化一个工具类,这样是为了在spring初使化之前 private static Te
2016-12-13 12:39:47
3283
原创 MySQL踩过的坑
1.查询带in条件时返回的数据默认是按照id的正序排列的,可以使用ORDER BY FIELD(column, value1, value2, ......);
2016-12-06 19:14:20
409
原创 Vsftpd使用FtpClient上传文件踩过的坑
1.切换工作目录返回false怎么破? ftpClient.changeWorkingDirectory(“/images”),切换工作目录是目录直接写相对于local_user目录的路径即可。 2.上传图片文件损坏怎么破? 设置文件上传形式为二进制格式即可。ftpClient.setFileType(FTP.BINARY_FILE_TYPE) 3.storeFile保存文件失败怎么破?
2016-08-10 00:05:22
7592
3
原创 Mybatis中如何获取SqlSession
每个基于 MyBatis 的应用都是以一个 SqlSessionFactory 的实例为中心的。SqlSessionFactory 的实例可以通过 SqlSessionFactoryBuilder 获得。而 SqlSessionFactoryBuilder 则可以从 XML 配置文件或一个预先定制的 Configuration 的实例构建出 SqlSessionFactory 的实例。1.使用XML
2016-06-24 15:28:03
18224
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人