- 博客(22)
- 收藏
- 关注
原创 Freemarker+iText7用Java生成pdf文档,pdf添加图片,html转pdf
要求生成如下格式的报告,一共有十种。因为本体是一个表格,所以大概的思路是用html画出这个表格,然后将html字符串转成pdf文件返回前端下载。技术方面选择用Freemarker画好html模板,然后后端把数值填好之后生成html字符串,最后把html字符串转成pdf文件返回前端下载。
2024-07-16 14:57:15
743
1
原创 Docker运行mysql镜像时设置的密码不生效
运行docker exec -it mysql_ooblog bash进入容器内部时,发现使用密码xxx确实无法进入到mysql,在尝试几个历史密码后误打误撞成功。大概率是容器创建报错而自动exit,用docker ps -a就可以看到容器当前处于什么状态,然后用docker logs (容器名) 命令查看错误日志排查。这种情况可以在内部看一下名为mysql的数据库的user表,看host字段为%的一列是否都为N,如果是,那代表外界无法访问,可以手动改成Y。如有错误请在评论区指出,多谢。
2024-05-11 16:17:24
704
3
原创 Idea EasyCode插件
在指定区域修改好自己的模板后,就可以在实时调试的位置点击右侧>按钮预览效果,看不懂也没关系,多试试总能调出想要的效果,在底下另附一份删除GETSET方法和序列化相关内容,添加Lombok注释的实体类模板供大家直接使用。##引入宏定义##使用宏定义设置回调(保存位置与文件后缀)##使用宏定义设置包后缀##使用全局变量实现默认包导入##使用宏定义实现类注释信息#tableComment("实体类")@Data*/#endprivate $!#end。
2023-11-16 11:35:38
599
1
原创 腾讯云COS上传文件出现数据损坏问题
给metadata的ContentLength属性赋值所要传输文件字节流的字节数.桶中能正常接收到文件,但是文件出现数据损坏,控制台报错为。另外COS上传文件的工具类分享给大家.
2023-10-25 20:46:30
4687
1
原创 JDK部分新特性
1属性为private final, 因而record不能改变其成员变量的值2lombok可以控制不同成员变量暴漏与否,更加灵活3lombok的builder设计模式为多成员变量的类带来更易读的构造方法总而言之,少量成员变量且不会更改、作为数据载体的类更适合用record。
2023-10-08 21:26:42
83
1
原创 Jwt(Json Web Token)
用户在打开浏览器,直到关闭浏览器,这是一次会话(session), session是一个域对象生命周期:request
2023-05-12 16:33:38
84
原创 MYSQL事务
一个完整的,不可再分的DML业务逻辑单元.e.g. A向B转账一万块,两个update语句组成这个事务,如果第一个执行完,程序中断,就会产生错误.
2023-05-09 22:26:40
66
原创 JavaSE-注解
Override注解的方法必须是重写父类的方法,否则编译器会报错@Deprecated标注的元素已过时元注解@Target(ElementType.METHOD)被标注的注解只能出现在方法上@Retention(RetentionPolicy.SOURCE 该注解只被保留在java源文件中/CLASS 该注解只被保留在class文件中。
2023-05-09 21:53:17
114
原创 JavaSE-反射机制初步
idea在运行时,命令行的起始位置就是项目的src文件夹,所以Class.forName()方法中类的路径不建议写死,可以通过以下方法改进其灵活性,前提是类必须在类路径(即src目录)下。java.lang.reflect.Field 属性。----java.lang.reflect.Method 方法。两个 相同类 的Class文件 内存地址相同,都指向保存在方法区的同一个字节码文件。,而在类加载时,会执行类中静态代码块中的代码。
2023-05-06 22:58:01
77
原创 Java网络编程
使用Socket类可以把两个进程之间的通信看作一个流,并通过字节流的形式进行数据的传输。1.建立套接字2.监听3.建立连接4.通信5.关闭Socket,IO流。
2023-03-30 19:07:16
73
原创 数据结构-并查集
每个集合用一棵树来表示,树根的编号就是整个集合的编号,每个节点存储了它的父节点,p[x]表示x的父节点。2.如何求x的集合编号:while(p[x]!3.如何合并两个集合,他们的编号分别是p[x],p[y]:p[x] = y。1.将两个集合合并 2.询问两个元素是否在一个集合当中。1.如何判断树根:if(p[x] == x)
2023-03-30 14:10:13
56
原创 Java比赛技巧-用BufferedReader代替Scanner
用竞赛在线评判系统(OJ)编程时,如果要从标准输入(System.in)读入的数据量非常大,使用Scanner类虽然简单,但效率可能偏低,因而可能导致程序超时或内存占用过大。此时可以尝试改用带缓冲的BufferedReader类读取数据以提高效率,而且数据量越大,差异越明显。
2023-03-23 19:03:25
280
原创 JDBC学习笔记
2.获取连接(表示JVM的进程和数据库进程之间的通道打开了,这属于进程之间的通信,使用完后记得关闭通道)。6.释放资源(使用完资源后一定要关闭资源,Java和数据库之间属于进程间的通信,开启之后一定要记得关闭)其中事务2后修改的,修改之后准备提交的时候,发现版本号是1.2 ,和它最初读的版本号不一致。其中事务1先修改了,修改之后看了版本号是1.1 ,于是提交修改的数据,将版本号修改为1.2。1.注册驱动(告诉Java程序,即将连接的是哪个品牌的数据库)1.JDBC中的事务自动提交的,什么是自动提交?
2022-09-29 20:46:56
88
原创 JAVA中Map接口的一些常用方法
1、V put(K key, V value)向map集合中添加Key为key,Value为value的元素,当添加成功时返回null,否则返回value。就是说Map集合中的Key是不能重复的,这就类似于Set集合中元素不能重复,但是Map集合中的Value是可以重复2、void putAll(Map<? extends K,? extends V> m)向map集合中添加指定集合的所有元素3、void clear()把map集合中所有的键值删除4、boolean
2022-05-13 20:59:03
285
原创 JAVA中List接口的一些常用方法
实现Collection接口 其中的方法都可以用。void add(int index, E element)//在指定位置插入元素,后面的元素都往后移一个元素。boolean addAll(int index, Collection<? extends E> c)//在指定的位置中插入c集合全部的元素,如果集合发生改变,则返回true,否则返回false。E get(int index)intindexOf(Objecto)//返回list集合中第一次出现o对象的索引位..
2022-05-02 22:51:51
709
空空如也
easyexcel导出文件出现大量问号
2024-05-30
TA创建的收藏夹 TA关注的收藏夹
TA关注的人