2018-03-22 12:48:04

Java中文算数验证码

JAVA
818
0
2018-03-21 22:22:41

Spring Boot配置@ConditionalOnProperty来控制Configuration是否生效

问题 在最近的项目中遇到一个实际问题,该项目要与老项目整合,但是该项目与老项目用的数据库不是同一个,因此要做数据库同步。由于数据库同步与正常业务解耦,仅仅依赖该项目处理后的数据,再加上数据库同步用的oracle,因此打算在dev版本上面不加入数据库同步,在test与prod版本上加入数据库同步。这样就要求在dev版本下,对第二个数据源的配置不生效;而te..

JAVA
1558
0
2018-03-21 22:21:17

解决Spring Boot+AngularJS因为跨域导致Session丢失问题

在我们每一次的数据请求中,浏览器都会向后台发送一个jsession,后台会根据这个值自动查找id为jsession的那个session对象。但是当跨域时,jsession的值每次都会改变,后台就会以为是新的一个会话打开,于是又去创建了一个新的session对象,而原来的session对象就找不到了。 解决这个问题的方法很简单 首先在angular请求..

JAVA
1553
0
2018-03-21 22:12:35

java中String 分割特殊符号"." "|" "*" "\" "]"

关于点的问题是用string.split("[.]") 解决。 关于竖线的问题用 string.split("\\|")解决。 关于星号的问题用 string.split("\\*")解决。 关于斜线的问题用 sring.split("\\\\")解决。 关于中括号的问题用 srin..

JAVA
765
0
2018-03-21 21:55:49

spring配置文件中bean的属性name与id的区别

简单的说:id用来标识bean,是唯一的,且只有一个;name定义的是bean的alias,可以有多个,并可能与其他的bean重名。 详细的说: id是唯一标识bean.不能用特殊字符:×#@ ,不能用数字开头。在bean引用的时候只能用id指向你需要的bean; name 可以用特殊字符,并且一个bean可以用多个名称:name=“bean1,..

JAVA
974
0
2018-03-21 21:54:16

Spring Configuration动态绑定bean id

简述: 对于bean id 可能在注入的时候需要根据配置动态的制定实例 代码: erepositoryconfigure.java import org.apache.commons.lang3.validate; import org.springframework.beans.factory.annotation.autowire; ..

JAVA
812
0
2018-03-21 21:52:18

Spring获取Bean的自身id

在某些情况下,业务要求程序员在开发bean类时能预先知道该bean的配置id,此时可借助spring提供的beannameaware接口,通过该接口即可提交预知bean的配置id.beannameaware接口提供了一个方法:setbeanname(sring name),该方法的name参数就是bean的id,实现该方法的bean类就可通过该方法来获得部署..

JAVA
2986
0
2018-03-21 21:45:20

使用@Configuration注解来代替Spring的bean配置

使用@configuration注解来代替spring的bean配置 下面是一个典型的spring配置文件(application-config.xml): <beans> <bean id="orderservice" class="xxx.orderservice"/> <constructor-arg ref..

JAVA
905
0
2018-03-21 21:42:04

Spring启动后获取所有指定注解的Bean

最近项目中遇到一个业务场景,就是在spring容器启动后获取所有的bean中实现了一个特定接口的对象,只要实现applicationlistener<contextrefreshedevent>接口,然后把实现类进行@component即可,代码如下: @component public class contextrefreshedlis..

JAVA
1792
0
2018-03-21 21:34:41

Redis实现分布式锁

使用java自带的lock框架可以很好的解决并发问题,但如果是分布式系统的话,就不能通过这个方法解决并发问题,此时可以使用redis实现并发锁来解决这个问题 使用redis锁有两个重要函数需要介绍 setnx命令(set if not exists) 语法: setnx key value 功能: 当且仅当 key 不存在,将 key ..

JAVA
743
0
2018-03-21 21:30:30

MySql存储emoji表情字符解决方案

最近在做微信端 web 程序开发,ios端用户在输入时可能输入 emoji 字符,由于 utf8的 mysql 数据库并不支持存储这种字符,会报incorrect string value: ‘\xf0\x9f\x98\x97\xf0\x9f…’ 的类似错误 第一眼看到这个错误首先想到的解决方案为 java 端编码存储于解码输出,只需要在可能出现这种错误的..

JAVA
760
0
2018-03-21 21:27:51

DateTimeFormatter替换SimpleDateFormat解决线程安全问题

simpledateformat并不是线程安全的,因为在simpledateformat中持有一个calendar类对象在parse 和format方法时会调用calendar.settime(date)方法,如果在多线程环境下运行,会出现线程安全问题,为了解决这个问题,可以使用以下方法: 1.需要的时候创建新实例 2.使用同步:同步simpledate..

JAVA
1562
0
2018-03-21 21:23:24

解决jenkins tomcat热部署,任务线程重复启动的方法

