匿名用户157
Java生成PEM格式公私钥

导入所需的jar包 <dependency <groupId org.bouncycastle</groupId <artifactId bcprov jdk15on</artifactId <version 1.69</version </dependency <dependency <groupId org.bouncycastle</groupId <artifactId bcpkix jdk15on</artifactId <version 1.69</version <! 同样,请根据需要替换为最

Java生成PEM格式公私钥
1570
匿名用户157
Java Live Tmplates 设置/**注释

idea 开发Java,注释使用不太方便,节后live template,打造一款方便的注释生成。 Editor Live Templates Java Abbreviation: Description: 方法注释 Template text: TODO $params$ $return$ / Expand with: Enter Reformat according to style: 勾选 Shorten FQ names: 勾选 Edit Variables: name:params Express

Java Live Tmplates 设置/**注释
1100
匿名用户157
Java设计模式(转)——7.装饰模式

7.装饰模式(Decorator) 顾名思义,装饰模式就是给一个对象增加一些新的功能,而且是动态的,要求装饰对象和被装饰对象实现同一个接口,装饰对象持有被装饰对象的实例,关系图如下: Source类是被装饰类,Decorator类是一个装饰类,可以为Source类动态的添加一些功能,代码如下: public interface Sourceable { public void method(); } public class Source implements Sourceable { @Override

Java设计模式(转)——7.装饰模式
匿名用户157
Java设计模式(转)——22.中介者模式

22.中介者模式(Mediator) 中介者模式也是用来降低类类之间的耦合的,因为如果类类之间有依赖关系的话,不利于功能的拓展和维护,因为只要修改一个对象,其它关联的对象都得进行修改。如果使用中介者模式,只需关心和Mediator类的关系,具体类类之间的关系及调度交给Mediator就行,这有点像spring容器的作用。先看看图: User类统一接口,User1和User2分别是不同的对象,二者之间有关联,如果不采用中介者模式,则需要二者相互持有引用,这样二者的耦合度很高,为了解耦,引入了Mediator类

Java设计模式(转)——22.中介者模式
匿名用户157
Java使用Tess4J实现图像识别基础

最近要识别图表数据,最先使用腾讯的AI接口,正确率高,识别率高,但是有些需求不符合,因此需要再次调研图像识别工具。故寻找到TESSERACT OCR和Tess4J。由于TESSERACT OCR需要下载软件,在电脑上安装环境,移植性不高,使用Tess4J只需要下载相关Jar包,导入项目,再把项目封装好就可以处处运行了。 因此先尝试使用Tess4J来实验。 下载Tess4J的相关资源官网: http://tess4j.sourceforge.net/codesample.html 资源下载:https://j

2200
匿名用户157
Java设计模式(转)——17.责任链模式

17.责任链模式 接下来我们将要谈谈责任链模式,有多个对象,每个对象持有对下一个对象的引用,这样就会形成一条链,请求在这条链上传递,直到某一对象决定处理该请求。但是发出者并不清楚到底最终那个对象会处理该请求,所以,责任链模式可以实现在隐瞒客户端的情况下,对系统进行动态的调整。先看看关系图: Abstracthandler类提供了get和set方法,方便MyHandle类设置和修改引用对象,MyHandle类是核心,实例化后生成一系列相互持有的对象,构成一条链。 public interface Handle

Java设计模式(转)——17.责任链模式
匿名用户157
XSS 攻击解决方案

XSS攻击 :跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS。 解决办法: 首先添加一个jar包: commons lang 2.5.jar ,然后在后台调用这些函数: StringEscapeUtils.escapeHtml(string); StringEscapeUtils.escapeJavaScript(string); StringEscapeUtils.escapeSq

匿名用户157
MyBatis Generator配置文件翻译

<classPathEntry 驱动文件指定配置项 <classPathEntry location="/Program Files/IBM/SQLLIB/java/db2java.zip" / <columnOverride 将数据库中的字段重命名为实体类的属性 column 数据库中字段名 property POJO属性名 javaType POJO类型 jdbcType 数据库字段类型 <table schema="DB2ADMIN" tableName="ALLTYPES" domainObject

匿名用户157
Java spring多账号发送邮件

需要的jar包velocity 1.5.jar mail.jar 配置文件config.properties mail.host=smtp.ym.163.com mail.username=service@studyjava.cn mail.smtp.auth=true mail.smtp.timeout=25000 配置文件Const.java //mail public static final String MAILUSERLIST="system1@studyjava.cn,system2@stud

1510
匿名用户157
40个Java多线程问题总结

1、多线程有什么用? 一个可能在很多人看来很扯淡的一个问题:我会用多线程就好了,还管它有什么用?在我看来,这个回答更扯淡。所谓”知其然知其所以然”,”会用”只是”知其然”,”为什么用”才是”知其所以然”,只有达到”知其然知其所以然”的程度才可以说是把一个知识点运用自如。OK,下面说说我对这个问题的看法: (1)发挥多核CPU的优势 随着工业的进步,现在的笔记本、台式机乃至商用的应用服务器至少也都是双核的,4核、8核甚至16核的也都不少见,如果是单线程的程序,那么在双核CPU上就浪费了50%,在4核CPU上就

匿名用户157
Java日志记录的5条规则

本文由 ImportNew Jyy 翻译自 javacodegeeks 。欢迎加入翻译小组。 日志记录是在软件开发过程中常常需要考虑的关键因素。 当产品运行出错时,日志文件通常是我们进行错误分析的首要选择。 而且,在很多情况下,它们是我们手上唯一可以用来查明发生状况和问题根本原因的信息。 可见,正确记录需要的信息是极其重要的。 以下5条日志规则,让我们可以检查和改进在代码中操作日志记录的方式。 同时也请注意,我们既不会讨论怎么配置一个日志引擎,也不会相互比较。 规则1、日志是面向读者的 日志消息不仅要对书写

1620
匿名用户157
Java设计模式(转)——19.备忘录模式

19.备忘录模式(Memento) 主要目的是保存一个对象的某个状态,以便在适当的时候恢复对象,个人觉得叫备份模式更形象些。通俗的讲下:假设有原始类A,A中有各种属性,A可以决定需要备份的属性,备忘录类B是用来存储A的一些内部状态,类C呢,就是一个用来存储备忘录的,且只能存储,不能修改等操作。做个图来分析一下: Original类是原始类,里面有需要保存的属性value及创建一个备忘录类,用来保存value值。Memento类是备忘录类,Storage类是存储备忘录的类,持有Memento类的实例,该模式很

Java设计模式(转)——19.备忘录模式
匿名用户157
Java设计模式(转)——14.模板方法模式

14.模板方法模式(Template Method) 解释一下模板方法模式,就是指:一个抽象类中,有一个主方法,再定义1...n个方法,可以是抽象的,也可以是实际的方法,定义一个类,继承该抽象类,重写抽象方法,通过调用抽象类,实现对子类的调用,先看个关系图: 就是在AbstractCalculator类中定义一个主方法calculate,calculate()调用spilt()等,Plus和Minus分别继承AbstractCalculator类,通过对AbstractCalculator的调用实现对子类的

Java设计模式(转)——14.模板方法模式
匿名用户157
Java语言与JVM中的Lambda表达式全解

为什么你需要Lambda表达式 程序员需要Lambda表达式的原因主要有三个: 1. 更紧凑的代码 2. 通过提供额外的功能对方法的功能进行修改的能力 3. 更好地支持多核处理 更紧凑的代码 Lambda表达式以一种简洁的方式去实现仅有一个方法的Java类。 例如,如果代码中有大量的匿名内部类–诸如用于UI应用中的监听器与处理器实现,以及用于并发应用中的Callable与Runnable实现–在使用了Lambda表达式之后,将使代码变得非常短,且更易于理解。 修改方法的能力 有时,方法不具备我们想要的一些功

匿名用户157
JavaScript 判断性别、类型

在开发中我们经常用1代表男生、0代表女生。 在jsp中常用的是使用三目运算符,但是html静态页面怎么开发? jsp中判断: ${sex==1?'男':sex==0?'女':'妖'} html页面中判断: <html <head <title studyjava测试</title <script var sex = { 1 : "<span style='color:green' 男</span ", 0 : "<span style='color:red' 女</span " }; </script </

匿名用户157
Java 20个常用术语讲解

1.什么是可变参数? 2.断言的用途? 3.什么时候使用断言? 4.什么是垃圾回收? 5.用一个例子解释垃圾回收? 6.什么时候运行垃圾回收? 7.垃圾回收的最佳做法? 8.什么是初始化数据块? 9.什么是静态初始化器? 10.什么是实例初始化块? 11.什么是正则表达式? 12.什么是令牌化? 13.给出令牌化的例子? 14.如何使用扫描器类(Scanner Class)令牌化? 15.如何添加小时(hour)到一个日期对象(Date Objects)? 16.如何格式化日期对象? 17.Java中日历类