后台方法
ghjzzhg
人不能活的太舒服,太舒服容易出问题
展开
-
POI3.8解析XLS和XLSX文件(大量单元格带格式空格导致内存溢出)
在java项目中解析Microsoft的office系列软件,都会用到Apache的poi包,从office2007开始office系列的文件后缀名发生了改变,所以原来低版本的poi并不支持office2007以后的文件解析。好像是从poi3.5以后才支持了2007版本的解析。如果项目中的poi版本太旧可以在http://poi.apache.org/download.html下载新版本的poi。 POI使用HSSFWorkbook解析XLS(2003版本)文件,使用XSSF...原创 2021-06-29 15:04:15 · 518 阅读 · 0 评论 -
java代码优化方法总结
就像鲸鱼吃虾米一样,也许吃一个两个虾米对于鲸鱼来说作用不大,但是吃的虾米多了,鲸鱼自然饱了。代码优化一样,也许一个两个的优化,对于提升代码的运行效率意义不大,但是只要处处都能注意代码优化,总体来说对于提升代码的运行效率就很有用了。这个观点,在现在看来,是要进行代码优化的一个原因,但不全对。在机械工艺发展的今天,服务器动辄8核、16核,64位CPU,代码执行效率非常高,StringBuilder替换StringBuffer、ArrayList替换Vector,对于代码运行效率的提升是微乎其微的,即使是.转载 2020-10-14 17:11:14 · 187 阅读 · 0 评论 -
java查询结果后并下载输出到excel(OutputStream)
1、首先查询出所有的数据,使用spring data jpa查询public Page pageQuery(PageRequest pageRequest) { return employeeDao.findAll(pageRequest); }2、查询出来后导出,设置文件名、文件类型、输出流及文件格式@Action(value="employeeAction_download")原创 2017-09-01 15:46:30 · 9192 阅读 · 2 评论 -
java中方法的重载和重写的区别
首先我们要清楚重载和重写的概念:方法的重载:让类以统一的方式处理不同类型数据的一种手段,就是在同一个类中,方法名相同,修饰符也可以相同,返回值类型也相同,但是参数的个数和参数类型不一样;方法的重写:属于java的多态,子类拓展增强父类的方法,子类的方法名和参数都和父类的方法相同。下面我们来详细原创 2017-09-21 15:01:08 · 303 阅读 · 0 评论 -
java后台百度地图经纬度和地址之间的相互转换(通过经纬度获取地址、通过地址获取经纬度)
准备工作:1、申请百度ak(v1版本的key) 百度地图开放平台链接:http://lbsyun.baidu.com/2、百度地图web服务API链接:http://lbsyun.baidu.com/index.php?title=webapi/guide/webservice-geocoding百度地图有json和xml两种形式存储数据3、导入jar包:此处通过json形式,需原创 2017-10-10 16:03:55 · 12799 阅读 · 5 评论 -
java长连接转短连接
我们经常看到短信和微博中用到短链接,短链接的主要职责就是把原始链接很长的地址压缩成只有6 个字母的短链接地址,当点击这6 个字母的链接后,又可以跳转到原始链接地址。转换原理:并不是采用压缩算法(如gzip)url的方法,越压缩长度越长。可以用MD5 算法对原始链接进行加密(这里使用的MD5 加密后的字符串长度为32 位),然后对加密后的字符串进行处理以得到短链接的地转载 2017-11-14 20:18:26 · 6827 阅读 · 2 评论 -
java中date和时间戳相互转换以及获取前一个小时的时间
1、时间戳是指文件属性里的创建、修改、访问时间。 数字时间戳技术是数字签名技术一种变种的应用。在电子商务交易文件中,时间是十分重要的信息。在书面合同中,文件签署的日期和签名一样均是十分重要的防止文件被伪造和篡改的关键性内容。数字时间戳服务(DTS:digital time stamp service)是网上电子商务安全服务项目之一,能提供电子文件的日期和时间信息的安全保护。编辑本段原创 2017-11-15 10:39:53 · 7630 阅读 · 0 评论 -
java中二维码的生成及解析(含有图片)
准备:1、com/google/zxing/core的jar包,我使用的版本是3.3.0下载地址:core的jar包下载地址2、一张图片代码:1、在新建项目中或是在已有项目中导入jar包或者在maven中直接导入2、新建类:BufferedImageLuminanceSource;二维码的尺寸规格package cn.zx.ghjmaven.action.b原创 2017-11-21 17:18:48 · 4730 阅读 · 1 评论 -
java调用百度地图的不同显示方式
1、地图上预设几个地点,并且可以查找目标 body, html,#allmap {width: 100%;height: 100%;overflow: hidden;margin:0;font-family:"微软雅黑";} 地图展示<% String scname = request.getParameter("scname"); i原创 2017-11-22 16:36:05 · 9251 阅读 · 0 评论 -
Openfire忘记密码的解密过程
openfire安装完成后,设置数据库和服务器这个时候忘记了密码怎么办?度娘了很久,有的说修改\Openfire\conf\下的openfire.xml文件;有的说删除数据库中的数据重新导入,但是我都没有试成功;可能是我没弄好;剩下的就只能对加密的密码进行解密了:1、首先在数据库的ofuser的表中找到username的值为admin的数据(openfire管理员默认为admin),然后找到对应的...原创 2018-05-08 14:04:46 · 2134 阅读 · 1 评论 -
java特殊符号转义
java开发时偶尔会遇到将特殊符号转义的情况,转义符请参考:< < 小于号> > 大于号& & 和' ' 单引号" " 双引号原创 2018-05-28 15:51:39 · 13838 阅读 · 0 评论 -
solr查询列表并高亮显示
private Map<String, Object> searchList(Map searchMap) { // 高亮选项初始化 Map<String, Object> map = new HashMap<>(); HighlightQuery query = new SimpleHighlightQuery(); // 设置高亮的域 ...原创 2019-01-17 10:13:46 · 779 阅读 · 0 评论 -
java生成唯一订单号
/** * 生成唯一订单号 * 规则:四位随机数+"M"+格式化到秒的时间+"R"+六位随机数 */ public static String getBillCode() { Random rd = new Random(); // 创建随机对象 String n = ""; //保存随机数 int rdGet...原创 2019-03-14 11:43:34 · 3167 阅读 · 0 评论 -
java腾讯企业邮箱群发邮件含图片(或附件)
package cn.zx.ghjmaven.action.bc; import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream;import java.io.InputStre...原创 2019-10-08 09:46:40 · 1274 阅读 · 0 评论 -
静态函数和非静态函数的区别(静态方法和非静态方法)
首先,静态函数只有当程序结束的时候才从内存消失,生命周期长。而非静态则是动态加载到内存,不需要的时候就从内存消失。而调用类中的静态函数,无需创建对象就可以调用了,因为当类初始化的时候,就已经加载了静态函数,所以静态函数要比对象加载的早,对象只有被创建的时候才会在堆内存中创建空间。 另外,静态函数中不能使用非静态变量,静态方法不可以定义this,super关键字(因为静态比对象先加载,而t原创 2017-07-25 16:08:53 · 6062 阅读 · 1 评论 -
RBAC新解:基于资源的权限管理(Resource-Based Access Control)
转载地址:http://www.thinksaas.cn/topics/0/150/150841.html 本文原著没找到,也是只找到转载的地址。本文讨论以角色概念进行的权限管理策略及主要以基于角色的机制进行权限管理是远远不够的。同时我将讨论一种我认为更好的权限管理方式。什么是角色当说到程序的权限管理时,人们往往想到角色这一概念。角色是代表一系列可执行的操作或责任的实体转载 2017-04-28 17:19:19 · 364 阅读 · 0 评论 -
Java String.compareTo()方法
Java String.compareTo()方法用法实例教程, 此方法如果这个字符串是等参数字符串那么返回值0,如果这个字符串是按字典顺序小于字符串参数那么返回小于0的值,如果此字符串是按字典顺序大于字符串参数那么一个大于0的值描述java.lang.String.compareTo() 方法比较两个字符串的字典。比较是基于字符串中的每个字符的Unicode值。此Strin原创 2017-04-28 17:26:14 · 684 阅读 · 0 评论 -
重定向redirect()和请求转发forward()的区别
1) forward 请求转发只能将请求转发给同一个WEB应用中的组件,而redirect还可以重定向到同一个站点的其他应用程序的资源。甚至是使用绝对URL重定向到其他站点的资源2) 调用forward 方法浏览器保持初始的URL地址,而redirect方法重定向访问结束时,浏览器的地址则会由初始地址转变为目标URL3) forward方法的调用者及被调用者之间共享相同的reque原创 2017-04-18 23:06:22 · 810 阅读 · 0 评论 -
session地址的重写
地址重写,主要是为了防止有些浏览器,为了提高安全性,禁止了Cookie的功能,而session的ID恰好是保存在web容器中和客户端的内存当中的。所以一旦禁用了cookie,session也会无法使用.所以url重写技术就诞生了.像以前的新浪邮箱就没有采用url地址重写,导致了禁用cookie的时候,是无法进行操作的. Java代码 import java.io.IOExce转载 2017-04-18 23:18:24 · 1481 阅读 · 0 评论 -
Socket网络编程
一: 单双工MyClient.java/* * 这是客户端 */package com.test1;//MyClient.javaimport java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.PrintWriter;原创 2017-05-15 15:33:00 · 289 阅读 · 0 评论 -
Java Socket编程
Java Socket编程 对于Java Socket编程而言,有两个概念,一个是ServerSocket,一个是Socket。服务端和客户端之间通过Socket建立连接,之后它们就可以进行通信了。首先ServerSocket将在服务端监听某个端口,当发现客户端有Socket来试图连接它时,它会accept该Socket的连接请求,同时在服务端建立一个对应的Socket与之进行原创 2017-05-15 15:40:12 · 213 阅读 · 0 评论 -
JAVA中Junit、静态导入、枚举和单例设计模式
知识点一:Junit的使用(有四个类Person.class、PersonTest.class、PersonTest1.class、PersonTest2.class)先写个Person类:[java] view plain copypublic class Person { public void run() {原创 2017-05-15 16:15:01 · 430 阅读 · 0 评论 -
Java高新技术之交通灯管理系统(java枚举,java线程池)
先看图,让我们先理清楚现实生活中十字路口的交通灯是怎么运行的:我们如果认真观察会发现,十字路口有12条路线。十字路口每条方向上的路线的右转车辆是不考虑红绿灯的(即图中4条黑色路线,除了一些人多的特殊地段会设置)1.首先假设你一到十字路口就看到,南北方向的直行车辆在行驶(图中两条绿色路线),其它三大路线(即2条蓝色、2条红色和2条紫色)都在等待。2.南北方向走完后,就轮到南北原创 2017-05-15 16:17:53 · 364 阅读 · 0 评论 -
Java transient关键字使用小记
今天没事撸集合的源码,撸到BeanMap的时候发现了transient关键字,没见过,所以就到网上了解了下,发现这篇文章不错,分享给大家~~1. transient的作用及使用方法 我们都知道一个对象只要实现了Serilizable接口,这个对象就可以被序列化,java的这种序列化模式为开发者提供了很多便利,我们可以不必关系具体序列化的过程,只要这个类实现了Seriliz原创 2017-08-01 14:17:14 · 152 阅读 · 0 评论 -
java中cookie设置上次登录时间
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setCharacterEncoding("UTF-8"); response.setHeader("Content-type", "text/html;charset=UTF-8");原创 2017-01-15 21:02:17 · 1144 阅读 · 0 评论 -
JAVA算法策略模式之商品打折 满x送x
场景:某超市收银台,营业员根据客户购买的商品和数量向客户收费.问题:超市某段时间会有打折活动(例如打8折),满XXX元送XXX元活动,满XXX元送XXX积分活动等等.算法类,可能是打折,满XX送XX等等package com.hebo.test.designmode.strategy;public abstract class Strategy { /原创 2017-05-15 16:42:55 · 7357 阅读 · 0 评论 -
注解开发嵌入式主键@EmbeddedId
用于定义复合主键 方法1: (1)编写一个嵌入式主键的类Demo作为嵌入式主键类,要满足以下几点要求。 1.必须实现Serializable接口、必须有默认的public无参数的构造方法、必须覆盖equals 和hashCode方法,这些要求与使用复合主键的要求相同。 2.将嵌入式主键类使用@Embeddable标注,表示这个是一个嵌入式类。 @Em原创 2017-02-27 21:59:44 · 1274 阅读 · 0 评论 -
set集合分类总结(hashSet、treeSet、linkedHashSet)
首先我们要知道set集合作为Collection家族的一员,他的作用就是存储数据,而且是不可重复的无序数据。那set集合分为hashSet、treeSet和linkedHashSet,我们怎么来区分什么情况下使用呢...1、如果我们需要将元素排序, 那么使用TreeSet2、如果我们不需要排序, 使用HashSet, HashSet比TreeSet效率高3、如果我们需要保留存储原创 2017-08-02 11:35:53 · 1956 阅读 · 0 评论 -
Map集合分类介绍(hashTable、treeMap、hashMap、linkedHashMap)
首先Map与Collection在集合框架中属并列存在,相当于同级Collection是单列集合, Map 是双列集合,Map存储的是键值对结构的数据(key-value)Map存储元素使用put方法,Collection使用add方法Map集合没有直接取出元素的方法,而是先转成Set集合,在通过迭代获取元素Map集合中键要保证唯一性Map集合分为:1、HashTa原创 2017-08-02 12:04:07 · 301 阅读 · 0 评论 -
java 用redis如何处理电商平台,秒杀、抢购超卖
看到这片文章不错,分享出来与大家共勉一、刚来公司时间不长,看到公司原来的同事写了这样一段代码,下面贴出来:1、这是在一个方法调用下面代码的部分:[java] view plain copyif (!this.checkSoldCountByRedisDate(key, limitCount, buyCount, endDate)) {转载 2017-04-28 17:12:21 · 1292 阅读 · 0 评论