首页 文章 新番
动漫 学习 生活 日记 书籍 服务器 Bing
  • Spring Boot 2.0安全配置

    升级2.0以后一些配置需要修改,下面是一些安全方面的配置:```#安全配置#management.security.enabled=true#配置用户#spring.security.user.name=user#spring.security.user.password=user#spring.security.user.roles=USER#manager端口management.server.port=9999#manager权限角色#management.security.roles=ADMIN#manager的上下文management.server.servlet.context-path=/admin#公开端点management.endpoints.web.exposure.include=*#隐藏端点management.endpoints.web.exposure.exclude=env```添加用户和角色:*配置USER角色,包含一个用户名为user,密码为user的用户。*配置ADMIN角色,包含一个用户名为admin,密码为admin的用户。```java@BeanpublicInM...

    2018年04月04日 Sprint Boot 安全 security
  • Spring Boot配置加载

    SpringBoot默认加载的是`application.properties`和`application.yml`,如果两个配置同时存在时,默认使用会使用`properties`的配置替换`yml`,可以理解为先加载`yml`,然后加载`properties`进行替换。如果配置了`spring.profiles.active`属性时,还会加载`application-{profiles}.properties`或`application-{profiles}.yml`。上面文件加载的顺序是:`application.yml``application-{profiles}.yml``application.properties``application-{profiles}.properties`,后面的配置会替换前面的配置。##自定义配置###自定义properties```email.port=22email.name=email-nameemail.user.names=user-namesemail-tencent.port=tencent-22email-tencent.name=email-ten...

    2018年04月04日 Spring Spring Boot
  • Nginx+Tomcat正确获取客户端请求地址

    如果使用的是HTTP协议,直接使用如下配置,即可获取到客户端请求地址和IP信息:```proxy_set_headerHost$host;proxy_set_headerX-Real-IP$remote_addr;proxy_set_headerX-Forwarded-For$proxy_add_x_forwarded_for;```但是如果使用了Nginx使用了HTTPS协议,但是反向代理时使用的是HTTP协议,那么上面的代码就不能获取到正确的协议。Nginx还需要添加如下配置:```proxy_set_headerX-Forwarded-Proto$scheme;```然后Tomcat的Engine下添加如下配置:``````这样就能正确获取到协议信息了。这里还需要说明一点,上面配置均需要配置到`location`中方能有效,之前一直配置在`server`模块内是无效的。>参考文章:[http://feitianbenyue.iteye.com/blog/2056357](http://feitianbenyue.iteye.com/blog/2056357)如果是SpringBoot内嵌的Tomc...

    2018年04月03日 Nginx Tomcat Spring Boot
  • Tomcat无法读取手动修改资源文件

    在Tomcat下面手动修改资源文件,发现使用`getResourceAsStream`重新读取配置并没有被修改。然后看了一下源码发现,Tomcat对资源文件进行了缓存:```java//(0)Checkforacachedcopyofthisresourcestream=findLoadedResource(name);if(stream!=null){if(log.isDebugEnabled())log.debug("-->Returningstreamfromcache");return(stream);}```所以导致使用`SuccessCodeConfig.class.getResourceAsStream("/successCode.properties");`读取配置时不能读取到修改的内容。所以应该修改为:```javanewFileInputStream(SuccessCodeConfig.class.getResource("/successCode.properties").getFile());```

    2018年04月02日 Tomcat Java
  • box-sizing

    经常发现`select`和`input`设置的属性一样但是发现两者的实际显示效果不一致,这是因为`box-sizing`属性导致的。>具体参考:[http://www.w3school.com.cn/cssref/pr_box-sizing.asp](http://www.w3school.com.cn/cssref/pr_box-sizing.asp)

    2017年12月26日 box-sizing CSS
  • JPA自动生成设置外键名称

    使用JPA的`@ManyToOne`时,生成了外键,而且用的`generateDdl`配置自动生成。如果想修改外键名称,可以使用`@ForeignKey`注解去修改外键名称。

    2017年11月15日 JPA Hibernate
  • Postman将JSON字符串作为表单数据提交

    使用Postman模拟请求,但是发现`body`的`form-data`里面,放入JSON字符串,发送时并不能自动拆分为表单数据。我们选择`body`后面有一个`key-valueedit`的选项,点击后进入以下界面:![Postman](//static.acgist.com/resources/images/article/201711/15096111534951001.png)然后直接粘贴复制的`JSON`字符串就可以自动将你的`JSON`字符串变为表单数据了。

    2017年11月02日 Postman JSON form-data
  • Jersey使用

    最近在看《JavaRESTfulWebService实战》,以前都是用的RESTEasy,Maven配置:```xmlorg.jboss.resteasyresteasy-jaxb-provider3.0.13.Finalorg.jboss.resteasyresteasy-jaxrs3.0.13.Finalorg.jboss.resteasyresteasy-jackson2-provider3.0.13.Finalorg.jboss.resteasyresteasy-client3.0.13.Final```但是使用Jersey(版本:2.x)时,发现并不是那么顺利。这里整理一下,先贴完整的Maven配置:```xmlorg.glassfish.jersey.corejersey-client2.26org.glassfish.jersey.containersjersey-container-servlet2.26org.glassfish.jersey.injectjersey-hk22.26org.glassfish.jersey.bundlesjaxrs-ri2.4com.fasterxml.ja...

    2017年10月27日 Jersey RESTful
  • Spring AOP没有进入切点

    今天使用Spring的AOP做了一个方法的拦截验证,但是发现怎么都进入不了切点。```xml```最后网上找到了一个帖子,发现了问题,这段配置直接放在`applicationContext.xml`无效,放到SpringMVC的配置中去就OK了。>帖子链接(七楼):[http://bbs.csdn.net/topics/391049202](http://bbs.csdn.net/topics/391049202)

    2017年10月20日 Spring AOP
  • JSON数据对比

    做了一个JSON数据比较的页面,方便工作中的需要,暂时只支持纯文本比较。DEMO地址:[http://www.acgist.com/demo/json/index.html](http://www.acgist.com/demo/json/index.html)

    2017年09月15日 JSON 比较
  • Eclipse插件pydev

    最近重拾Python,安装pydev插件时,发现[http://www.pydev.org/updates](http://www.pydev.org/updates)这个地址没有效了。放到浏览器访问了一下,发现失效了,建议跳转新连接[https://dl.bintray.com/fabioz/pydev/5.9.2/](https://dl.bintray.com/fabioz/pydev/5.9.2/)就OK了。

    2017年09月07日 Eclipse pydev 插件
  • HTTP基本认证

    以前就挺好奇路由器认证时的弹窗是怎么做的。今天看了HTTP权威指南的HTTP基本认证基本上了解了。这里放一个JSP的示例,更多资料可以看HTTP权威指南的基本认证机制章节,或者参考后面的文章。```java<%@pageimport="org.apache.http.HttpStatus"%><%@pageimport="org.apache.http.HttpHeaders"%><%@pageimport="org.apache.commons.codec.binary.Base64"%><%@pageimport="org.jboss.netty.handler.codec.base64.Base64Decoder"%><%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><%booleanauth=false;Stringpswd=request.getHeader(HttpHeaders.AUTHORIZATION);if(psw...

    2017年09月06日 HTTP 基本认证
  • Ehcache缓存延迟

    最近用了一下Ehcache的同步,发现存在一些问题,有时候延迟比较严重。导致几台服务器之间的内容不一致。如果要解决这个问题,其实方法也很简单,就是不要使用异步线程去同步信息。只需要将`replicateAsynchronously`设置为`false`即可解决。

    2017年08月21日 Ehcache 缓存 延迟
  • 代码重构

    代码重构真的要非常的小心,小心仔细,特别是对一些特殊情况的处理,还有对旧逻辑的兼容。愁啊愁白了头啊。

    2017年07月31日 代码重构
  • Windows搭建Storm1.1.0环境

    *首先安装JDK,我这里使用的是Java8,安装后配置`PATH`、`JAVA_HOME`。*然后安装zookeeper,我也是安装版本是:Release3.4.10(stable),地址:[https://zookeeper.apache.org/releases.html](https://zookeeper.apache.org/releases.html),解压后配置`PATH`、`ZOOKEEPER_HOME`。启动时还需要复制`conf/zoo_sample.cfg`并改名为`zoo.cfg`。然后就可以启动成功了。*然后现在安装Storm,最新版本:`1.1.0`,地址:[http://storm.apache.org/downloads.html](http://storm.apache.org/downloads.html),解压后配置`PATH`、`STORM_PATH`。配置完成,启动命令:```bashstormnimbusstormsupervisorstormui```启动后就可以访问`http://location:8080`一般情况下会出现几个问题,为了解决问题我们最好是把`c...

    2017年07月18日 Storm
  • @Cacheable键值碰撞问题

    最近遇到一个非常奇怪的问题,就是一个使用了缓存的方法,获取到的一条数据出现了问题,之前并没有缓存过这组查询参数,但是并没有从数据库查询,而是直接从缓存中拿到了数据。但是这个方法从来没有改过,以前也没出现过问题。方法使用的是`@Cacheable`注解的,开始我以为是并发过高导致,但是看了日志发现并不是。于是我把一个小时内(缓存的有效时间)的调用这个方法的参数全部来执行了一遍这个方法,发现缓存的数据大小少了一个。于是我找了一下缓存的默认生成策略是`HashCodeCacheKeyGenerator`。于是用这个生成策略使用参数生成了`key`发现出现了重复的。问题就是它了。```javapublicstaticvoidmain(String[]args)throwsException{//ListCacheKeyGeneratorg=newListCacheKeyGenerator();//StringCacheKeyGeneratorg=newStringCacheKeyGenerator();HashCodeCacheKeyGeneratorg=newHashCodeCacheKeyGenerator();...

    2017年07月17日 @Cacheable Ehcache
  • HTTPClient重定向

    使用的HTTPClient版本4.5.2,默认使用的重定向策略是`DefaultRedirectStrategy`。如果是使用的`POST`,然后`301`重定向是不会执行重定向后的请求的,而是直接获取到`301`状态码。主要的代码:```javapublicbooleanisRedirected(finalHttpRequestrequest,finalHttpResponseresponse,finalHttpContextcontext)throwsProtocolException{Args.notNull(request,"HTTPrequest");Args.notNull(response,"HTTPresponse");finalintstatusCode=response.getStatusLine().getStatusCode();finalStringmethod=request.getRequestLine().getMethod();finalHeaderlocationHeader=response.getFirstHeader("location");switch(status...

    2017年06月23日 HTTPClient 重定向
  • vsftpd搭建ftp服务器

    今天使用vsftpd搭建ftp服务器发现在内网测试机没问题,但是外网测试的时候却不能访问。使用Windows的ftp访问的时候直接提示`500OOPS`,然后就没有了其他错误了。最后使用Linuxftplocalhost时提示:```500OOPS:cannotchangedirectory:/home/ftpLoginfailed.```网上都说是SELinux的问题,但是发现状态为`disable`。仔细看了后面参考文章,发现我的`home`的目录的权限是`700`,然后修改为`755`然后问题就解决了。>参考文章:[https://www.server110.com/vsftpd/201402/6312.html](https://www.server110.com/vsftpd/201402/6312.html)vsftpd搭建教程:[http://www.cnblogs.com/kluan/p/4821537.html](http://www.cnblogs.com/kluan/p/4821537.html)添加新用户步骤:*添加Linux用户:```bashuseradd-d/home/ft...

    2017年06月14日 Linux vsftpd ftp sftp
  • Java和C#使用DES加密结果不一致

    C#和Java使用DES加密有一些区别,主要就是加密模式。Java默认使用的是ECB,C#默认使用的是CBC。例如如下Java代码:```javaSecureRandomrandom=newSecureRandom();DESKeySpecdesKey=newDESKeySpec(password.getBytes());SecretKeyFactorykeyFactory=SecretKeyFactory.getInstance("DES");SecretKeysecurekey=keyFactory.generateSecret(desKey);Ciphercipher=Cipher.getInstance("DES");cipher.init(Cipher.ENCRYPT_MODE,securekey,random);returncipher.doFinal(data);```那么使用C#时需要这样设置:```c#DESCryptoServiceProviderdes=newDESCryptoServiceProvider();byte[]inputByteArray=Encoding.UTF8.Get...

    2017年06月09日 Java C# DES
  • 加密算法学习总结

    经常会使用一些加密算法,也不会太细节的讲解,主要终结一下。常用的MD5、SHA-1这些其实是一种散列算法,也叫HASH算法或者信息摘要算法。主要用来保证数据的完整性,也就是没有被修改,有时也经常用来给用户信息加密,主要是不可逆。数字签名是保证不可抵赖性和完整性,一般都是对信息摘要进行签名,而不是原始数据,这样性能比较高。常用的加密算法DES、RSA、AES等,加密算法分为对称加密和非对称加密,主要的却别就是公钥和私钥是否一样。数字证书:包含公钥等等信息,通过CA公钥验证证书签名判断是否有效数字证书。密钥:包含私钥公钥PKI/CA/RA/OCSP等等还有一个需要了解的分组密码,有ECB,CBC,CFB和OFB这几种算法模式。>参考文章和工具:[http://tool.chacuo.net/cryptrsapubkey](http://tool.chacuo.net/cryptrsapubkey)[http://www.iplaysoft.com/encrypt-arithmetic.html](http://www.iplaysoft.com/encrypt-arithmetic.html)[http:/...

    2017年06月02日 加密算法 RSA DES MD5
1...14151617181920...31

关于 ACGIST

Copyright © 2013-2025 ACGIST.COM. All Rights Reserved.