首页
归档
友链
关于
Search
1
网易云音乐黑胶会员月月免费赠送
2,969 阅读
2
十年之约RSS聚合订阅服务上线
2,532 阅读
3
工资发放日的区别
2,215 阅读
4
rsyslogd内存占用过高解决方案
2,168 阅读
5
Nginx反代MinIO后,上传文件签名异常
2,071 阅读
零碎
标本
码海
工具
其他
登录
Search
标签搜索
北京
摄影
Java
旅行
生活
学习笔记
教程
Linux
服务器
软件
SpringBoot
日记
Windows
服务
数据库
福利
Spring
系统
SQL
前端
萧瑟
累计撰写
190
篇文章
累计收到
1,268
条评论
首页
栏目
零碎
标本
码海
工具
其他
页面
归档
友链
关于
搜索到
38
篇与
Java
的结果
2021-07-22
Java常见的工具库
Java有很多工具类库,可以大大简化代码量,提升开发效率。而这些类库早就成为了业界标准类库,大公司的内部也都在使用,来总结一下。
2021年07月22日
123 阅读
0 评论
2021-07-04
Z-File – 开源免费的个人在线分享网盘
以前也曾使用过多个自建网盘的开源程序,比如 Cloudreve、NextCloud、Evoluted Directory Listing、SeaFile 等等。而最近我又发现了一个新的非常不错的开源网盘项目——Z-File。这是一个简单好用的个人网盘应用 (目录列表程序),可支持本地存储或对接各种对象存储服务……项目介绍此项目是一个在线文件目录的程序, 支持各种对象存储和本地存储, 使用定位是个人放常用工具下载, 或做公共的文件库. 不会向多账户方向开发.前端基于 h5ai 的原有功能使用 Vue 重新开发、后端采用 SpringBoot, 数据库采用内嵌数据库.官方预览地址:https://zfile.jun6.net/本站预览地址:https://pan.bcrjl.com/文档地址: http://docs.zhaojun.im/zfile项目特点Docker 支持文件数据库 (免安装)直链功能图片模式文件夹密码忽略文件夹自定义 JS, CSS自定义目录的 readme 说明文件支持在线浏览文本文件, 视频, 图片, 音乐. (支持 FLV 和 HLS)文件/目录二维码同时挂载多个存储策略缓存动态开启, 缓存自动刷新 (v2.2 及以前版本支持) 全局搜索 (v2.2 及以前版本支持) 支持 S3 协议, 阿里云 OSS, FTP, 华为云 OBS, 本地存储, MINIO, OneDrive 国际/家庭/个人版/世纪互联版/SharePoint, , 七牛云 KODO, 腾讯云 COS, 又拍云 USS.运行预览快速部署安装依赖环境:# CentOS系统 $ yum install -y java-1.8.0-openjdk unzip # Debian/Ubuntu系统 $ apt update $ apt install -y openjdk-8-jre-headless unzip如为更新程序, 则请先执行 rm -rf ~/zfile 清理旧程序. 首次安装请忽略此选项.下载项目$ wget -P ~ https://c.jun6.net/ZFILE/zfile-1.2.1.war $ cd ~ $ mkdir zfile && unzip zfile-1.2.1.war -d zfile && rm -rf zfile-1.2.1.war $ chmod +x ~/zfile/bin/*.sh下载指定版本可以将 zfile-release.war 改为 zfile-x.x.war,如 zfile-2.2.war。启动项目$ ~/zfile/bin/start.sh用户前台: http://127.0.0.1:8080/#/main初始安装: http://127.0.0.1:8080/#/install管理后台: http://127.0.0.1:8080/#/admin详细的安装教程及介绍请参考: ZFile 文档GitHub源代码{cloud title="Zfile前端" type="github" url="https://github.com/zhaojun1998/zfile-vue" password=""/}{cloud title="Zfile后端" type="github" url="https://github.com/zhaojun1998/zfile" password=""/}
2021年07月04日
335 阅读
0 评论
2021-07-02
ubuntu安装jdk和配置环境
ubuntu手动安装jdk和两种方法配置环境变量
2021年07月02日
208 阅读
0 评论
2021-05-29
Java poi设置页脚页码奇偶数不同展示
最近遇到一个问题,就是导出word设置页脚的页码且奇偶数不同,效果如下。 贴一下代码,记录一下。/** * 创建页脚 * * @param document doc对象 * @throws IOException * @throws NoSuchFieldException * @throws IllegalAccessException */ public static void createFooter(XWPFDocument document) throws IOException, NoSuchFieldException, IllegalAccessException { Field _settings = XWPFDocument.class.getDeclaredField("settings"); _settings.setAccessible(true); XWPFSettings xwpfsettings = (XWPFSettings) _settings.get(document); Field _ctSettings = XWPFSettings.class.getDeclaredField("ctSettings"); _ctSettings.setAccessible(true); org.openxmlformats.schemas.wordprocessingml.x2006.main.CTSettings ctSettings = (org.openxmlformats.schemas.wordprocessingml.x2006.main.CTSettings) _ctSettings.get(xwpfsettings); ctSettings.addNewEvenAndOddHeaders(); XWPFFooter footer = document.createFooter(HeaderFooterType.DEFAULT); //奇数 XWPFParagraph paragraph = footer.createParagraph(); paragraph.setAlignment(ParagraphAlignment.RIGHT); XWPFRun run; run = paragraph.createRun(); run.setText("— "); CTFldChar fldChar = run.getCTR().addNewFldChar(); fldChar.setFldCharType(STFldCharType.Enum.forString("begin")); setXWPFRunStyle(run, "宋体", 14); CTText ctText = run.getCTR().addNewInstrText(); ctText.setStringValue("PAGE \\* MERGEFORMAT"); ctText.setSpace(SpaceAttribute.Space.Enum.forString("preserve")); setXWPFRunStyle(run, "宋体", 14); fldChar = run.getCTR().addNewFldChar(); fldChar.setFldCharType(STFldCharType.Enum.forString("end")); run.setText(" —"); //偶数 XWPFParagraph paragraph1 = document.createFooter(HeaderFooterType.EVEN).createParagraph(); paragraph1.setAlignment(ParagraphAlignment.LEFT); XWPFRun run1; run1 = paragraph1.createRun(); run1.setText("— "); CTFldChar fldChar1 = run1.getCTR().addNewFldChar(); fldChar1.setFldCharType(STFldCharType.Enum.forString("begin")); setXWPFRunStyle(run1, "宋体", 14); CTText ctText1 = run1.getCTR().addNewInstrText(); ctText1.setStringValue("PAGE \\* MERGEFORMAT"); ctText1.setSpace(SpaceAttribute.Space.Enum.forString("preserve")); setXWPFRunStyle(run1, "宋体", 14); fldChar1 = run1.getCTR().addNewFldChar(); fldChar1.setFldCharType(STFldCharType.Enum.forString("end")); run1.setText(" —"); } /** * 设置页脚的字体样式 * * @param r1 段落元素 * @param font 字体 * @param fontSize 字体大小 */ private static void setXWPFRunStyle(XWPFRun r1, String font, int fontSize) { r1.setFontSize(fontSize); CTRPr rpr = r1.getCTR().isSetRPr() ? r1.getCTR().getRPr() : r1.getCTR().addNewRPr(); CTFonts fonts = rpr.isSetRFonts() ? rpr.getRFonts() : rpr.addNewRFonts(); fonts.setAscii(font); fonts.setEastAsia(font); fonts.setHAnsi(font); }参考文档: poi设置word奇偶页不同-segmentfault
2021年05月29日
365 阅读
0 评论
2021-05-27
Java 基础类型互相转换
Java 基础类型互相转换,int,String 转Integer、String 转Integer、String、Integer转为int、Integer转换为float, double, long、所有类型转String
2021年05月27日
165 阅读
2 评论
2021-05-23
SpringBoot yml配置文件注入List和Map
SpringBoot 在yml配置文件注入List和Map,可动态修改,方便快速。
2021年05月23日
643 阅读
0 评论
2021-05-21
Java Spring @autowired和@resource注解的区别
区别1、@Autowired注解由Spring提供,只按照byType注入;@resource注解由J2EE提供,默认按照byName自动注入。2、@Autowired默认按类型进行装配,@Resource默认按照名称进行装配。Spring不但支持自己定义的@Autowired注解,还支持由JSR-250规范定义的几个注解。如:@Resource、@PostConstruct及@PreDestroy@Autowired由Spring提供,只按照byType注入@Resource由J2EE提供,默认按照byName自动注入@Resource有两个重要的属性:name和typeSpring将@Resource注解的name属性解析为bean的名字,type属性则解析为bean的类型。所以如果使用name属性,则使用byName的自动注入策略,而使用type属性则使用byType自动注入策略。如果既不指定name也不指定type属性,这时将通过反射机制使用byName自动注入策略。@Resource装配顺序:(1)如果同时指定了name和type,则从Spring上下文中找到唯一匹配的bean进行装配,找不到则抛出异常(2)如果指定了name,则从Spring上下文中查找名称(id)匹配的bean进行装配,找不到则抛出异常(3)如果指定了type,则从Spring上下文中找到类型匹配的唯一bean进行装配,找不到或找到多个,都抛出异常(4)如果既没指定name,也没指定type,则自动按照byName方式进行装配。如果没有匹配,则回退为一个原始类型进行匹配,如果匹配则自动装配。@Resource的作用相当于@Autowired,只不过@Autowired按byType自动注入。使用区别(1)@Autowired与@Resource都可以用来装配bean,都可以写在字段或setter方法上(2)@Autowired默认按类型装配,默认情况下必须要求依赖对象存在,如果要允许null值,可以设置它的required属性为false。如果想使用名称装配可以结合@Qualifier注解进行使用。(3)@Resource,默认按照名称进行装配,名称可以通过name属性进行指定,如果没有指定name属性,当注解写在字段上时,默认取字段名进行名称查找。如果注解写在setter方法上默认取属性名进行装配。当找不到与名称匹配的bean时才按照类型进行装配。但是需要注意的是,如果name属性一旦指定,就只会按照名称进行装配。推荐使用@Resource注解在字段上,这样就不用写setter方法了,并且这个注解是属于J2EE的,减少了与Spring的耦合。
2021年05月21日
207 阅读
0 评论
2021-05-21
Java Map中forEach小结
HashMapHashMap 继承于AbstractMap,实现了Map、Cloneable、java.io.Serializable接口。AbstractMap实现了Map接口,Map接口里面有一个forEach方法。官方解释对此映射中的每个条目执行给定操作,直到所有条目已处理或操作引发异常。除非由实现类指定,操作将在入口集迭代的顺序(如果指定了迭代顺序)。操作引发的异常将中继到调用方。解读使用了try catch 抛出的异常为ConcurrentModificationException,标示在线程并发进行读写的时候会出现异常,即,不支持并发操作。使用方法Map<Object, Object> map = new HashMap<>(); map.put("name", "xiaose"); map.put("gender", "男"); map.put("phone", "18888888888"); map.put(null, null); //1.Map的迭代 // 通用的Map迭代方式 System.out.println("==============Map的迭代======================"); for (Map.Entry<Object, Object> entry : map.entrySet()) { System.out.println(entry.getKey() + ":" + entry.getValue()); } System.out.println("===================================="); // JDK8的迭代方式 map.forEach((key, value) -> { System.out.println(key + ":" + value); });输出内容==============Map的迭代====================== null:null gender:男 phone:18888888888 name:xiaose ==================================== null:null gender:男 phone:18888888888 name:xiaose
2021年05月21日
209 阅读
0 评论
1
...
3
4