随笔分类 -  Java

大叔也学学java,跟跟风...
摘要:spring在启动时会自己把bean(java组件)注册到ioc容器里,实现控制反转,在开发人员使用spring开发应用程序时,你是看不到new关键字的,所有对象都应该从容器里获得,它们的 在放入容器时已经确定! 下面说一下三种注册bean的方法 1. @ComponentScan 1. @Bean 阅读全文
posted @ 2019-02-22 14:39 张占岭 阅读(13212) 评论(0) 推荐(2) 编辑
摘要:AuthenticationProvider 默认实现:DaoAuthenticationProvider 授权方式提供者,判断授权有效性,用户有效性,在判断用户是否有效性,它依赖于UserDetailsService实例,开发人员可以自定义UserDetailsService的实现。 1. add 阅读全文
posted @ 2019-02-19 13:41 张占岭 阅读(27239) 评论(1) 推荐(2) 编辑
摘要:概念 在UserDetailsService的loadUserByUsername方法里去构建当前登陆的用户时,你可以选择两种授权方法,即角色授权和权限授权,对应使用的代码是hasRole和hasAuthority,而这两种方式在设置时也有不同,下面介绍一下: 1. 角色授权:授权代码需要加ROLE 阅读全文
posted @ 2019-02-18 16:27 张占岭 阅读(23277) 评论(0) 推荐(1) 编辑
摘要:简单谈谈 在我们进行开发过程中,单元测试是保证代码质量的最有利工具,我们每个方法都要有对应的测试,在目前开发规范中,主要把测试分为单元测试和集成测试,我们的公用方法都要写自己的单元测试,而web api的每个接口都要写集成测试。 redis session 分布式环境下,单机的session是不能满 阅读全文
posted @ 2019-01-18 17:08 张占岭 阅读(1612) 评论(0) 推荐(0) 编辑
摘要:对于实体中的 和`updated_on`来说,它没有必要被开发人员去干预,因为它已经足够说明使用场景了,即在插入数据和更新数据时,记录当前时间,这对于mybatis来说,通过拦截器是可以实现的,记得之前说过在jpa中实现的方法,主要通过jpa的注解实现的,因为今天的mybatis需要用到java的拦 阅读全文
posted @ 2019-01-17 14:19 张占岭 阅读(16782) 评论(2) 推荐(0) 编辑
摘要:在面向对象的设计里,继承是非常必要的,我们会把共有的属性和方法抽象到父类中,由它统一去实现,而在进行lombok时代之后,更多的打法是使用@Builder来进行对象赋值,我们直接在类上加@Builder之后,我们的继承就被无情的屏蔽了,这主要是由于构造方法与父类冲突的问题导致的,事实上, 上就可以了 阅读全文
posted @ 2019-01-14 14:15 张占岭 阅读(13699) 评论(0) 推荐(0) 编辑
摘要:使用场景 EntityListeners在jpa中使用,如果你是mybatis是不可以用的 它的意义 对实体属性变化的跟踪,它提供了保存前,保存后,更新前,更新后,删除前,删除后等状态,就像是拦截器一样,你可以在拦截方法里重写你的个性化逻辑。 它的使用 定义某种功能类型 @Embeddable注解表 阅读全文
posted @ 2019-01-09 11:22 张占岭 阅读(20938) 评论(2) 推荐(2) 编辑
摘要:在新的项目里使用仓库的包 上一讲中我们说了 "java~gradle构建公用包并上传到仓库" ,如何发布公用的非自启动类的包到私有仓库,而这一讲我们将学习如何使用这些包,就像我们使用spring框架里的功能包一样。 参考:http://www.zhyea.com/2018/04/24/gradle 阅读全文
posted @ 2019-01-09 09:21 张占岭 阅读(1549) 评论(0) 推荐(0) 编辑
摘要:java~gradle构建公用包并上传到仓库 我们一般会把公用的代码放在一个包里,然后其它 项目可以直接使用,就像你使用第三方包一样! 仓库 存储包的地方叫做仓库,一般可以分为本地仓库和远程仓库,本地一般用mavenLocal表示,在build.gradle中我们都可以看到,一般在安装包时,会优先从 阅读全文
posted @ 2019-01-07 17:19 张占岭 阅读(2202) 评论(0) 推荐(0) 编辑
摘要:主要介绍三种,字符串配置,数组配置和带默认值的配置 字符串配置 数组配置 带默认值的配置 为三种类型的配置添加单元测试 阅读全文
posted @ 2019-01-02 11:10 张占岭 阅读(3601) 评论(0) 推荐(0) 编辑
摘要:@Async注解,可以实现异步处理的功能,它可以有返回值,或者直接在新线程时并行执行一个任务,对于异步来说,它的执行是有条件的, 里,当spring在注入时,才不会相互影响,因为异步是一个比较特殊的代理。 异步入口 具体的异步方法 上面代码中的异步,是一个没有返回值的,一般像发送消息可以采用这种方式 阅读全文
posted @ 2018-12-27 19:33 张占岭 阅读(2520) 评论(1) 推荐(0) 编辑
摘要:简介 参考:https://springcloud.cc/spring cloud dalston.html _encryption_and_decryption_2 RSA非对称加密有着非常强大的安全性,HTTPS的SSL加密就是使用这种方法进行HTTPS请求加密传输的。因为RSA算法会涉及Pri 阅读全文
posted @ 2018-12-21 11:56 张占岭 阅读(2021) 评论(0) 推荐(0) 编辑
摘要:在springboot里,我们的task任务可以添加docker构建的功能,在gradle集成环境里,直接可以实现编译,测试,打包镜像的流水线作业,很是方便! 下面分享给大家,在gradle里添加docker镜像的构建功能。 添加依赖 添加Dockerfile 添加部署脚本 阅读全文
posted @ 2018-12-18 11:57 张占岭 阅读(1559) 评论(0) 推荐(0) 编辑
摘要:transient和synchronized这两个关键字没什么联系,这两天用到了它们,所以总结一下,两个关键字做个伴! transient 持久化时不被存储,当你的对象实现了Serializable接口,这个对象就可以被存储到磁盘上了,而有一些信息比较敏感时,不想被持久化,就可以声明为transie 阅读全文
posted @ 2018-12-13 14:34 张占岭 阅读(505) 评论(1) 推荐(0) 编辑
摘要:在springboot项目框架里,把一个项目两大模块,主项目main和测试项目test,而我们的测试项目根据功能又可以再分,比如可以有单元测试,集成测试,业务测试等等。 对于一个初学者来说,建立模块的方式需要我们掌握,网上的资料不多,很少讲到这个功能点,大叔在这里普及一下! springboot项目 阅读全文
posted @ 2018-11-27 12:07 张占岭 阅读(8083) 评论(0) 推荐(0) 编辑
摘要:参考:https://ultraq.github.io/thymeleaf layout dialect/Installation.html 依赖包 注意里面的thymeleaf layout dialec就是模板包,必须要安装的,我之前就坑在这里了 default.html模板页 注意在layou 阅读全文
posted @ 2018-11-22 15:50 张占岭 阅读(3314) 评论(0) 推荐(0) 编辑
摘要:基于队列和基于消息的TTL TTL是time to live 的简称,顾名思义指的是消息的存活时间。rabbitMq可以从两种维度设置消息过期时间,分别是队列和消息本身。 队列消息过期时间 Per Queue Message TTL: 通过设置队列的x message ttl参数来设置指定队列上消息 阅读全文
posted @ 2018-11-19 19:06 张占岭 阅读(9750) 评论(1) 推荐(1) 编辑
摘要:广播fanout 主要是将一个消息,分发到绑定了它的队列上,而这些队列如 自己去建立和绑定! 对生产者是解耦的 生产者不需要关心消费者有多少,消费者如果需要这种消息,只需要把队列绑定到exchange上即可 流程 1. 打开rabbitmq的ui 2. 建立两个队列fanout1,fanout2 3 阅读全文
posted @ 2018-11-19 19:03 张占岭 阅读(6112) 评论(0) 推荐(0) 编辑
摘要:今天说一下自己在项目中遇到的问题,然后总结一下Integer引用类型和int值类型 关于默认值 1. Integer默认为null 2. int默认为0 为什么把数据实体设计成Integer或者不是int 大叔认识,这样设计有助于我们区分这个字段是否被设置过,或者说是否被set过,而对于Intege 阅读全文
posted @ 2018-11-12 18:48 张占岭 阅读(4048) 评论(1) 推荐(2) 编辑
摘要:测试不应该访问外部资源 对于单元测试,集成测试里,如果被测试的方法中使用到了redis,你需要去模拟一个单机环境的redis server,因为只有这样,你的测试才是客观的,即不会因为网络和其它因素影响你测试的准确性! redis的内嵌版本embedded redis 它的源码在github上,大家 阅读全文
posted @ 2018-11-12 14:12 张占岭 阅读(4311) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示