服务端框架
wanghan1977
这个作者很懒,什么都没留下…
展开
-
后端处理字符串,传到前端js变量后转json出错
【代码】后端处理字符串,传到前端js变量后转json出错。原创 2024-07-12 09:52:55 · 100 阅读 · 0 评论 -
优化分页插件pagehelper
使用mybatis+pagehelper过程中,发现pagehelper中自动生成的count语句性能很差,直接在现在查询外面套了一个count查询,跟踪源代码后定位到生成count的判断处(CountSqlParser.java):/** * 将sql转换为count查询 * * @param select */public void sqlToCount(Select select) { SelectBody selectBody = select.getSelectBody()原创 2020-05-25 09:26:25 · 615 阅读 · 0 评论 -
防止下载文件名中存在特殊字符导致下载出错
测试下载文件名为:--@#¥%……&()——+-={}【】:;,..xls时,服务端报错,IO异常。原写法:response.setHeader("Content-Disposition","attachment;fileName="+fileName);解决写法response.setHeader("Content-Disposition","at...原创 2020-04-22 10:15:25 · 2363 阅读 · 0 评论 -
通过混合方式处理需要在固定模板中大批量写入数据的excel的方法
业务需要在一个既存固定样式(列头,背景,固定列,过滤等等)的excel里面写入大量数据。 已知XSSFWorkBook在大量写入数据时会有严重的性能问题,并导致内存泄漏,而SXSSFWorkBook适合写入大量数据,但不适合操作模板。 直接介绍解决办法通过XSSFWorkBook读入带有样式的模板XSSFWorkbook wb = (XSSFWorkbook)W...原创 2020-03-26 11:53:59 · 1988 阅读 · 0 评论 -
基于redis的zset,支持高并发的时间滑动窗口计数器实现
关于计数器的核心实现参考自如下:https://github.com/halilduygulu/redis-sliding-window-counter课题需求是需要对可能产生高并发的接口进行计数管理,如10秒内最大允许访问100次,超出次数拒绝。基本上有3种实现方式 指定时限,如每天0点开始,每10秒开放一定次数。计时窗口固定,过期清空 采用时间滑动窗口,...原创 2019-10-25 09:41:24 · 10048 阅读 · 3 评论 -
用java自己开发web服务器之四、对URI的解析
创建解析转发URI的ServletDispatcher的类package com.zibra.server.dispatcher;import java.io.File;import java.net.URL;import java.net.URLClassLoader;import java.net.URLStreamHandler;import javax.servlet.S...原创 2019-08-22 12:21:12 · 224 阅读 · 0 评论 -
用java自己开发web服务器之三、添加测试用servlet
实现HttpServletResponse的BaseResponse,因为篇幅原因,HttpServletResponse很多接口实现没写,只需要导入空方法即可package com.zibra.base;import java.io.IOException;import java.io.OutputStream;import java.io.PrintWriter;import...原创 2019-08-22 12:18:12 · 167 阅读 · 0 评论 -
用java自己开发web服务器之二、多线程以及线程池
加入支持多线程(线程池)package com.zibra.server.thread;import java.net.Socket;public class SocketThread implements Runnable { // 线程参数 private Socket socket; public SocketThread(Socket socket)...原创 2019-08-22 12:13:17 · 179 阅读 · 0 评论 -
用java自己开发web服务器之一、原型
本篇文章参考《Java网络编程精解》, 作者为孙卫琴, 出版社为电子工业出版社需要依赖javax.servlet.jar,可以在jdk的lib下找到入口类Server.javapackage com.zibra.server;import java.net.InetAddress;import java.net.ServerSocket;import java.net.Soc...原创 2019-08-22 12:10:15 · 271 阅读 · 0 评论