自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Yannis的技术之路

不积跬步无以至千里,不积小流无以成江河

  • 博客(161)
  • 资源 (4)
  • 问答 (3)
  • 收藏
  • 关注

原创 重新认识Spring的Scope

Spring的Sope是什么Scope,也称作用域,在 Spring IoC 容器是指其创建的 Bean 对象相对于其他 Bean 对象的请求可见范围。在 Spring IoC 容器中具有以下几种作用域:基本作用域(singleton、prototype),Web 作用域(reqeust、session、globalsession),自定义作用域。singleton 即ConfigurableBeanFactory.SCOPE_SINGLETON,单例模式,也为默认模式;prototype即Conf

2022-03-04 16:42:05 578

原创 MQ-interview

MQ面试问题整理项目中为什么使用MQ优点解耦同一块业务的相关能力被很多个项目需要,后续也有极大可能会被其他项目需要。将该部分能力解耦,通过MQ进行消息的统一处理。若有其他项目或业务需要相关功能,则对此进行订阅,处理相关业务。减少项目直接依赖。异步大型项目相关协作人员,参与团队越来越多,项目之间的关联越来越深。造成整个链路特别长,且问题排查不容易。.

2022-02-22 09:58:40 1086

原创 nginx安装

Nginx 安装新的Centos官方对应的repo已无法使用,费劲吧啦的找了其他的几个源,但是发现无法直接使用yum install nginx进行nginx的安装。在此记录相关的解决办法。

2022-02-22 09:57:36 1261

原创 人生苦短我要换Go

为什么转GOGo语言的强语法约束区别于Python、java等高级语言的一种目的可以有多种实现,Go对语法的限制简直是苛刻。很多人会觉得这是不懂得变通,比较死板,限制想象力。但以这个行业做了十来年,尤其经常涉及到维护和修改别人代码的人来看,这样的确定性会更少的减少理解别人代码的成本。Go的协程特性混迹于传统软件公司,使用java多年的程序员。每次面试的时候老是被一些JUC给搞蒙。JAVA在处理高并发的时候,使用各种锁,各种异步,感觉很是烦躁。GO天然的支持高并发,当然对于这点并没有深入的了解,目前仅

2021-07-12 21:42:25 143

原创 mysql面试指北

Mysql数据库并发带来的问题1、脏读:事务A读取了事务B更新的数据,然后B回滚操作,那么A读取到的数据是脏数据2、不可重复读:事务 A 多次读取同一数据,事务 B 在事务A多次读取的过程中,对数据作了更新并提交,导致事务A多次读取同一数据时,结果 不一致。3、幻读:系统管理员A将数据库中所有学生的成绩从具体分数改为ABCDE等级,但是系统管理员B就在这个时候插入了一条具体分数的记录,当系统管理员A改结束后发现还有一条记录没有改过来,就好像发生了幻觉一样,这就叫幻读。小结:不可重复读的和幻读很容易

2021-03-11 15:04:33 91

原创 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 3160

原创 JAVA中的线程池实现

JAVA线程池的实现JAVA中的线程池实现Java ExecutorsnewCachedThreadPoolnewFixedThreadPoolnewSingleThreadExecutornewScheduledThreadPoolThreadPoolExecutorJAVA中的线程池实现在JDK1.5之后,JAVA增加了线程池的实现.这里简要描述一下相关的两个类Executors以及Thr...

2019-06-12 14:29:35 299

原创 Mysql如何批量去掉某一个字段内的特殊字符串

在MYSQL的数据库里可能存在某一字段后面又特殊字符的情况,若明确知道该列可能引入的字符类型,则直接使用替换功能进行替换例如 UPDATE tablename SET field = REPLACE(REPLACE(field, CHAR(10), ”), CHAR(13), ”);char(10): 换行符char(13): 回车符   但有时候并不...

2018-10-16 16:22:55 5635 2

使用POI导出Excel自适应列宽的实现

使用POI导出Excel时,涉及到如何自适应列宽的问题。方法如下/** * 下载excel文件,内容使用MAP存放 * * @param response * @param headName * @param tableHead * @param tableBody * @throws IOException */ public sta...

2018-09-19 12:04:21 632

maven-assembly-plugin报错

Maven pom.xml保存[ERROR] Failed to execute goal org.apache.maven.plugins:maven-assembly-plugin:2.5.5:single (default) on project ycsb: Failed to create assembly: Artifact: com.yahoo.ycsb:riak-binding...

2018-08-30 15:31:09 3874

原创 CentOS安装Docker

CentOS上安装Docker。 前置条件:64-bit 系统kernel 3.10+ 1.检查内核版本,返回的值大于3.10即可。  $ uname -r2.使用 sudo 或 root 权限的用户登入终端。3.确保yum是最新的  $ yum update  4.添加 yum 仓库  tee /etc/yum.re...

