2022年6月

  1. org.apache.http.client.ClientProtocolException: null java.io.IOException: Attempted read from close
    原因:
 	HttpEntity resEntity = response.getEntity();
 	//方法中操作的是流数据,流数据是一次性数据所以同一个HttpEntity不能使用多次该方法
 	String resEntityStr=EntityUtils.toString(resEntity)
  1. redis命令setex键秒值
    设置key为保存字符串value并key在给定的秒数后设置为超时。该命令相当于执行以下命令:
SET mykey myvalue
EXPIRE mykey 3
#或者
SETEX mykey 3 myvalue
  1. Jackson使用
 Map<Object, Object> map = new HashMap<>();
 map.put("success",true);
 map.put("message","验签成功");
 
 String jsonMap = new ObjectMapper().writeValueAsString(map);
 response.setContentType("application/json;charset=UTF-8");
 response.getWriter().println(jsonMap);
  1. strJSON.replace(/\n/g,‘’).replace(/\/g, ‘’) :把\n和\替换成空。

  2. Request和Response设置编码格式
    Request:
    1.post方式:request.setCharacterEncoding(“utf-8”);
    注:通知浏览器对request提交(Post方式)的数据使用UTF-8进行编码。
    2.get方式: String str=request.getParameter(“key”);
    str=new String(str.getBytes(“iso-8859-1”),“utf-8”);
    注:对于Get方式,将请求参数先接收,在进行手动转码。
    Response:
    1.response.setContextType(“text/html;charset=utf-8”);
    2.response.setContextType("text/html);
    response.setCharacterEncoding(“utf-8”);
    注:使用UTF-8对response回写数据进行编码,同时通知浏览器对response回写的数据使用UTF-8进行解码。

  3. 通过应用名查询端口:ps -ef | grep redis

  4. mybatis插入list数据操作:

public class Student {
	private Long sid,
	private String name,
	private Integer age
}
<!-- 插入学生信息 -->
<insert id="addStudent" parameterType="java.util.List">
    insert student
    (   
        sid,
        name,
        age
    )
    values
    <foreach collection="list" item="item" index= "index" separator =",">
    (
    	/*取index时用${index}*/
        #{item.sid},
        #{item.name},
        #{item.age}
    )
    </foreach>
</insert>
  1. CurrentHashMap是线程安全的,不允许key为null,因为HashMap当你get(null)的时候,无法判断是get(null)没有获取到值还是获取到put(null,null)的值。

  2. mybatis分页:
    物理分页:
    1. 利用sql的limit直接在查询的时候进行分页。
    2. 利用intercepter进行分页 ,例如pageHelper。
    逻辑分页:
    1. 利用数组分页,查询出全部数据,然后再list中截取需要的部分。
    2. 利用RowBounds分页,数据量小使用。

  3. log4j定义了8个级别的log优先级从高到低依次为:OFF、FATAL、ERROR、WARN、INFO(生产)、DEBUG(开发)、TRACE、 ALL。

  4. Java程序由于String的设计反斜线 \ 表示特殊的转移字符,所以在正则中想要写普通的正则转义比如"\s+“,就要写成”\s+"。(\s是匹配所以的空白符,+是匹配1个或者多个,大写表示非)。

  5. 正则的 \w* 表示匹配0个或者多个字母、数字、下划线。等价于[A-Za-z0-0_]*。

  6. 重写equals方法如果不重写hashCode方法,会导致对象完全相等,但是hash值不等,这样的话使用散列集合(哈希表又叫散列表)存储时会出现问题,散列集合在存储时会先根据对象的hash值算出在散列集合的存储位置,然后在进行equals比较,如果不重写hashCode方法的话会导致hash值不同,从而多次存取一个完全相同的对象存储在散列集合中的不同位置。

  7. 解决linux中tmp目录下的文件被清理的问题
    找到/usr/lib/tmpfiles.d下的tmp.conf文件,把默认的10天改成你想要的天数
    在这里插入图片描述

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值