讯享网目录
IDEA链接数据库
pdf添加图片
word转PDF
pdf加密
word 添加图片
复制多页
MD5加密
运行时在控制台显示sql语句
java基础代码表
前端下载文件
JWT
压缩
删除文件夹
前端传文件到后端
后端传文件给前端下载
将jsonArray按照某个字段进行排序
每天执行一次
生成Excel
生成2003格式(xls)
生成2010以上格式(xlsx)
将单元格设置成时间格式
读取Excel文件
遍历set
遍历文件夹查找文件下的所有同类型文件
mybatis连接多数据源
返回自增id
枚举的定义和赋值
实体类转JsonObject
使用java连接linux服务器执行命令
判断字符串是否有中文
将字符串转成整形,读取字符串的数字
java 将.csv文件转换成excel
java 读取csv文件
Spring事务的回滚操作
时区问题
IDEA链接数据库
讯享网
pdf添加图片
一、依赖
二、控制层代码
讯享网
word转PDF
一、先在项目根目录中创建一个lib文件,和src文件夹同级别,在lib中导入jar包。
jar包下载链接: aspose-words-15.8.0 提取码: abbt

二、在pom文件中加入jar包
插入第三方jar包加上这句话才能打包部署到服务器

三、将License.xml直接放到resources的根目录下即可。
四、工具类
六、测试运行
pdf加密
一、依赖
二、工具类
word 添加图片
一、依赖
在lib添加jar包,去下面的链接下载,搜spire.doc或spire.doc.free
Nexus Repository Manager

二、代码
复制多页
MD5加密
一、Util类
运行时在控制台显示sql语句
在yml添加这个。最外面,从顶。
前端下载文件
方法一:必须是void才不会报错方法
方法二:
JWT
一、依赖
二、工具类
压缩
删除文件夹
前端传文件到后端
方法一:
方法二:
后端传文件给前端下载
方法一:

图片1

图片2
方法二:
将jsonArray按照某个字段进行排序
一、依赖
二、方法
每天执行一次
重点是注解
在主类上添加 注解来启用任务调度器。
easyexcel导出excel
1.先在pom添加依赖
2.在实体类字段上写注解对应excel的表头.
@ExcelProperty(value = "基因")
然后再没有用到的对应字段或者直接在类上加上注解
@ExcelIgnoreUnannotated 表示忽略未被其他 Excel 相关注解标记的字段
3.代码
多个sheet
生成Excel
生成一个工作簿 2010以上格式使用 XSSFWorkBook 对象, 2003格式使用 HSSFWorkBook 对象, 其他对象操作基本一样.
生成2003格式(xls)
public void test1() { HSSFWorkbook workbook = new HSSFWorkbook();
}
生成2010以上格式(xlsx)
@Test public void test2() { XSSFWorkbook workbook = new XSSFWorkbook();
XSSFSheet sheet = workbook.createSheet("Sheet1"); Row row0 = sheet.createRow(0); Cell cell0 = row0.createCell(0); cell0.setCellValue("序号"); cell0.setCellStyle(cellStyle); Cell cell1 = row0.createCell(1); cell1.setCellValue("姓名"); Cell cell2 = row0.createCell(2); cell2.setCellValue("成绩"); OutputStream os = null; try { os = new FileOutputStream("d:测试生成2010.xlsx"); workbook.write(os); os.close(); } catch (Exception e) { e.printStackTrace(); } } ———————————————— 版权声明:本文为CSDN博主「Trouvailless」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:java使用poi生成excel_ikt4435的博客-CSDN博客_poi生成excel
将单元格设置成时间格式
方法一:
读取Excel文件
好用
easyexcel方法
1.先在pom添加依赖
2.在实体类字段上写注解对应excel的表头.
@ExcelProperty(value = "基因")
然后再没有用到的对应字段或者直接在类上加上注解
@ExcelIgnoreUnannotated 表示忽略未被其他 Excel 相关注解标记的字段
3.1如果不做特殊处理判断不需要监听器(监听器设置为null)直接这样获取到所有行的数据。会吧每一行生成相应的实体类“BiodbDrugAnalysis”。
drugAnalysisTable.getInputStream()是传入的文件的流也可以传入路径path
BiodbDrugAnalysis.class是对应的实体类
public void batchAddDrugAnalysistest(@RequestBody MultipartFile drugAnalysisTable) throws IOException { List<BiodbDrugAnalysis> list = EasyExcel.read(drugAnalysisTable.getInputStream(), BiodbDrugAnalysis.class,null).sheet().doReadSync(); biodbDrugAnalysisService.saveOrUpdateBatch(list); }
3.2 如果要对每一行进行处理需要监听器