2018-08-28 16:47:16 170

Spring内异常 application exception overridden by commit exception

在执行某一操作时,意外发现自己定义的异常,无法被外面的Controller catch到。追查发现在service内是可以正常打印异常信息,但外层Controller仅能拿到一个事务回滚的roolback异常。仔细查看错误信息: application exception overridden by commit exception 应用自定义异常被事务异常覆盖了。 ...

2018-08-10 16:23:09 6108 2

原创 SVN里恢复到某一天的版本操作

SVN里恢复到某一天的版本操作SVN除了日常的代码提交 更新之外 很少做一些其他高级的操作 曾经想把整个库的版本整体换到某天的全部代码 竟然不知道怎么操作 …正好 文档人员有心 事隔许久 竟然主动告知我了 于是我当机立断 才有了现在的奋笔疾书….呵呵 闲话少扯 言归正传第一步:对着你的项目 右键 –TortoiseSVN- Update to revision...

2018-07-16 11:22:04 440

原创 BootStrap如何支持多模态框弹窗

$(document).on('show.bs.modal', '.modal', function(event) { $(this).appendTo($('body')); }).on('shown.bs.modal', '.modal.in', function(event) { setModalsAndBackdropsOrder();...

2018-07-06 14:26:30 933

原创 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 199

原创 dom4j解析XML文件

简单用DOM4J结合XPATH解析XML由于DOM4J在解析XML时只能一层一层解析,所以当XML文件层数过多时使用会很不方便,结合XPATH就可以直接获取到某个元素使用dom4j支持xpath的操作的几种主要形式   第一种形式     /AAA/DDD/BBB: 表示一层一层的,AAA下面 DDD下面的BBB   第二种形式 ...

2018-06-20 16:26:00 155

避免先查询再插入的解决方案

方案有很多,示例1:[code="java"]建立唯一索引,在代码里获取到DuplicateKeyException异常后,重新查询。[/code]其他方式待补充

2018-05-11 10:27:04 761

有逗号的列,如何准确匹配

对于列内存在逗号的字符串,如何使用mysql准确匹配[img]http://dl2.iteye.com/upload/attachment/0129/6636/c4c5d6c3-a774-3eab-a5b4-932a4703b3cb.png[/img]初始使用sql[code="java"]SELECT distinct ci.* FROM gt_cim_course ci L...

2018-04-27 10:36:04 210

Java源码分析Flag

新年伊始,立个Flag.Java9 源码分析与学习。后面持续更新。

2018-03-01 13:00:24 208

nginx设置安全策略后,部分图片无法显示问题

在nginx里增加  add_header X-Content-Type-Options nosniff; add_header X-XSS-Protection "1; mode=block"; add_header X-Frame-Options "SAMEORIGIN"; 来处理安全问题时,发现网站有些图片无法在部分ie下正常访问。  通过排查发...

2018-02-09 19:44:01 1525

原创 mysql中group报sql_mode错误解决方案

1.vi /etc/my.cnf(Windows下是my.ini) 在[mysqld]下添加 sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION 2. 查看sql_mode...

2018-02-09 19:08:55 339

原创 Linux时间同步或设置

[b][i]Linux下查看系统当前时间 使用date命令查看当前时间[/i][/b]若想直接同步系统时间为互联网时间,则使用如下方式[b][i]Linux下使用ntpdate进行时间同步[/i][/b]1、安装ntpdate,执行以下命令# yum install ntpdate -y2、手工同步网络时间,执行以下命令,将从time.nist.gov同步时间#...

2018-02-05 18:28:15 102

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 3616

原创 更新一个表的字段值等于另一个表的字段值

在进行数据库操作时,有时我们需要把两个关联表中的某个字段同步,即把表1中字段A的值赋值到表2的字段B中,表1和表2通过字段C关联。SQL语句如下所示(Sql sever 和MySql的写法稍有不同):SQL Sever:写法1: update t2 set t2.B=t1.Afrom Table2 t2 ,Table t1 where t2.C2=t1.C1 写法2: UPDATE Ta...

2017-12-26 13:02:05 2126

原创 字符串前面或后面补零

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 1605

原创 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 356

原创 Linux下OpenOffice安装及乱码处理

1.     从openoffice官网(http://www.openoffice.org/download/)下载linux相应的openoffice安装包(安装包有deb和rpm,linux BIT 对应32bit和64bit)。2.       安装包名 OOo_3.3.0_Linux_x86-64_install-rpm-wJRE_zh-CN.tar.gz3.       安...

2017-07-12 16:03:04 383

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 85

原创 Git强制覆盖本地文件

git fetch --all git reset --hard origin/master git pull 

2017-05-17 23:22:55 190

原创 Git手动合并

当收到他人的Pull Request后,该如何手动合并。实际上在很多情况下,Pull Request所含提交有可能造成合并冲突,那样的话GitHub不再、也不能提供自动合并功能,就必须采用手工合并的方式。将Pull Request发出者的派生版本库添加为一个新的源。(该操作是在本地的git目录下)例如收到来自gotgithub用户的Pull Request,不妨以wangxinyu...

2017-05-17 23:19:54 1373

原创 [转]关于BETA、RC、ALPHA、Release、GA等版本号的意义

 精力有限,知识无限! 有时候你等不到,就自己去找,不求人!对版本号的意义加以说明。          Alpha:                    Alpha是内部测试版,一般不向外部发布,会有很多Bug.除非你也是测试人员,否则不建议使用.是希腊字母的第一位,表示最初级的版本,alpha 就是α,beta 就是β ,alpha 版就是比beta还早的测试版,一般都是内部测试的...

2017-05-11 22:43:37 96

原创 [置顶] 左联接数据不统一问题

在使用左联接时,遇到问题:1、使用tab1,左联接tab2;2、tab1有4条数据,tab2中对应tab1的4条数据 有>4条数据与之对应;3、简单使用左联接之后,会出现,数据总数是后面的tab2与之对应的条数。而不是tab1的总数。解决方案select * from tab1 left join( select * from ( select a.

2017-04-10 10:27:46 400

原创 [置顶] 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 389

原创 [置顶] java处理office文档与pdf文件(一)

需求说明:用户可以上传word,excel,ppt,pdf文件。在页面能够预览该文件,并可以通过搜索,找到对应的文件记录。使用技术:通过jacob将office转化为html,使用poi进行文件提取;在前期调研的时候,搜索其他将office转化为html的技术,发现其转化之后的页面都不怎么逼真。但是,使用jacob转化的时候样式还可以就是有一点,该项目必须部署在windows环境上

2017-04-10 10:27:29 312

原创 [置顶] 大数据的验证和插入数据库

最近在做项目的时候涉及到大数据的校验和插入。问题描述:通过Excel导入客户信息表至数据库中指定表。刚看到该问题,自然而然就是想直接将Excel解析至内存。在内存中遍历对应的客户List集合,取出每一个Customer和数据库中的数据进行比对判断该用户是否存在,存在的话在重复值上计数,不存在的话插入数据库。但是当数据达到10w+的时候,那个速度都不能直视了。思考解决方案,首先采用的解决方案:校

2017-04-10 10:27:18 592

原创 [置顶] java除0问题探究

今天在写代码的时候,突然发现一个小问题:double a = 0;System.out.println(a/0);这部分竟然出乎我意料的没有报除零异常。而是打印NaN。思索之后,感觉问题关键可能是出在数据类型上。修改a为int类型。果然出现熟悉的/zero错误。这时候,突然想起,以前看过文章说过该问题,但现在的我已经忘记了当时的思想。所以重新寻找思路。各种搜索之后,看了看API发现问题的

2017-04-10 10:27:10 327

原创 [置顶] 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 292

原创 [置顶] js实时获取系统当前时间

//使用jQuery页面直接加载 $(document).ready(function() { fillDate(); });//主要的时间处理方法 function fillDate(){ //日期 var now = new Date(); //获取系统日期,即Sat Jul 29 08:24:48 UTC+0800 2006 var yy=

2017-04-10 10:26:52 315

原创 [置顶] oracle数据库连接问题

今天使用360保险箱把oracle的很多文件给删掉了,造成oracle无法使用。狠心重装了oracle。连接内网的数据库服务器测试连接成功。兴致勃勃啊。   但是在使用PL/SQL Developer时,连接不上。报      Initialization error      Could not locate OCI dll      OracleHomeKey:SOFTWARE\ORA

2017-04-10 10:26:46 386

原创 [置顶] java通过poi操纵word

最近几天公司需要使用java处理报表,显示成word格式。有很多种处理方式,我采用了poi的处理。今天在做demo的时候遇到问题:word中的内容除了图片之外都可以读取到,然后我使用range.replaceText("ak", "自己人");替换word中的ak。打印代码显示成功替换,但是为什么我查看word,里面什么也没有啊。具体代码粘贴如下:public class PoiDemo {

2017-04-10 10:26:40 355

JAVA解惑.pdf

java技术中不为大部分人了解的一部分,看完之后,肯定会由衷说一句,原来如此。

2013-11-14

bcprov加密解密

提供加密,解密,生成密钥对等方法。有jdk1.5和1.6两个版本

2013-06-26

JavaAPI下载

JavaAPI提供对Java源码的分析和查找。更详细,准确的理解和查找自己所需要的方法。从而更好的为自己的业务服务。

2013-06-22

jacob1.17所需资料下载

jacob使用com组件的方式,将office办公软件转化为html格式。

2013-06-22

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除