![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA
qq_41315539
这个作者很懒,什么都没留下…
展开
-
设计模式(简单)
一、单例模式A:懒汉式:需要的时候才去创建/** * 单例模式 懒汉式:需要的时候才创建 */public class LHStudent { private static LHStudent student; public static LHStudent getStudent() { if(student == null){ student = new LHStudent(); } retur原创 2022-02-12 16:42:35 · 285 阅读 · 0 评论 -
java == 和 equals
一、==1、用户比较基本类型(byte,float,int,long,short,double,char,boolean)比较的是值是否相等注意:比较double类型是注意精度问题double a= 4.00000000000000003;double b= 4.000000000000000003;System.out.println(a==b); // true2、比较引用类型(对象、字符串、集合等)比较的是引用地址是否相同(如果引用地址相同,同一时刻值也是相同的).原创 2021-12-28 11:16:26 · 210 阅读 · 0 评论 -
多线程批量插入数据库
背景目前有12万数据需要打入到mysql数据库准备开发环境 :Java、JdbcTemplate、ThreadPoolTaskExecutor(线程池)数据库:MySql代码:1、配置线程池import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.schedu原创 2021-09-30 11:05:20 · 4331 阅读 · 4 评论 -
XML文件解析--java
背景有一批xml文件,需要从xml文件标签中提取对应的信息(只对xml文件进行信息读取操作),选用的库:SAXxml样例片段<?xml version="1.0" encoding="UTF-8" standalone="yes"?><root zoom="1" isNewResult="true" markRotationAngle="0" imgAttr="bad"> <rect index="1" text="hello world" label原创 2021-09-29 19:41:57 · 84 阅读 · 0 评论 -
idea创建springboot+jdbcTemplate多数据源
一、Idea创建工程进入Idea ,file-->new->project...Next (环境、版本号等设置)Next (选择核心依赖组件)Next (给新建的项目起个名字,以及设置保存地址、工作目录)Finish,完后项目创建。二、创建工程层级目录config:多数据源配置目录 controller:请求入口,控制层 dao:持久层,jdbcTemplate操作数据库 pojo:数据库表对应的实体对象...原创 2021-03-23 15:38:20 · 677 阅读 · 0 评论 -
springBoot+mybatis多数据源
介绍使用idea创建springboot项目,使用mybatis链接mysql数据库(多数据源),使用druid(阿里巴巴)的连接池。工程整体目录一、pom.xml文件配置<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi原创 2021-02-19 14:49:38 · 293 阅读 · 0 评论 -
Idea搭建简单springboot项目的详细教程(三)创建目录结构与基础dao、mapper.xml...
一、通过插件自动生成mapper.xml1、安装better-mybatis-gener 插件2、连接数据库3、 自动生成基础代码原创 2020-10-24 20:20:49 · 1208 阅读 · 0 评论 -
Idea搭建简单springboot项目的详细教程(二)配置application.properties/application.yml文件
数据源配置1、application.properties#服务端口server.port=8080#配置数据源的类型 数据源是org.apache.tomcat.jdbc.pool.DataSourcespring.datasource.type=com.alibaba.druid.pool.DruidDataSource#驱动的全限定类名spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver#连接池数据源初始化大原创 2020-10-20 16:20:05 · 3862 阅读 · 0 评论 -
SpringBoot 启动多环境配置
1、application.properties 格式创建三个配置文件多环境配置的文件名需要满足application-{profile}.properties的格式,其中{profile}对应你的环境标识application.properties 默认启动文件application-dev.properties 开发环境配置文件application-prod.properties 生产环境配置文件再application.pr...原创 2020-08-15 17:33:47 · 797 阅读 · 0 评论 -
JDBC 预编译时间存取
jdb连接 /** * 获取数据库连接 * @return */ public static Connection getConnection(){ String driverClassName = "com.mysql.cj.jdbc.Driver"; //启动驱动 Connection con = null; //连接 PreparedStatement pstmt = null;原创 2020-08-14 10:38:44 · 323 阅读 · 0 评论 -
Java 枚举类实现
public enum MsgType { REQ_MESSAGE_TYPE_TEXT("text","文字"), RESP_MESSAGE_TYPE_NEWS("news","图文"), MESSAGE_EVENT("event","事件"), MESSAGE_SUBSCRIBE("subscribe","订阅"), MESSAGE_SCAN("SCAN","已关注时触发"), MESSAGE_UNSUBSCRIBE("unsubscribe","取消关注.原创 2020-08-11 20:23:09 · 92 阅读 · 0 评论 -
JAVA zip文件下载
服务端代码:返回OutputStream/** * 下载zip * @return */ @CrossOrigin @GetMapping(value = "downloadOcrZip") public void downloadOcrZip(HttpServletResponse servletResponse){ try { // 获取压缩文件流 InputStream zipS原创 2020-08-11 20:18:10 · 417 阅读 · 0 评论 -
JAVA 实现文件的zip压缩
压缩工具类代码package com.toycloud.awaken.platform.util;import org.springframework.beans.factory.annotation.Value;import org.springframework.stereotype.Component;import java.io.*;import java.util.zip.ZipEntry;import java.util.zip.ZipOutputStream;/**原创 2020-08-11 17:27:03 · 381 阅读 · 0 评论 -
正则表达式使用---正则验证ObjectId
1、js正则匹配js 匹配ObjectId 格式的数据含义:24位16位的数字,每个数字必须是0-9或者a-f或者A-F/^[0-9a-fA-F]{24}$/.test("5f292662b963b049a035165b")结果:true 2、正则表达式String pattern = "^[0-9a-fA-F]{24}$";Boolean bool= Pattern.matches(pattern, id);...原创 2020-08-08 21:09:57 · 772 阅读 · 2 评论 -
springboot多线程读取百万级数据写入文件
1、springboot 配置线程池package com.toycloud.awaken.platform.config;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.scheduling.annotation.EnableAsync;import org.spr原创 2020-08-08 21:07:51 · 4968 阅读 · 3 评论 -
JAVA 数据写入txt文件
/** * 将字符串写入文件中 * @param str * @throws IOException */ public static void writeDataToFile(String str) throws IOException { //文件目录 File writefile; BufferedWriter bw; boolean append = true; // 是否追加 .原创 2020-08-07 16:51:18 · 8655 阅读 · 0 评论 -
JAVA Map<String,Object> 与xml的转换
1、map-->xml/** * @将Dictionary转成xml * @return 经转换得到的xml串 **/ public static String toXml(Map<String,Object> parm) { StringBuffer xml = new StringBuffer(); xml.append("<xml>"); if(parm != null.原创 2020-08-07 16:22:00 · 699 阅读 · 0 评论 -
FreeMarker 导出数据(包含图片、多张图片)成word文档
描述:使用FreeMarker模板导出word文档,其中包含文字信息,图片(一张或者多张)等。自己再项目中遇到的需求,通过借鉴广大网友的力量,整理了一套完整的功能接口和实现过程。具体实现:一、确定需要导出的word文档样式和内容。例如:上图为想要导出的word文档的基本版式,其中的变量都是可以动态改变,图片也是动态更改一张或者多张。二、将上面准备好的word文档的模板另存为...原创 2019-02-15 14:56:37 · 2117 阅读 · 1 评论 -
SpringBoot过滤器编写(简单登录过滤器为例)
首先,大家都知道在有web.xml文件的项目中,我们直接在web.xml文件中配置过滤器就可以了,然而springboot框架中一般没有web.xml文件,那么我们在springboot中仍然有两种方式配置过滤器。方案一:通过注解的方式配置过滤器(两个注解)@WebFilter(注解一)我们需要在过滤器实现类上添加@WebFilter注解,此注解可以设置url匹配模式,过滤器名称等。@...原创 2019-12-11 18:53:03 · 1879 阅读 · 0 评论 -
JPA 条件 排序 分页 查询
Sort sort = new Sort(Sort.Direction.ASC, "id"); Pageable pageable = new PageRequest(0, 1, sort); List<RongProductSort> rongProductSortList=this.productSortRepository.findById(id...原创 2020-02-27 10:47:23 · 1166 阅读 · 0 评论 -
Jpa Specification 实现 and和or 同时使用查询
同时使用and和or的查询//FriendNumResult 自定的返回类型//FriendNumParam 自定义的封装参数的类型public FriendNumResult friendNum(FriendNumParam friendNumParam) { FriendNumResult friendNumResult=new FriendNumResult()...原创 2020-02-28 15:20:19 · 8347 阅读 · 2 评论 -
JPA 中 findById()踩过的坑
问题描述://RongProducts 实体类 RongProducts products = this.rongProductsRepository.findById(oc.getProId().intValue());//这种写法,会一直报错,让修改为Optional<RongProducts > products = this.rongProductsRepo...原创 2020-02-28 17:00:38 · 4615 阅读 · 0 评论 -
Java 存取cookie
存cookieHttpServletResponse res = (HttpServletResponse)response;String userId="123456";Cookie userCookie=new Cookie("userId",userId);userCookie.setMaxAge(1*24*60*60); //存活期为一天 30*24*60*60user...原创 2020-03-09 11:29:23 · 269 阅读 · 0 评论 -
微信登录获取openid和access_token 报错 unacceptable content-type: text/plain,
错误代码: String requestUrl="https://api.weixin.qq.com/sns/oauth2/access_token?appid=" + rongWxSet.getWxAppid() + "&secret=" + rongWxSet.getWxSecret() + "&code=" + wx_code + "&grant_type=au...原创 2020-03-11 09:07:39 · 1262 阅读 · 0 评论 -
@RestController 与@Controlle
@RestController加在类上面的注解,则整个类中所有的方法,都是将json/xml数据发送到前台页面,而不是返回视图页面。@Controlle加在类上面的注解,使得类里面的每个方法都返回一个试图页面。@Controllerpublic class DemoController{ public String demo(){ return "...原创 2020-03-12 10:04:54 · 172 阅读 · 0 评论 -
微信支付签名、统一下单流程与代码
开发步骤1、自己是先把必要的参数要的参数放到了Map中,下面是简化的代码,至于具体怎么封装返回值与参数的,大家根据自己需要2、通过参数生成签名:将参数(key=val格式)按照字典循序排序--->在末尾加上keys键值对--->进行加密算法3、将参数形成的xml,并调用微信统一下单接口,获得返回值 Map<String,Object> dat...原创 2020-03-19 10:00:33 · 1091 阅读 · 0 评论 -
微信签名算法验证通过,但微信仍然返回签名错误的解决
问题描述:使用springBoot中RestTemplate发送post请求,使用HMAC-SHA256加密方式,通过签名验证工具校验签名通过但是仍然返回签名错误状态提示。微信提供的签名验证工具:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=20_1自己的xml<xml> <time_exp...原创 2020-03-19 10:21:30 · 1977 阅读 · 0 评论 -
Java 生成 水印 图片
直接上代码/** * 在图片上生成图片水印 * @param Path 原服务器图片路径 底图背景图片 * @param Path_syp 生成的带图片水印的图片路径 (最终生成的图片保存路径) * @param Path_sypf 水印图片路径 需要添加的水印图片 * @param fileName 生...原创 2020-04-10 14:27:02 · 317 阅读 · 0 评论 -
Java 实现图片上面添加文字
直接上代码import javax.imageio.ImageIO;import javax.imageio.stream.ImageOutputStream;import javax.swing.*;import java.awt.*;import java.awt.font.FontRenderContext;import java.awt.geom.Rectangle2D;...原创 2020-04-18 09:31:39 · 3498 阅读 · 0 评论 -
数组中所有值转成一个字符串
问题描述:有个数据或者arrayListint data[] = {1, 2, 4, 11, 32}想要得到String str = "1,2,4,11,34";实现方法:String str= String.join(",",data);原创 2020-04-20 19:43:43 · 804 阅读 · 0 评论 -
Java中double转BigDecimal的注意事项
问题:BigDecimal countTurnover = new BigDecimal(double val); //不靠谱解释:首先是BigDecimal的double参数构造,在官方JDK文档中对这个构造是这么描述的:public BigDecimal(double val)Translates a double into a BigDecimal which is the exact decimal representation of the double's binary .转载 2020-05-20 11:15:59 · 360 阅读 · 0 评论