new BiodbDrugAnalysisListener()就是我们创建的监听器
public void batchAddDrugAnalysistest(@RequestBody MultipartFile drugAnalysisTable) throws IOException { EasyExcel.read(drugAnalysisTable.getInputStream(), BiodbDrugAnalysis.class,new BiodbDrugAnalysisListener()).sheet().doReadSync(); }
3.2.1开始创建监听器 invoke和doAfterAllAnalysed是必须的。invoke中的data是每一行的数据。
BiodbDrugAnalysis是对应的实体类
doAfterAllAnalysed是数据读取完成后的操作
processArrayList是我们自己定义的方法用来处理集合数据
一、混合读取
读取Excel的数字会变成科学计数法
读取Excel时间会变成 "21-五月-2019"
二、读取xls文件
依赖
三、读取xlsx文件
依赖
流的形式读取Excel文件
遍历set
遍历map
遍历文件夹查找文件下的所有同类型文件
mybatis连接多数据源
参考连接1(重要)
参考链接2 (有注释)
参考链接3
- 导入依赖
- 配置数据源。
- 使用 @DS 切换数据源。
@DS 可以注解在方法上或类上,同时存在就近原则 方法上注解 优先于 类上注解。
返回自增id
dao层
implement层
实体类
实体类添加PackagingCode(PackagingCode和dao中的@Options注解里面一样,不在数据库字段中)

枚举的定义和赋值
如果不打算赋值
实体类转JsonObject
添加依赖
controller
使用java连接linux服务器执行命令
判断字符串是否有中文
将字符串转成整形,读取字符串的数字
例如“123 ”转成“123”
java 将.csv文件转换成excel
java cvs转换excel - 张什么锋 - 博客园
java 读取csv文件
方法一:
方法二:
添加依赖
Spring事务的回滚操作
@Transactional 详解 示例_spring to do的博客-CSDN博客_@transactional 链接很棒不懂去看
情况一:都有事务注解,异常在子方法出现,事务生效
情况二:都有事务注解,异常在主方法出现,事务生效
情况三:只有主方法有事务注解,异常在子方法出现,事务生效
情况四:只有主方法有事务注解,异常在主方法出现,事务生效
情况五:只有子方法有事务注解,异常在子方法出现,事务不生效
一、使用实例
@Transactional 事务注解开启事务,有异常就能回滚
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); //手动回滚失误 (有时候需要有时候不需要不能就加上这句话)
二、使用实例二
结论:当无事务方法调用有事务的方法时事务不会生效, 而主方法有事务去调用其他方法,无论被调用的方法有无事务,且是否出现异常(有异常需要能够抛出不被捕获),都触发事务。
/*
- 情况一:都有事务注解,异常在子方法出现,事务生效 */ @Override @Transactional public Long addBook(Book book) { Long result = add(book); return result; }
@Transactional public Long add(Book book){ Long result = bookDao.addBook(book); int i = 1/0; return result; }
/*
- 情况二:都有事务注解,异常在主方法出现,事务生效 */ @Override @Transactional public Long addBook(Book book) { Long result = add(book); int i = 1/0; return result; }
@Transactional public Long add(Book book){ Long result = bookDao.addBook(book); return result; }
/*
- 情况三:只有主方法有事务注解,异常在子方法出现,事务生效 */ @Override @Transactional public Long addBook(Book book) { Long result = add(book); return result; }
public Long add(Book book){ Long result = bookDao.addBook(book); int i = 1/0; return result; }
/*
- 情况四:只有主方法有事务注解,异常在主方法出现,事务生效 */ @Override @Transactional public Long addBook(Book book) { Long result = add(book); int i = 1/0; return result; }
public Long add(Book book){ Long result = bookDao.addBook(book); return result; }
/*
- 情况五:只有子方法有事务注解,异常在子方法出现,事务不生效 */ @Override public Long addBook(Book book) { Long result = add(book); return result; }
@Transactional public Long add(Book book){ Long result = bookDao.addBook(book); int i = 1/0; return result; }
时区问题
国际时区 TimeZone ID列表 参考链接
时区显示名称,时差,时区ID
因为数据库时区是GMT+08:00,所以时区设置成415的GMT+08:00,时间存入是无误的,如果时区设置成309的时区是GMT,而数据库是GMT+08:00,所以存进数据库的时候会在加8小时。
415、GMT+08:00,时差:8小时,timezone ID:Etc/GMT-8 309、中国标准时间,时差:8小时,timezone ID:Asia/Shanghai
JAVA中的时区设置 参考链接
第一种方式、通过代码指定。 可以直接放在方法里面的第一行位置。也可以在系统的Main文件(系统名+Application)文件下直接设置


