
java
鲁肃小生
每周一搏,持之以恒。。不知道为什么,就自己去弄懂为什么。。别问那么多为什么。。。
展开
-
ThreadLocal深度解析
在网上见过了太多了关于ThreadLocal的文章,各说各的理,都说是线程安全的,但又说不出哪里体现出线程安全,又说内存异常,又很难解释为什么会造成内存溢出,算了,还是自己看源码研究把,这篇博客就是自己在这个背景下完成的。1. ThreadLocal的用途1.1 保存线程的上下文信息,在任意需要的地方可以获取,但不被多线程共享由ThreadLocal的特性可知,在同个线程里面,针对同个...原创 2020-04-01 16:56:07 · 510 阅读 · 0 评论 -
Eclipse配置Resin应用服务器
1、Eclipse安装相应的Resin插件 http://caucho.com/eclipse 访问这个链接,如果出现如下图所示,说明该链接没失效,我们就可以在Exlipse中进行插件安装了打开Eclipse的Help–>Install New Softwarem,然后点击下图的标红处 然后点击add,并且输入名字和location,location就是上提到的插件地址 然后点击“OK”原创 2017-02-19 01:08:46 · 6641 阅读 · 0 评论 -
在Linux中部署web项目 java.util.zip.ZipException: error in opening zip file
在Linux中部署web项目 首先在eclipse中把项目导出成war文件,然后通过SecureCRT上传到tomcat的webapp下,启动tomcat,tomcat会去读取webapp下面的war文件并解压 在项目启动的时候,报了java.util.zip.ZipException: error in opening zip file的异常,无法解析war文件,后来发现是因为我在上传原创 2017-01-20 23:58:02 · 1834 阅读 · 0 评论 -
antcall的 用法
前言 AntCall 任务的作用是允许在一个target的执行过程中调用并执行其他的target。例如,在打包项目前需要对项目进行编译,那么可以在打包项目的target中通过AntCall任务使得编译的target先执行。当然这种情况也可以通过target间设置depends属性来实现。AntCall任务必须在target元素内执行,这个任务不能在target元素外执行。1、antcall T转载 2017-01-21 17:43:32 · 3479 阅读 · 0 评论 -
单例模式与静态变量的区别
单例的特点:1、保证某类只存在唯一实例。2、该类本身完成自身的初始化。3、获取该唯一实例的方式非常明确,可以通过该类本身定义的静态方法getInstance()获取该类的唯一实例引用。静态变量定义某类的实例引用特点:1、该类的实例引用的静态变量可定义在任何文档类当中。2、获取该类的实例引用的静态变量,可以通过定义该静态变量的类名通过点语法进行访问该引用。3、任何位置可以对该静态变量进行重新赋值。通过转载 2017-04-03 11:02:21 · 4109 阅读 · 0 评论 -
java操作csv文件(读、写)
今天在做项目的时候,发现使用POI无法解析以csv文件结尾的文件,虽然csv文件能用Excel打开,但是csv文件没有像Excel一样有规定的电子表格形式,故使用POI无法解析csv文件,在网上找了一下,发现java有提供javacsv文件来帮忙解析csv文件。 CSV是Comma Separated Values(逗号分隔值)的英文缩写,通常都是纯文本文件。首先先来了解csv文件的基本格式:转载 2017-03-17 08:07:54 · 13645 阅读 · 0 评论 -
SpringMVC配置Swagger2
先把配置清单摆上,然后再讲下再配置的时候遇到的坑1. pom配置<!-- 这里有几点需要注意的,就是jackson的版本号与swagger的版本号问题,我尝试过jackson的版本是2.4,然后swagger的版本是2.7的,配置不成功,后面把swgger的版本号降成2.4才可以。下面的jackson不需要全部配置,只需要配置jackson-databind即可...原创 2018-07-12 17:44:12 · 14578 阅读 · 2 评论 -
安装Elasticsearch head插件
1、下载head插件wget https://github.com/mobz/elasticsearch-head/archive/master.zip2、解压插件unzip elasticsearch-head-master.zip3、进入到head目录下cd elasticsearch-head-master4、安装nodejs:需要root...原创 2018-07-14 15:46:18 · 422 阅读 · 0 评论 -
Spring不加@EnableScheduling实现定时任务
先上一段前同事写的代码,看完下面的代码,你可能会想,我滴天啊,这个类上是不是少了个@EnableScheduling注解,不然这个定时任务怎执行呢?然并卵,这个定时任务真的执行了,我僵住了。为了找这个原因,百度,谷歌我都搜了好多遍,都没能找到如何在不加@EnableScheduling的前提下进行定时任务。靠人不如靠自己,源码走起。@Service("visitcountService...原创 2018-08-02 12:03:09 · 10150 阅读 · 8 评论 -
VisualVm安装插件失败
打开VisualVM,点击工具=》插件-》可用插件报错,说叫你检查代理设置或稍后重试。当前该服务器不可用。 您可能还需要确保防火墙不会阻塞网络通信。他没说错,就是你的插件路径不可用,你可以先关闭防火墙,但还是一样的错,有503,连接超时等等,解决办法。 第一执行网址: https://visualvm.github.io/pluginscenters.html 第二找到对应的j...原创 2018-10-17 09:59:31 · 4109 阅读 · 2 评论 -
JAVA实现GMT转换北京时间
简单粗暴上代码,把获取到http的响应头的GMT时间转换成北京时间 String urlStr = "http://aaa.bbb.cc/a.pdf"; Set<String> headSet = new HashSet<>(); headSet.add("Last-Modified"); Map<String,...原创 2018-10-23 14:29:23 · 8279 阅读 · 1 评论 -
重识NIO
#NIO实战1. 重识socket编程1.1 概念传统的socket编程是bio的,是阻塞的,也就是说在单线程的情况下,serversocket只可以接受一个客户端连接,有个处理方法是,把serversocket设置为多线程的,即每次都创建一条线程来处理客户端的业务,这样serversocket可以连接多个客户端。但是线程数的暴增会增加cpu的负担,而且线程的来回切换也会降低性能。1...原创 2018-12-20 18:19:26 · 1134 阅读 · 0 评论 -
Java NIO分散读 聚集写
#Java NIO分散读 聚集写Java NIO 开始支持scatter/gather(分散读/聚集写),scatter/gather用于描述从channel中读取或者写入到channel的操作。1. 概念分散(scatter)从channel中读取是指在读操作的时候将读取的数据写入到多个buffer中,因此,channel将读取到的数据分散到多个buffer中。当一个buffer被...原创 2018-12-20 19:01:09 · 347 阅读 · 0 评论 -
用户、角色和权限开发
角色、权限规划与开发导言 最近花了一段时间在做权限开发者一块,从设计到编码,我都全程参与了,对权限开发也有了一个本质上的了解,权限管理作为一个系统最基本也是最重要的功能之一,在一个系统中是非常重要的,今天我就侃大山,聊聊我这个系统的权限开发的一些东西,与大家交流交流。原创 2017-01-03 18:10:33 · 27497 阅读 · 11 评论 -
Eclipse快捷键
Ctrl+1 快速修复(最经典的快捷键,就不用多说了) Ctrl+D: 删除当前行 Ctrl+Alt+↓ 复制当前行到下一行(复制增加) Ctrl+Alt+↑ 复制当前行到上一行(复制增加) Alt+↓ 当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了) Alt+↑ 当前行和上面一行交互位置(同上) Alt+← 前一个编辑的页面 Alt+→ 下一个编辑的页面(当然是针对上原创 2016-11-09 21:28:19 · 261 阅读 · 0 评论 -
解决tomcat中图片上传丢失问题
其实我之前都知道在tomcat中上传图片会丢失的问题,因为之前图片丢失对我的系统影响不是很大,基本上我的上传图片都是头像,所以丢失就丢失咯,我倒不在乎。可是今天我要做个广告配置,需要在后台配置广告信息,然后在手机当作banner图显示,这如果图片丢失的话就糗大了,于是我在网上找了多种方法,一一试了下,发现下面这种方法十分有效。 (1)把/tomcat/webapps/目录清空,删掉该文件夹的所有内原创 2016-05-02 22:58:50 · 13002 阅读 · 8 评论 -
在MyEclipse中统计项目行数
今天闲来无事就把自己以前做过的一些小项目拿出来看一下,把一些自己认为不好的地方又重新改一下,突然想起有人说过大学生在毕业时至少要完成多少代码才算合格,所以我就想统计一下自己做过的项目的代码量,在网上找了很多方法,后来发现在MyEclipse中也有统计行数的方法,所以特此写出来供大家参考。 具体操作如下: (1)选中你要统计行数的项目(鼠标单击项目名即可) (2)打开原创 2015-07-05 12:55:55 · 863 阅读 · 0 评论 -
在MyEclipse中统计项目行数
今天闲来无事就把自己以前做过的一些小项目拿出来看一下,把一些自己认为不好的地方又重新改一下,突然想起有人说过大学生在毕业时至少要完成多少代码才算合格,所以我就想统计一下自己做过的项目的代码量,在网上找了很多方法,后来发现在MyEclipse中也有统计行数的方法,所以特此写出来供大家参考。 具体操作如下: (1)选中你要统计行数的项目(鼠标单击项目名即可) (2)打开原创 2015-07-05 12:57:36 · 5207 阅读 · 1 评论 -
web服务器与应用服务器
一.简述WEB服务器与应用服务器的区别:1.WEB服务器: 理解WEB服务器,首先你要理解什么是WEB?WEB你可以简单理解为你所看到的HTML页面就是WEB的数据元素,处理这些数据元素的应用软件就叫WEB服务器,如IIS、apache。 WEB服务器与客户端打交道,它要处理的主要信息有:session、request、response、HTML、JS、CS等。2.应用服务器: 应用服务器如JS转载 2016-01-09 15:57:45 · 563 阅读 · 0 评论 -
Timer和TimeTask简介
java.util.Timer定时器,实际上是个线程,定时调度所拥有的TimerTasks. 一个TimerTask实际上就是一个拥有run方法的类,需要定时执行的代码放到run方法体内,TimerTask一般是以匿名类的方式创建。 Timer是一种线程设施,用于安排以后在后台线程中执行的任务。可安排任务执行一次,或者定期重复执行,可以看成一个定时器,可以调度TimerTask。Tim原创 2015-12-02 23:14:41 · 646 阅读 · 0 评论 -
MyEclipse的Console输出中文时出现乱码
Myeclipse的console出现中文乱码解决Myeclipse的中文乱码原创 2015-10-26 15:59:20 · 1663 阅读 · 0 评论 -
如何去掉MyEclipse对JS等文件的验证
最近在做一个MyEclipse项目发现我的js文件可以正常运行,但是就是在js文件中有报错,但却不影响运行,搞得项目上面有个小红叉十分碍眼。众所周知,MyEclipse对js等文件的验证是十分严格的,所以我就在网上找了几种方法来解决这个问题。 1、选中当前工程,右键单击properties,弹出properties界面 2、然后选择MyEclipse—>validation—>Exclu原创 2015-08-27 00:30:53 · 8387 阅读 · 2 评论 -
java中的IO流(2)----读取文本数据
读取文本数据原创 2015-06-07 20:35:44 · 637 阅读 · 0 评论 -
java中的IO流(1)----读取二进制文件
利用jvaa读取文本文件原创 2015-06-07 20:27:09 · 16525 阅读 · 0 评论 -
Javamail发送邮件
1、创建session (1)设置两个参数 >Properties(1、setProperty("mail.host","smto.163.com"),2、 setProperty("mail.smtp.auth","true")// 是否需要认证) >Authenticator(利用其内部类,覆盖getPasswordAuthentication()方法,并返回其构原创 2015-05-12 23:47:52 · 1764 阅读 · 0 评论 -
Myeclipse中怎样导入jdbc
myeclipse导入jdbc右键项目名,选择build path 选择configure Build path 选择libraries 选择add External Jars然后去找你的数据库驱动包的路径。原创 2015-01-11 09:49:31 · 3239 阅读 · 0 评论 -
java连接oracle数据库
学了java也有了好几个月的时间了,对于java的热爱也远超于之前那学习C++,C#等同属面向对象的语言,对于任何有关java的新闻或者新想法总是想要用代码敲一百年看自己能不能自己完成,有时甚至无法自拔,前几天刚学完网络编程,用窗体实现了服务器端和客户端之间的正常通信,但是我又想到另外一个问题,那就是我能不能模仿qq,只有登录的用户才能发送消息并且只有登录了的用户才能接收消息呢。因为我之前已经实现原创 2014-12-07 23:48:50 · 768 阅读 · 3 评论 -
Eclipse或Myeclipse导出JAR包以及如何合并两个JAR
Eclipse或Myeclipse导出JAR包以及如何合并两个JAR原创 2015-01-16 13:17:42 · 1862 阅读 · 0 评论 -
jsp或html命名规范
(1)jsp与html文件名全部小写 (2)数据/内容显示页 名称形词,多个单词用下划线分隔,要求能说明显示内容的信息,为避免冲突,可加上“_list”或者其他的单词。例如:news_message.html或file_list.jsp (3)操作处理页:名称_动词,例如:file_delete.jsp (4)名称最好从访问大刀小命名(或者是模块名_子模块名_操作的方式转载 2015-04-08 22:24:00 · 3350 阅读 · 0 评论 -
斐波那契数列
斐波那契数列的解法原创 2015-06-23 21:30:52 · 503 阅读 · 0 评论