项目使用jenkins热部署发布,导致web工程中的任务队列重复启动,即重新发布的工程自己启动了自己的任务线程,但之前老项目的任务线程没有被终止 工程任务线程如下所示: @postconstruct public void messagelistener() { new thread(new runnable() { @override publ..

JAVA
975
0
2018-03-21 21:17:49

SpringMvc实现RESTful风格的delete和put请求

首先,在web.xml中需要创建一个过滤器: <filter> <filter-name>hiddenhttpmethodfilter</filter-name> <filter-class>org.springframework.web.filter.hiddenhttpmethodfilter</f..

JAVA
706
0
2018-03-21 20:50:14

使用commons-io-2.0监听文件变化

继承filealterationlisteneradaptor 实现它的功能: import java.io.file; import org.apache.commons.io.monitor.filealterationlisteneradaptor; import org.apache.commons.io.monitor.filealtera..

JAVA
1003
0
2018-03-21 20:12:24

使用commons-vfs监听文件系统

apache commons vfs又叫做 apache commons virtual filesystem。是一组功能强大的对各类资源的访问接口,目前这个jar包得到了全新的重构,目前最新的版本是2.2。 如果我们在平常的工作中,需要得到一些不同格式文件的信息,比如文件大小、所在路径、文件最后更改时间等,或者我们需要对文件进行一些常规的操作,比如删除文..

JAVA
1546
0
2018-03-21 20:06:50

Linux上使用commons-net.jar注意的问题

在项目中使用commons-net-3.0.1.jar实现ftp文件的下载,在windows xp上运行正常,但是放到linux上,却出现问题,程序运行到 ftpclient.listfiles()或者ftpclient.retrievefile()方法时,就停止在那里,什么反应都没有,出现假死状..

JAVA
685
0
2018-03-21 20:04:47

Apache的commons-net实现FTP的文件上传下载

commons net包中的ftp工具类能够帮助我们轻松实现ftp方式的文件上传/下载。其中最重要的一个类就是ftpclient类,这个提供了许多ftp操作相关的 方法,比如链接,登录,上传,下载,和注销。 ftp 操作的过程一般为连接服务器,登录,进行文件上传/下载,文件(目录)的添加删除修改等操作。平常用的比较多的是文件的上传和下载。 imp..

JAVA
893
0
2018-03-21 19:06:45

springboot跨域配置

首先我门要知道什么是跨域: 跨域是指 不同域名之间相互访问。跨域,指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对javascript施加的安全限制。 也就是如果在a网站中,我们希望使用ajax来获得b网站中的特定内容 如果a网站与b网站不在同一个域中,那么就出现了跨域访问问题。 什么是同一个域? 同一协议,同一..

JAVA
844
0
2018-03-21 17:11:40

FastDFS集成Nginx并开启图片防盗链

fastdfs 提供了fastdfs-nginx-module模块来支持通过nginx访问fastdfs中存储的数据,据我所知,fastdfs-nginx-module模块只能通过源码安装到nginx,而不能将其编译成动态模块加载到已经安装好的nginx中 步骤如下: 源码编译 下载: https://github.com/happyfish100..

JAVA
1308
0
2018-03-21 17:06:40

FastDFS与Springboot集成

1、添加pom依赖 <dependency> <groupid>com.github.tobato</groupid> <artifactid>fastdfs-client</artifactid> <version>1.25.2-release</version&g..

JAVA
885
0
2018-03-21 15:50:24

spring boot集成Hibernate配置

在pom.xml中添加以下的一些依赖: <dependency> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-starter-data-jpa</artifactid> </dependency..

JAVA
817
0
2018-03-21 15:36:53

FastDFS分布式文件系统封装JAVA client工具类

工具类当中进行连接池的初始化及上传、下载、删除功能的实现并在spring配置文件中配置,生成对应的java bean 方便其它类访问。 fastdfsutil工具类 实现对连接池初始化、上传、删除功能的实现。 import java.net.sockettimeoutexception; import java.util.uuid; imp..

JAVA
1306
0
2018-03-21 15:27:13

springboot添加定时器

简单两步,实现在spring boot中配置和使用定时器: 1、在入口类中加入@enablescheduling注解: @springbootapplication @enablescheduling public class myspringbootapplication { private static logger logger = log..

JAVA
619
0
2018-03-21 15:24:06

Spring Boot启动时执行指定方法

springboot给我们提供了两种“开机启动”某些方法的方式:applicationrunner和commandlinerunner。 这两种方法提供的目的是为了满足,在项目启动的时候立刻执行某些方法。我们可以通过实现applicationrunner和commandlinerunner,来实现,他们都是在springapplication 执行之后开..

JAVA
928
0
2018-03-21 15:20:42

springboot读取配置文件

一、springboot配置文件 核心配置文件和自定义配置文件。核心配置文件是指在resources根目录下的application.properties或application.yml配置文 件。为了不破坏核心文件的原生态,但又需要有自定义的配置信息存在,一般情况下会选择自定义配置文件来放这些自定义信息,这里在resources/config目录下创..

JAVA
722
0
2018-03-21 15:11:59

spring boot拦截器验证token防止表单重复提交

第一步:先写token生成和销毁方法 token.java import java.lang.annotation.*; @target(elementtype.method) @retention (retentionpolicy.runtime) @documented public @interface token { boolean s..

JAVA
1392
0
2018-03-21 15:07:26

spirng-boot利用spring-security实现token权限系统

用过spring-security的都应该能感觉到,spring-security把authentication和authorization封装的比较死。默认的authorization是基于session的。利用session验证过的信息,保存进securitycontext,权限系统再根据securitycontext保存的用户权限相关信息,来进行权限管..

JAVA
963
0
2018-03-21 14:46:30

开放接口api的Token签名sign设计与实现

在app开放接口api的设计中,避免不了的就是安全性问题,因为大多数接口涉及到用户的个人信息以及一些敏感的数据,所以对这些接口需要进行身份的认证,那么这就需要用户提供一些信息,比如用户名密码等,但是为了安全起见让用户暴露的明文密码次数越少越好,我们一般在web项目中,大多数采用保存的session中,然后在存一份到cookie中,来保持用户的回话有效性。但是..

JAVA
657
0
2018-03-21 14:34:38

Apache Commons JEXL实现字符串转换成可执行代码

使用apache commons的jexl可实现将字符串变成可执行代码的功能, 封装功能类: import java.util.map; import org.apache.commons.jexl2.expression; import org.apache.commons.jexl2.jexlcontext; import org.apach..

JAVA
847
0
热门话题