自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

原创 记一次使用阿里云oss中出现的特殊字符ecoder导致的问题

记一次使用阿里云oss中出现的特殊字符ecoder导致的问题由于公司业务需求, 需要为购买了私有云的客户进行oss数据迁移, 在数据迁移完成后, 发现大量的图片显示不出来迁移的方案        客户原本购买的公司平台账号, 其使用的数据全部储存在公司的oss文件服务器上, 例如, 某图片的url为:https://example.domain.com/test-Picture/2019_03_22-11_41_50.j

2020-06-09 11:27:56 4165

原创 记一次SpringBoot消息转换器带来的错误

最近将自己负责的项目从dubbo升级为了spring cloud组件, 带来了一系列的问题, 其中有一个关于消息转换器的问题问题描述在使用feign客户端调用一个外部的接口时String url = ossClient.uploadFile("bucketName", "objectKey", data);外部的接口时这样的@PostMapping(value = "/oss/upl...

2019-11-06 19:11:04 608

原创 MySQL的update语句的一个限制

MySQL的update语句的一个限制今天在执行这么一条update语句时候MySQL报这个错误:You can’t specify target table for update in FROM clause原SQL:UPDATE uac_userSET password = ‘df08ac10afa7ac78686b1ae2061cbec2’ ,salt = ‘263be4e...

2018-12-17 20:11:03 709

原创 深入理解Java虚拟机:类加载及执行子系统的案例与实战

代码编译的结果从本地机器码变成了字节码是储存格式发展的一小步,却是编程语言发展的一大步class文件以何种格式存储,类型何时加载,如何连接,以及虚拟机如何执行字节码指令等都是由虚拟机直接控制的行为,用户程序无法对其进行改变能通过程序进行操作的,主要是字节码生成与类加载器这两部分的功能Tomcat:正统的类加载器架构主流的web服务器都实现了自己定义的类加载器(一般不止一个)一个功能健全的...

2018-11-30 14:23:50 244

原创 使用阿里云服务器搭建java测试环境(1)

使用阿里云服务器搭建java测试环境(1)在开发中只接触了代码层面,项目的打包上线之类的都不是很懂,想学习一下,买了个阿里云的服务器直接开干安装java,Tomcat,MySQL过程略搭建SVN服务器安装svn服务器端yum install subversion创建一个版本仓库名字可以任意取,仅表示仓库的名 // 创建一个svn目录mkdir -p /svn/re...

2018-11-24 18:24:19 1426

原创 Spring AOP的应用:权限拦截

Spring AOP应用之权限拦截众所周知,Spring框架给我们java开发带来了极大的便利,几乎没有人不使用Spring,而Spring随着不断的发展功能也越来越壮大,这里我们谈一谈Spring的AOP在实际项目中的应用Spring的AOP是基于动态代理实现的,默认使用的是jdk动态代理,这里不再详述动态代理的机制。在web开发中,经常需要对用户的权限进行控制,常用的手段是RBAC,这里...

2018-11-23 09:29:49 560

原创 跨域问题的解决方案

跨域问题的解决方案工作中由于做微服务相关,在多系统之间互相调用服务的时候会出现跨域问题首先需要知道什么情况算跨域请求,其原因就是浏览器的同源策略同源策略限制了从同一个源加载的文档或脚本如何与来自另一个源的资源进行交互。这是一个用于隔离潜在恶意文件的重要安全机制下列为总结的跨域情景相同host不同端口不同host不同协议解决方案1.Jsonpjsonp是一种...

2018-11-22 11:51:45 190

原创 SpringBoot问题汇总

SpringBoot问题汇总整合Dubbo使用属性方式配置componentScandubbo使用注解方式提供服务的时候,需要在yml文件中配置扫描路径使用Dubbo的starter后,SpringBoot的yml文件中的提示是这样的dubbo.scan.base-packages:这样配置后consumer中始终报空指针,原来这里应该使用这种方式dubbo.scan.baseP...

2018-11-20 09:43:52 171

原创 EffectiveJava:异常转译与异常链

抛出与抽象相对应的异常如果在某个方法中抛出的异常与该方法本身没有联系,即:异常产生于更低层,那么往往我们不容易准确的判断异常产生的原因异常转译:更高层的实现应该捕获低层的异常,同时抛出对高层进行解释的异常,这就是异常转译// 低层异常    class CarWrongException extends Exception {    &nbsp...

2018-11-20 09:43:32 302

转载 再谈Spring AOP

Spring AOP总结Spring官方整合了AspectJ框架作为aop的实现之一,同时自己提供了Scheme Base的方式,由于AspectJ支持注解式的开发,现在大多使用AspectJJoinPoint 对象JoinPoint对象封装了SpringAop中切面方法的信息,在切面方法中添加JoinPoint参数,就可以获取到封装了该方法信息的JoinPoint对象常用API:...

2018-11-20 09:42:41 105

转载 使用@ControllerAdvice注解实现异常的统一处理

使用@ControllerAdvice注解实现异常的统一处理在spring 3.2中,新增了@ControllerAdvice 注解,可以用于定义@ExceptionHandler、@InitBinder、@ModelAttribute,并应用到所有@RequestMapping中/** * controller 增强器 * @author sam */@ControllerAdvic...

2018-11-19 13:55:09 416

原创 Java8 Stream API

Java 8 Stream API在Java8中,集合接口有两个方法来生成流stream()–为集合创建串行流parallelStream()–为集合创建并行流forEachmapdistinctfilterlimitsortedCollectors统计流的操作流的操作类型分为两种:Intermediate:一个流可以后面跟随零个或多个 intermediate ...

2018-11-19 13:54:33 133

原创 ECMAScript6语法总结

ECMAScript6语法总结ECMAScript6对javascript的变量类型进行了区分,同时增加了一些新的语言特性1.块级作用域ES5中的全局作用域,函数作用域的基础上,ES6新增了块级作用域: {} ,if和for中的{}也属于块级作用域 { var a = 1; console.log(a); // 1 } console....

2018-11-19 13:53:55 134

原创 File操作遇到的问题

File操作遇到的问题最近的项目中需要对文件进行解压操作以及对文件进行上传,在本地测试的时候没有问题,但是服务器上回报错,查日志才知道原来解压的路径出了问题,原因就是"/“和windows的”",windows由于两种都能识别,因此没有问题,但是linux只能识别"/"因此路径就会出问题1. 以后使用File.separator,而不是使用"/"或"\"2. 对于url的分割,不要使用Fil...

2018-11-19 13:53:10 368

原创 devTool引发的类型转化异常

devTool引发的类型转化异常今天在开发的时候遇到了一次类型转换异常com.dabanjia.soul.keeper.api.uac.model.Company can not cast to com.dabanjia.soul.keeper.api.uac.model.Company包命类名完全相同原因:pom文件中引入了DevTools配置。当你使用DevTools进行缓存时,...

2018-11-19 13:52:32 391

原创 Effective Java:对于实例控制,枚举类型优先于readResolver

对于实例控制,枚举类型优先于readResolverreadResolve方法:对于一个正在被反序列化的对象,如果它的类正确的定义了一个readResolve方法,那么在反序列化之后,新建对象上的readResolve方法会被调用,该方法返回的对象引用将被返回,取代新建的对象.新建的对象引用没有保留,立即成为垃圾回收的对象.一般用于单例设计模式中确保实现序列化接口的单例类的正确性如果依赖r...

2018-11-19 13:51:31 221

原创 Effective Java:考虑用序列化代理代替序列化实例

考虑用序列化代理代替序列化实例前提:使用Serializable接口会增加出错和出现安全问题的可能性(因为他导致实例要利用语言之外的机制来创建,而不是普通的构造器)解决方案:使用序列化代理模式为可序列化的类设计一个私有的静态嵌套类,精确的表示外围类的实例的逻辑状态,这个嵌套类就是序列化代理嵌套类具有一个单独的构造器,参数类型就是外围类,这个构造器只从它的参数中复制数据(不进行一致性检查和...

2018-11-19 13:50:48 292

原创 Java8-lambda表达式总结

lambda表达式总结lambda表达式是java8新特性,主要有如下极大用处1.简化匿名内部类public class LambdaDemo { @Test public void test01() { // 使用匿名内部类 new Thread(new Runnable() { @Override ...

2018-11-19 13:49:41 140

原创 异常的抛出与文档的建立

每个方法抛出的异常都要有文档在程序中异常的出现时不可避免的,对于异常而言,科学的管理方式是对异常进行文档说明,这样有利于后期方法正确的使用,对于接口而言,建立文档可以更好的让他人使用该接口始终要单独的声明受检查的异常,并且利用@throws进行标记不要声明一个最大的Exception或者Throwable,这样不利用后续对异常具体原因进行分析不要将运行时异常抛出,而是通过文档记录下有可能...

2018-11-19 13:48:25 90

空空如也

空空如也

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

TA关注的人

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