![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 57
yannischen
yannis.club
展开
-
java之Struts2实现用户登录过滤
在项目中难免遇到防止用户非法登录的问题。处理方式,在Web.xml中增加过滤器的配置 MyFilter com.bohui.ipview.action.MyFilter LOGIN_URL /jsp/login.jsp HO原创 2012-06-28 17:43:55 · 757 阅读 · 0 评论 -
svg自定义菜单的动态实现
svg自定义菜单的实现svg也使用过几次了,但是仍不是太熟练。最近做项目遇到新的问题。用户希望右键我在svg上生成的圆,产生自己的菜单,左键点击进入对应的别的操作。即,也拓展原有的右键功能,同时保留之前的左键功能。实现的具体思路,感谢强大的互联网,找到了几个有用的方案。第一步先做了静态菜单。实现方式,num1: 在svg里面直接添加下列节点 <defs> ...原创 2013-02-21 15:52:01 · 148 阅读 · 0 评论 -
java处理office文档与pdf文件(一)
需求说明:用户可以上传word,excel,ppt,pdf文件。在页面能够预览该文件,并可以通过搜索,找到对应的文件记录。使用技术:通过jacob将office转化为html,使用poi进行文件提取;在前期调研的时候,搜索其他将office转化为html的技术,发现其转化之后的页面都不怎么逼真。但是,使用jacob转化的时候样式还可以就是有一点,该项目必须部署在windows环...2013-08-22 12:06:50 · 109 阅读 · 0 评论 -
java处理office文档与pdf文件(二)
该部分主要内容:文件上传,以及office文件和pdf的html处理,以及提取text// 根据服务器的文件保存地址和原文件名创建目录文件全路径 File file = this.getFile(); String url = ""; String tempFile = ""; String fileFolder = ""; //上传文件路径 String h...2013-08-22 16:55:04 · 125 阅读 · 0 评论 -
在Eclipse下使用ant,build项目报jpeg does not exist
在Eclipse下使用Ant,build项目时,报package com.sun.image.codec.jpeg does not exist 错误。导致编译通不过。环境:Eclipse Kepler 、Ant 1.6、JDK1.7.0原因:在JDK1.7+时,Oracle不允许使用sun.*的jar。具体参见http://www.oracle.com/technetwork/java...原创 2015-01-16 11:07:03 · 105 阅读 · 0 评论 -
JAVAEE面试之Hibernate缓存
Hibernate缓存分为两类:包括一级缓存(session级别)、二级缓存(sessionFactory级别)以及查询缓存。一、Session缓存(又称作事务缓存):缓存范围:缓存只能被当前Session对象访问。缓存的生命周期依赖于Session的生命周期,当Session被关闭后,缓存也就结束生命周期。这就是一级缓存。Hibernate一些与一级缓存相关的操作(时间点):数...原创 2015-01-28 15:14:56 · 74 阅读 · 0 评论 -
FTP上传核心方法
核心处理FTP上传的方法假如FTP不限制上传网速的话,基本能达到10M/s(局域网内)/** * 上传文件-FTP方式 * @param ftp FTPClient对象 * @param path FTP服务器上传地址 * @param filename 本地文件路径 * @param inputStream 输入流 ...原创 2016-07-27 20:26:30 · 133 阅读 · 0 评论 -
java对File的特殊操作
在项目中不时会遇到一些特殊的文件处理方法,现记录几个不常见的方法。//获取系统的临时文件夹String folder=System.getProperty("java.io.tmpdir");2016-08-09 15:05:03 · 80 阅读 · 0 评论 -
在spring下获取分类下的所有子类
我们一般使用java的时候更多的时候是获取子类的父类是谁。或者多态的使用具体子类。但是有时候的业务会要求你拿到父类下的所有子类。那么该怎么做呢?注意:子类不一定在同一个包里。 1.在所有的子类上加上自定义注解,全局获取使用自定义注解的类。即为所有的子类。该方式未使用,但肯定可以实现。暂不做讨论,有机会在后面予以补充。 2.在全局类加载的过程里比对 具体的类是否是你父类的...2016-09-28 11:18:28 · 1317 阅读 · 0 评论 -
list对象复制问题
Java中的List.addAll复制对象测试代码import java.util.ArrayList;import java.util.List;/** * @author yannis* @date create time:2016年10月31日 上午11:10:31 * @version 1.0 * @parameter * @since ...2016-10-31 11:22:18 · 122 阅读 · 0 评论 -
int数组交并差集
public int[] operate(int[] a, int[] b, String operation){ Set<Integer> aSet = new TreeSet<>(Arrays.stream(a).boxed().collect(Collectors.toList())); Set<Integer> bSet = new...2017-06-08 00:23:32 · 98 阅读 · 0 评论 -
List与String数组转换
List 转换为 String数组List<String> list = new ArrayList<String>(); list.add("a1"); list.add("a2"); String[] toBeStored = list.toArray(new String[list.size()]); String数组转...原创 2017-08-23 09:38:51 · 367 阅读 · 0 评论 -
字符串前面或后面补零
public static String addZeroForNum(String str, int strLength) { int strLen = str.length(); if (strLen < strLength) { while (strLen < strLength) { StringB...原创 2017-12-01 09:59:55 · 1618 阅读 · 0 评论 -
BigDecimal小数保留两位,末尾为0的小数保留整数位
public static void main(String[] args) { DecimalFormat df = new DecimalFormat("###.##"); BigDecimal b1 = new BigDecimal("28.0109"); BigDecimal b2 = new BigDecimal("28.00"); ...2018-01-31 11:13:16 · 3683 阅读 · 0 评论 -
Java源码分析Flag
新年伊始,立个Flag.Java9 源码分析与学习。后面持续更新。2018-03-01 13:00:24 · 216 阅读 · 0 评论 -
Finally使用时报"finally block does not complete normally"
在Eclipse中使用try,catch,finally时会遇到警告写道finally block does not complete normally 原因:1、不管try块、catch块中是否有return语句,finally块都会执行。2、finally块中的return语句会覆盖前面的return语句(try块、catch块中的return语句),所以如果finall...原创 2018-06-21 10:24:36 · 215 阅读 · 0 评论 -
Spring内异常 application exception overridden by commit exception
在执行某一操作时,意外发现自己定义的异常,无法被外面的Controller catch到。追查发现在service内是可以正常打印异常信息,但外层Controller仅能拿到一个事务回滚的roolback异常。仔细查看错误信息: application exception overridden by commit exception 应用自定义异常被事务异常覆盖了。 ...2018-08-10 16:23:09 · 6301 阅读 · 2 评论 -
JAVA中的线程池实现
JAVA线程池的实现JAVA中的线程池实现Java ExecutorsnewCachedThreadPoolnewFixedThreadPoolnewSingleThreadExecutornewScheduledThreadPoolThreadPoolExecutorJAVA中的线程池实现在JDK1.5之后,JAVA增加了线程池的实现.这里简要描述一下相关的两个类Executors以及Thr...原创 2019-06-12 14:29:35 · 306 阅读 · 0 评论 -
前台页面分页对总页数的判断
java对总页码数的判断totalPageNum 为总页数,totalRecord 总记录数,pageSize 每页显示数据数比较常用的1、int totalPageNum = (totalRecord %pageSize == 0)?(totalRecord / pageSize ):(totalRecord / pageSize +1 ) 个人推荐的...2013-05-24 11:57:18 · 126 阅读 · 0 评论 -
[org.hibernate.util.JDBCExceptionReporter] - Cannot load JDBC driver class 'net.
今天在项目开发过程中遇到的比较诡异的问题之[org.hibernate.util.JDBCExceptionReporter] - Cannot load JDBC driver class 'net.sourceforge.jtds.jdbc.Driver'。解决办法,在项目部署的tomcat的lib文件夹中加入jtds.jar解决问题。但是后来在同事那边发现,他那边tomcat的lib文件夹中...原创 2013-05-22 16:31:37 · 590 阅读 · 0 评论 -
java中奇偶数的判断
在我的代码编写中,判断一个数字是否奇偶。经常的方法是public boolean isOdd(int a){ if(a%2 == 1){ //是奇数 return true; } return false;}但是这样有一半的时候是错误的。因为这里并没有考虑负数的情况。System.out.println((-1)%2);原创 2017-04-10 10:19:47 · 1179 阅读 · 0 评论 -
fmt标签进行格式化
在项目中可能会遇到一种情况,使用new Date()向Oracle数据库中插入数据。但是在页面显示的时候通过c标签实体.属性的时候,你会发现对于日期类型在页面展示的时候会发现其展示为2004-5-31 23:59:59.0 这种情况。对此的处理:1、使用日期格式化,在后台对数据指定格式化格式,再重新组装在实体中。2、就是使用今天也说的fmt标签。在页面中引入 按照指定格原创 2017-04-10 10:21:24 · 432 阅读 · 0 评论 -
使用fn函数控制页面显示内容
在使用EL的时候,不可避免的遇到,截取字符串,判断字符串长度等情况。这里给出简单的通过fn函数操作字符串的deamon。1、页面引入标签 2、对内容的处理= 100}'>${fn:substring(dutyLog.content,0,100)}...${dutyLog.content} ${fn:length(dutyLog.content)}获取dutyLog.cont原创 2017-04-10 10:21:32 · 284 阅读 · 0 评论 -
[org.hibernate.util.JDBCExceptionReporter] - Cannot load JDBC driver class 'net.
今天在项目开发过程中遇到的比较诡异的问题之[org.hibernate.util.JDBCExceptionReporter] - Cannot load JDBC driver class 'net.sourceforge.jtds.jdbc.Driver'。解决办法,在项目部署的tomcat的lib文件夹中加入jtds.jar解决问题。但是后来在同事那边发现,他那边tomcat的lib文件夹中原创 2017-04-10 10:22:08 · 508 阅读 · 0 评论 -
前台页面分页对总页数的判断
java对总页码数的判断totalPageNum 为总页数,totalRecord 总记录数,pageSize 每页显示数据数比较常用的1、int totalPageNum = (totalRecord %pageSize == 0)?(totalRecord / pageSize ):(totalRecord / pageSize +1 ) 个人推荐的2原创 2017-04-10 10:22:26 · 1119 阅读 · 0 评论 -
在Eclipse下使用ant,build项目报jpeg does not exist
在Eclipse下使用Ant,build项目时,报package com.sun.image.codec.jpeg does not exist 错误。导致编译通不过。环境:Eclipse Kepler 、Ant 1.6、JDK1.7.0原因:在JDK1.7+时,Oracle不允许使用sun.*的jar。具体参见http://www.oracle.com/technetwork/java/原创 2017-04-10 10:24:31 · 561 阅读 · 0 评论 -
在spring下获取分类下的所有子类
我们一般使用java的时候更多的时候是获取子类的父类是谁。或者多态的使用具体子类。但是有时候的业务会要求你拿到父类下的所有子类。那么该怎么做呢?注意:子类不一定在同一个包里。 1.在所有的子类上加上自定义注解,全局获取使用自定义注解的类。即为所有的子类。该方式未使用,但肯定可以实现。暂不做讨论,有机会在后面予以补充。 2.在全局类加载的过程里比对 具体的类是否是你父类的子类原创 2017-04-10 10:25:30 · 4463 阅读 · 0 评论 -
list对象复制问题
Java中的List.addAll复制对象测试代码import java.util.ArrayList;import java.util.List;/** * @author yannis* @date create time:2016年10月31日 上午11:10:31 * @version 1.0 * @parameter * @since *原创 2017-04-10 10:25:47 · 1018 阅读 · 0 评论 -
下载文件时,文件名乱码问题
在文件下载时通过在报文头中设置文件名来设置下载的文件名。例response.setHeader("Content-Disposition", "attachment;fileName=" + fileName) 但假如文件名为中文的时候,会发现文件名乱码。处理方法是讲文件名根据不同的浏览器转码。 /** * 根据不同浏览器将文件名中的汉字转为UTF8编码的串,以便下载时能正确原创 2017-04-10 10:26:01 · 856 阅读 · 0 评论 -
[置顶] java与js的split方法
最近在做项目时发现几个问题1、java与js的split方法的结果: 使用java中的split()里面的参数为正则表达式,但是对“,”也支持。对|或者$均需使用\\进行转义。js不存在该问题。2、java与js的split之后的数组长度: 定义一字符串12$3$23$323.5$29 这个时候在java和js中split之后长度一致,均为5. 但是假如字符串为12$3$23原创 2017-04-10 10:27:01 · 302 阅读 · 0 评论 -
[置顶] java除0问题探究
今天在写代码的时候,突然发现一个小问题:double a = 0;System.out.println(a/0);这部分竟然出乎我意料的没有报除零异常。而是打印NaN。思索之后,感觉问题关键可能是出在数据类型上。修改a为int类型。果然出现熟悉的/zero错误。这时候,突然想起,以前看过文章说过该问题,但现在的我已经忘记了当时的思想。所以重新寻找思路。各种搜索之后,看了看API发现问题的原创 2017-04-10 10:27:10 · 336 阅读 · 0 评论 -
[置顶] java处理office文档与pdf文件(一)
需求说明:用户可以上传word,excel,ppt,pdf文件。在页面能够预览该文件,并可以通过搜索,找到对应的文件记录。使用技术:通过jacob将office转化为html,使用poi进行文件提取;在前期调研的时候,搜索其他将office转化为html的技术,发现其转化之后的页面都不怎么逼真。但是,使用jacob转化的时候样式还可以就是有一点,该项目必须部署在windows环境上原创 2017-04-10 10:27:29 · 326 阅读 · 0 评论 -
[置顶] java处理office文档与pdf文件(二)
该部分主要内容:文件上传,以及office文件和pdf的html处理,以及提取text// 根据服务器的文件保存地址和原文件名创建目录文件全路径 File file = this.getFile(); String url = ""; String tempFile = ""; String fileFolder = ""; //上传文件路径 String hz原创 2017-04-10 10:27:40 · 411 阅读 · 0 评论 -
fmt标签进行格式化
在项目中可能会遇到一种情况,使用new Date()向Oracle数据库中插入数据。但是在页面显示的时候通过c标签实体.属性的时候,你会发现对于日期类型在页面展示的时候会发现其展示为2004-5-31 23:59:59.0 这种情况。对此的处理:1、使用日期格式化,在后台对数据指定格式化格式,再重新组装在实体中。2、就是使用今天也说的fmt标签。在页面中引入<%@ ...2013-03-12 15:40:33 · 166 阅读 · 0 评论 -
使用fn函数控制页面显示内容
在使用EL的时候,不可避免的遇到,截取字符串,判断字符串长度等情况。这里给出简单的通过fn函数操作字符串的deamon。1、页面引入标签<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%><%@ taglib uri="http://java.sun.com/jsp/jstl/functio...2013-03-22 11:30:18 · 76 阅读 · 0 评论 -
java将string转化为int
问题一:如何将数字类型的字符串转化为int类型。因为之前对该部分认识不够清晰,特作分析。 String str = "100";Integer.parseInt(str);Integer.valueOf(str);(int)str; 对于上面的3种转化方式, 第一种Integer.parseInt(str); 刚开始想当然的以为其转化...2013-05-08 23:30:47 · 2982 阅读 · 0 评论 -
java中奇偶数的判断
在我的代码编写中,判断一个数字是否奇偶。经常的方法是[code="java"]public boolean isOdd(int a){ if(a%2 == 1){ //是奇数 return true; } return false;}[/code]但是这样有一半的时候是错误的。因为这里并没有考虑负数的情况。[code="j...原创 2012-08-22 15:25:04 · 396 阅读 · 0 评论 -
Spring Boot或Cloud的普通类如何获取service实现
Spring Boot或Cloud的普通类如何获取service实现我们在便利使用SpringBoot或SpringCloud的时候,很多时候会遇到一种场景,想在utils的工具类中调用被Spring托管的service.那么我们该如何优雅的实现呢?Num1: 使用PostConstructimport java.util.ArrayList;import java.util.HashM...原创 2019-06-13 14:59:03 · 3221 阅读 · 0 评论