java
文章平均质量分 72
Garry1115
关注微信公众号“虾米聊吧”,获取更多技术知识干货,一起交流,一起学习~
展开
-
springboot oa 办公系统,springboot权限系统
后续考虑改造成springcloud + springcloud alibaba 分布式架构的saas系统,引进技术gateway 网关,mq消息中间件、elasticsearch搜索引擎、oss分布式文件存储等!办公自动化(OA)是面向组织的日常运作和管理,员工及管理者使用频率最高的应用系统,极大提高公司的办公效率,该系统来源第三方开源系统,做了部分更新,适合学习和二开!springboot oa 自动化办公系统+ springboot 完整权限管理系统合二为一!springboot oa 办公系统。原创 2022-09-24 17:35:53 · 804 阅读 · 1 评论 -
大话“用户注册激活,忘记密码”发送邮件功能
鉴于最近有一部分童鞋留言关于“用户注册发送邮件激活”功能不太懂,在此我将用一片通俗易懂的话术简单说明一下“用户注册发送邮件激活”的大致原理和过程。用户注册发送邮件是每个网站的最基本功能,一般有两种处理方式:第一种为直接发送激活邮件,用户直接点击激活链接就会挑战到相应的激活页面 第二种为发送随机校验码到用户指定的邮箱,然后用户登录邮箱复制校验码下面我简单介绍一下2种方式的大致实现原...原创 2020-04-13 10:04:07 · 689 阅读 · 1 评论 -
java垃圾回收机制算法分析
原文参考:蚂蚁课堂余胜军老师。垃圾回收机制概述 Java语言中一个显著的特点就是引入了垃圾回收机制,使c++程序员最头疼的内存管理的问题迎刃而解,它使得Java程序员在编写程序的时候不再需要考虑内存管理。由于有个垃圾回收机制,Java中的对象不再有“作用域”的概念,只有对象的引用才有“作用域”。垃圾回收可以有效的防止内存泄露,有效的使用空闲的内存。 ps:内存泄露是指该内存空间...原创 2019-12-20 11:19:48 · 358 阅读 · 0 评论 -
JVM参数调优
说明 :原文参考蚂蚁课堂余胜军老师。Java虚拟机原理 所谓虚拟机,就是一台虚拟的机器。他是一款软件,用来执行一系列虚拟计算指令,大体上虚拟机可以分为系统虚拟机和程序虚拟机, 大名鼎鼎的Visual Box、Vmare就属于系统虚拟机,他们完全是对物理计算的仿真,提供了一个可以运行完整操作系统的软件平台。程序虚拟机典型代码就是Java虚拟机,它专门为执行单个计算程序而计算,在J...原创 2019-12-18 17:12:57 · 354 阅读 · 0 评论 -
NIO介绍与Netty通信简单入门
NIO同步阻塞与同步非阻塞BIO与NIOIO(BIO)和NIO区别:其本质就是阻塞和非阻塞的区别阻塞概念:应用程序在获取网络数据的时候,如果网络传输数据很慢,就会一直等待,直到传输完毕为止。非阻塞概念:应用程序直接可以获取已经准备就绪好的数据,无需等待。IO为同步阻塞形式,NIO为同步非阻塞形式,NIO并没有实现异步,在JDK1.7后升级NIO库包,支持异步非阻塞同学模型N...原创 2019-12-17 15:39:27 · 394 阅读 · 0 评论 -
Java秒杀系统优化(高性能高并发)
主题:在大并发,大流量的情况下如何提升吞吐量或者说QPS?而秒杀活动恰恰就是属于大并发的情形,因此下面简单来谈谈大并发下秒杀方案的优化。项目采用技术:SpringBoot + MyBatis + MySql + RabbitMq + RedisRabbitMq安装参考:https://blog.csdn.net/zwx19921215/article/details/10325583......原创 2019-11-27 10:58:43 · 2205 阅读 · 0 评论 -
java 个人博客系统高级版(springboot)
写博客已有好几年,由于商业博客的限制,越来越感觉到拥有一套不受约束的个人博客系统的重要性,于是在参考了网上大量优秀开源博客系统后,不断打磨改造合并最终形成了当前这一款个人博客系统(目前是初版,后期会不定期维护更新)。技术架构:Springboot2.x + Shiro + Mybatis Plus,网站前端采用模板zbolg。后台功能模块:一个完整的shiro权限系统(用户管理、角色管理、......原创 2019-10-21 16:57:48 · 2405 阅读 · 1 评论 -
spring mail 发送邮件
最近在项目中用到了发送邮件的功能(用户注册邮箱激活、用户密码重置邮箱获取验证码等等),所以写了一下java的邮件发送。java mailjava mail是最早出现的java邮件发送,以下是它的使用方式(引入jar包:activation.jar、mail.jar)package com.lingjuli.servlet;import java.util.Date;import原创 2015-03-17 10:48:15 · 6905 阅读 · 1 评论 -
jsp tag 自定义标签实现按钮的显示
前些天在一个项目中做了一个最基本的权限管理(标准的权限结构,用户-角色-菜单),后来需要精确地控制到按钮就想到了使用自定义标签(jsp tag)来处理按钮的显示与隐藏。下面是我参考网上的资料自己写的一个自定义标签的demo:首先自定义标签类:package com.vanfon.p2p.admin.core;import javax.servlet.http.HttpServlet原创 2015-02-06 10:29:21 · 9659 阅读 · 3 评论 -
Spring MVC 基于注解的class文件打成jar包后注入失败
异常信息:Spring MVC Autowired – No qualifying bean of type [] found for dependency: expected at least 1 bean which qualifiesNo qualifying bean of type [...Service] found for dependency: expected a原创 2014-12-22 09:24:01 · 9384 阅读 · 0 评论 -
密码学综述
1.密码学基本功能1)机密性2)鉴别3)报文完整性4)不可否认性2.基本模型密文发送方 —> 加密算法 —>解密算法 —>接收方秘钥即:3.密码学算法的分类消息编码:Base64消息摘要:MD类、SHA类、MAC对称密码:DES、3DES、AES非对称密码:RSA、D原创 2017-03-12 20:34:46 · 1149 阅读 · 0 评论 -
Base64算法的编程使用
Base64算法定义 Base64是一种基于64个字符的编码算法,以任意8位字节序列组合的描述形式,这种形式不易直接识别。经Base64编码后的字符串的字符数是以4为单位的整数倍 Base64密钥 Base64编程使用 package com.cry.base64;import java.io.IOException;原创 2017-03-12 20:38:47 · 689 阅读 · 0 评论 -
消息摘要的编程使用(MD5、SHA、HMAC)
消息摘要的概念: 唯一对应一个消息或文本的固定长度的值,由一个单向Hash加密函数对消息进行作用而产生 消息摘要的分类:(1)MD(Message Digest):消息摘要算法(2)SHA(Secure Hash Algorithm):安全散列算法(3)MAC(Message Authentication Code):消息认原创 2017-03-12 20:41:02 · 788 阅读 · 0 评论 -
对称密码的编程使用(DES、3DES、AES)
对称密码的概念加密密钥和解密密钥相同,对于大多数对称密码算法,加解密过程互逆加解密通信模型特点:算法公开、计算量小、加密速度快、加密效率高弱点:双方都使用同样密钥,安全性得不到保证DES 算法的编程使用(密钥偏短(56位)、生命周期短)package com.crypt.des;import com.crypt.ByteToHex原创 2017-03-12 20:44:15 · 926 阅读 · 0 评论 -
Guice使用入门以及整合Redis
guice是什么?(借用百度百科的说明和对比)Guice是Google开发的一个轻量级,基于Java5(主要运用泛型与注释特性)的依赖注入框架(IOC)。Guice非常小而且快。Guice是类型安全的,它能够对构造函数,属性,方法(包含任意个参数的任意方法,而不仅仅是setter方法)进行注入。Guice采用Java加注解的方式进行托管对象的配置,充分利用IDE编译器的类型安全检查功能和自动重...原创 2018-10-24 11:46:58 · 1191 阅读 · 0 评论 -
Guice进阶之整合mybatis和druid
上一篇文章中介绍了guice的基本使用配置,关于guice和spring的对比可以自行baidu或者google,我所了解的guice只是实现了依赖注入,而且相对于spring来说周边生态还是比较弱的,所以我把guice定义为一个轻量级依赖注入框架,由于guice非常小且速度快,对于我们快速开发一些小型项目是非常适合的。接下来队guice+mybatis简单整合下,实现对数据的查询项目结构...原创 2018-10-24 11:51:53 · 3475 阅读 · 2 评论 -
mybatis-generator 逆向生成工具(实体、dao、sql)
介绍:mybatis-generator是一个逆向生成工具,用于将数据库表逆向生成实体对象(entity),持久层Dao接口以及用于操作数据库的sql语句xml文件。对于简单的单表操作,增删改查几乎不用动手写任额外的代码。因为这些都已经通过逆向工程自动生成了,所以帮我们省了一大摊子事儿。项目结构如下:下面简单介绍其使用和配置方式:数据库连接配置:jdbc.driverLoc...原创 2019-09-11 18:39:41 · 742 阅读 · 0 评论 -
整合Struts2、Spring、Hibernate构建J2EE应用
【论文摘要】J2EE即是以Java 2平台为基础的体系结构,又是一组旨在简化企业解决方案的开发、部署、运行、维护等相关复杂问题的技术规范与指南。Struts2、Spring、Hibernate是当今符合J2EE技术规范的三个流行的开源框架。本文通过对这三个框架的工作机制的分析引伸出它们在J2EE应用中的互补作用,进而讲解它们在J2EE开发中的整合。最后通过一个简单的实例演示Struts2+Sp转载 2014-03-24 21:12:08 · 6800 阅读 · 1 评论 -
ttribute value is quoted with " which must be escaped when used within the value
今天做项目访问JSP时,报错:Attribute value is quoted with " which must be escaped when used within the value 。相信很多人都遇到过,以下结合本人查资料与亲自实践得到的结论。1):错误常发生的位置 value="" 2):错误产生的原因,是因为tomcat版本升级后(6.0以后),对双引原创 2014-04-29 13:39:10 · 2337 阅读 · 0 评论 -
Java通过IText导出word和pdf
最近做的项目中需要用到导出word和pdf的功能(还有图表),在网上找了原创 2014-06-25 15:49:37 · 28832 阅读 · 13 评论 -
FreeMaker+Xml导出word(含图片)
最近在做一个简报导出的功能,要求导出word格式,上网找了很多资料,ka原创 2014-06-13 13:53:35 · 18027 阅读 · 8 评论 -
java 通过IText生成PDF时顺序问题(图片)
最近项目中用到了IText导出word和原创 2014-06-25 16:40:27 · 7738 阅读 · 1 评论 -
JAR打包的误区:第三方包的嵌套打包
今天弄明白一个关于JAVA项目中JAR打包的问题。我们有时可能会把自己的项目做成第三方包给别人使用,但是同时我们自己的项目又引用了其他已有的第三方包,在打包的时候,我们经常可能自作聪明地将自己引用的第三方包全部封装在项目根目录下的某个folder下(如lib/),然后将整个项目打成JAR包,最后得意忘形地告诉使用这个包的开发人员:“你只需要在项目中引用这个包就可以了,其他什么都不需要做!”转载 2014-04-23 15:30:37 · 6992 阅读 · 0 评论 -
仿QQ聊天程序(java)
java聊天程序推荐java聊天室项目:http://zyshare.cn/resource/detail/15推荐java相关毕业设计项目整理:https://blog.csdn.net/zwx19921215/article/details/103225211推荐java最新聊天项目(java仿微信聊天):https://blog.csdn.net/zwx19921215/art......转载 2014-03-17 15:52:47 · 132047 阅读 · 161 评论 -
Java读取文件时第一行出现乱码“?”问号
我们在使用Java在读取文件(txt、dat等)时,如果文件不是utf-8格式的话,读取结果会出现,中文字符变乱码的情况,所以一般在读取时转为UTF-8格式读取。但这时会出现一种情况,第一次读取第一行第一个字符时会出现“?”的乱码这个是java本身编码格式转换的问题,可以采用一下方式解决:使用EditPlus等工具将txt文件另存为UTF-8无BOM格式原创 2014-03-09 23:59:03 · 9275 阅读 · 1 评论 -
no java virtual machine was found after searching& Failed to load the JNI shared library
Eclipse打开出现“no java virtual machine was found...."这个错误一般是环境变量设置错误导致在cmd里面输入java -version看有没有版本的提示?有的话说明你的JDK是对的,那么就是Eclipse的问题了。否则你就要设置环境变量信息了:依次点击:“我的电脑”-(右键)“属性”-“高级”-“环境变量”,弹出Window原创 2014-03-09 11:18:34 · 6989 阅读 · 0 评论 -
hashCode()、equals()以及compareTo()方法的理解
原文出自:http://blog.sina.com.cn/s/blog_50d936c40100nvzz.htmlhashCode()、equals()以及compareTo()方法的理解 转载▼ 判断两个对象是否相等(是同一个对象),首先调用hashCode()方法得到各自的hashcode,1、如果hashcode不相等,则表转载 2014-03-07 00:06:48 · 3139 阅读 · 0 评论 -
java上传文件以流方式判断类型
package com.omg.utils; /** * 文件类型枚取 */public enum FileType { /** * JEPG. */ JPEG("FFD8FF"), /** * PNG. */ PNG("89504E47"), /** * GIF. */ GIF("47494638"), /** * TIFF. */转载 2015-05-05 16:52:02 · 8168 阅读 · 0 评论 -
java web 邮箱激活 与 忘记密码(重置密码)
推荐: java后台通用权限管理系统(springboot)(https://blog.csdn.net/zwx19921215/article/details/97806078)推荐:java 个人博客系统高级版(springboot)(https://blog.csdn.net/zwx19921215/article/details/102665020)推荐:Java秒杀系统优化(高性...原创 2015-03-20 17:29:12 · 22707 阅读 · 38 评论 -
Java通过HighCharts导出图表
Highcharts是一款优秀的图表图形工具,zhi原创 2014-06-25 16:24:00 · 23475 阅读 · 18 评论 -
Tomcat 7 'javax.el.ELException' 的解决方式(failed to parse the expression [${xxx}])
Tomcat 7 'javax.el.ELException' 的解决方式tomcat 7对EL表达式的语法要求比较严格,例如"${owner.new}"因包含关键字new就会导致解析出错。问题是出来了,怎么解决呢?有三种,如下:第一种:严格遵守java规范,修改对象的属性名称,要求不包含java关键字;第二种:修改EL表达式,例如"${owner.new}"可以修改为"${own原创 2014-07-04 16:17:13 · 35718 阅读 · 9 评论 -
springmvc + ajaxfileupload 实现异步上传文件(图片)
最近在做一个项目需要实现异步上传图片,在网上找了很多资料后,采用了ajaxfileupload可以实现,以下是核心代码:jsp: 图片名称: 选择图片: 提交 js://新建或编辑 保存提交function submitPic(){ if(!$("#原创 2015-03-08 15:29:24 · 32083 阅读 · 4 评论 -
spring timetask 定时任务调度
定时任务调度即在设置的特定时间执行特定的任务,不需要人工干预。spring timertaskspring 自身所带定时任务类,不需要引入第三方jar包,使用方式如下:EmailReportTask.javapackage com.zwx.core;import java.util.TimerTask;public class EmailReport原创 2015-03-17 11:14:32 · 4054 阅读 · 0 评论 -
js 实现 table 行上移 (数据库)
通过js实现表格行的上下移动,有两种情况:1、只对显示层操作(即只针对页面的移动并不更新到数据库)2、显示层的移动更新到数据库中下面我分布就这两种方式的实现进行说明(我使用的是jquery easy ui框架)。只针对显示层的操作//上移function MoveUp(gridname) { var selectRow = $("#"+gridname).datag原创 2015-03-17 11:41:48 · 4817 阅读 · 0 评论 -
spring mvc 拦截器 HandlerInterceptor 的使用
在进行登录操作时我们都要使用拦截器拦截用户的访问,以避免用户未登录操作。以下是对登录操作的简单拦截,自己可针对自己的业务进行扩展。自定义BaseInterceptor实现HandlerInterceptor,用户发送的每个请求都会被preHandle()方法拦截,我们就可以在preHandle方法中实现自己的业务员逻辑,哪些不需要被拦截等等操作。package com.原创 2015-03-17 11:57:02 · 13824 阅读 · 0 评论 -
springmvc ztree 实现权限菜单的展示
推荐最新技术springboot版权限管理(java后台通用权限管理系统(springboot)),采用最新技术架构,功能强大!注:由于该项目比较老,所以没有采用maven管理,建议下载springboot权限管理系统,对学习和使用会更有帮助。springboot权限管理系统介绍地址:https://blog.csdn.net/zwx19921215/article/details/978......原创 2015-03-17 12:12:06 · 18493 阅读 · 24 评论 -
java web简单权限管理设计
推荐最新技术springboot版权限管理(java后台通用权限管理系统(springboot)),采用最新技术架构,功能强大!注:由于该项目比较老,所以没有采用maven管理,建议下载springboot权限管理系统,对学习和使用会更有帮助。springboot权限管理系统介绍地址:https://blog.csdn.net/zwx19921215/article/details/978...............原创 2015-03-19 23:23:05 · 204724 阅读 · 428 评论 -
java.util.zip.ZipException: error in opening zip file
今天在eclipse上新建了一个java项目,将其打包为jar文件,上传到linux上进行运行时出错了;错误内容为:java.util.zip.ZipException: error in opening zip file.....后来才知道原来是在导出 jar环节出了问题,在Export导出项目时去掉被选中的.CLASSPATH。呵呵 去掉之后在linux原创 2014-02-25 16:44:05 · 23107 阅读 · 0 评论