返回时间格式不对

方法一:好用!
在yml添加
jackson: date-format: yyyy-MM-dd HH:mm:ss time-zone: GMT+8

然后要是只要年月日就在实体类添加注解
/ * 接收日期 */ @JsonFormat(pattern = "yyyy-MM-dd") private Date receiveDate;

方法二:(不一定管用)
在实体类添加
新项目依赖
java 遍历samba(Java读取共享文件夹)
Java异步
- CompletableFuture:Java8 中新增的 CompletableFuture 类可以方便地实现异步编程。它提供了各种方法来创建、处理和组合异步任务,并且可以通过回调函数来处理异步任务的结果。
举个例子,使用 CompletableFuture 来处理异步:
- 多线程:使用 Thread、Runnable 或者 Callable 接口来创建线程,将需要异步执行的任务放在新线程中执行,通过 join() 或者 Future 来获取最终结果。
举个例子,使用 Runnable 和 Thread 实现异步:
- 回调函数:在某些场景下(例如网络请求或者 UI 事件处理),我们需要等待系统或用户的响应,这时候可以通过回调函数来实现异步。在代码中注册一个函数作为回调函数,在异步任务完成后自动调用该函数。
举个例子,在 UI 线程中开启异步请求:
实体类的分类
在SSM框架中,通常会将实体类分为三种:
- 请求参数的实体类:通常用于接收客户端请求中的数据,并传递给Controller层或Service层进行处理。该实体类包名可以根据您的项目需求自定义,但通常建议命名为(VO代表Value Object)。
- 数据库的实体类:通常用于映射数据库表和Java对象之间的关系。该实体类包名可以根据您的项目需求自定义,但通常建议命名为(POJO代表Plain Old Java Object)。
- 方法返回的实体类:通常用于封装方法调用的返回结果。该实体类包名可以根据您的项目需求自定义,但通常建议命名为(DTO代表Data Transfer Object)。
Java根据表头动态读取txt文件
也可以用“\s+”表示他会匹配连续出现的一个或多个空白字符。

java根据表头动态读取excel文
依赖
java一个项目调用另一个项目接口
创建实体类时候id自动生成的注解
@TableId(type = IdType.ASSIGN_ID)
Java启动时调用摸个接口
链接 注解(注解不支持监听任务)
split根据多个符号分割
在 Java 正则表达式中,"+" 表示匹配前面的字符或子表达式一次或多次。在这个例子中,"[,、,;;]+" 匹配任意数量的逗号、顿号或分号。
String[] b = a.split("[,、,;;]+");

如果在正则表达式 中没有加号 (),则表示只匹配单个逗号、顿号或分号。
String[] b = a.split("[,、,;;]+");
用gpt生成建表语句
我要做一个mysql表,当我导入xls时,如果xls中对应格子不存在内容,则数据库中对应值为"" 而不是null,只有三种类型,BIGINT,VARCHAR,DATETIME ,INT默认值为0,并在注释那块写上对应的列名,额外添加创建日期,修改日期,创建人和修改人,其中创建日期在创建时会自动写入当前时间,修改日期默认为创建时间,发生修改时自动写入当前时间,请基于以下列名帮我生成对应的sql语句实验名称、仪器类型、仪器名称、数据来源、下机时间。列名帮我转换成英文
引用外部yml
正常来说下面是可以的 但是他不行
另一种方法在打包的时候加上红色命令
java -jar NGS_automate_Analyse-1.5.0.0.jar --spring.config.location=D:/12/3/application-dev.yml
如果ideaa会报错在idea的

在类中调用yml的值

new 的对象怎么调用spring管理的对象
策略模式怎么写
定义策略接口(新建的类)
创建类实现上面的策略接口,在类中写每一个类的具体实现策略
第一个类
第二个类(以此类推)
写简单工厂
调用工厂
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/2892.html