摘要: ZooKeeper 是一个开放源码的分布式协调服务,它是集群的管理者,监视着集群 中各个节点的状态根据节点提交的反馈进行下一步合理操作。最终,将简单易用 的接口和性能高效、功能稳定的系统提供给用户。 分布式应用程序可以基于 Zookeeper 实现诸如数据发布/订阅、负载均衡、命名 服务、分布式协调 阅读全文
posted @ 2020-04-12 19:24 咔啡 阅读(313) 评论(0) 推荐(0)
摘要: 第一种:接口实现类继承 SqlSessionDaoSupport:使用此种方法需要编写 mapper 接口,mapper 接口实现类、mapper.xml 文件。 1、在 sqlMapConfig.xml 中配置 mapper.xml 的位置 <mappers> <mapper resource=" 阅读全文
posted @ 2020-04-12 19:23 咔啡 阅读(1393) 评论(0) 推荐(0)
摘要: 1)一级缓存: 基于 PerpetualCache 的 HashMap 本地缓存,其存储作用域为 Session,当 Session flush 或 close 之后,该 Session 中的所有 Cache 就 将清空,默认打开一级缓存。 2)二级缓存与一级缓存其机制相同,默认也是采用 Perpe 阅读全文
posted @ 2020-04-12 19:22 咔啡 阅读(237) 评论(0) 推荐(0)
摘要: Mybatis 仅支持 association 关联对象和 collection 关联集合对象的延迟加载,association 指的就是一对一,collection 指的就是一对多查询。在 Mybatis配置文件中,可以配置是否启用延迟加载 lazyLoadingEnabled=true|fals 阅读全文
posted @ 2020-04-12 19:20 咔啡 阅读(8601) 评论(0) 推荐(0)
摘要: <mapper namespace="com.lcb.mapping.userMapper"> <!--association 一对一关联查询 --> 第 43 页 共 485 页<select id="getClass" parameterType="int" resultMap="Classes 阅读全文
posted @ 2020-04-12 19:19 咔啡 阅读(640) 评论(0) 推荐(0)
摘要: 不同的 Xml 映射文件,如果配置了 namespace,那么 id 可以重复;如果没有配 置 namespace,那么 id 不能重复; 原因就是 namespace+id 是作为 Map<String, MapperStatement>的 key 使用的,如果没有 namespace,就剩下 i 阅读全文
posted @ 2020-04-12 19:18 咔啡 阅读(1611) 评论(0) 推荐(0)
摘要: Mybatis 动态 sql 可以在 Xml 映射文件内,以标签的形式编写动态 sql,执行原理 是根据表达式的值 完成逻辑判断并动态拼接 sql 的功能。 Mybatis 提供了 9 种动态 sql 标签:trim | where | set | foreach | if | choose | w 阅读全文
posted @ 2020-04-12 19:17 咔啡 阅读(4307) 评论(0) 推荐(0)
摘要: 首先,创建一个简单的 insert 语句: <insert id=”insertname”> insert into names (name) values (#{value}) </insert> 然后在 java 代码中像下面这样执行批处理插入: list < string > names = 阅读全文
posted @ 2020-04-12 19:16 咔啡 阅读(880) 评论(0) 推荐(0)
摘要: Dao 接口即 Mapper 接口。接口的全限名,就是映射文件中的 namespace 的值; 接口的方法名,就是映射文件中 Mapper 的 Statement 的 id 值;接口方法内的 参数,就是传递给 sql 的参数。 Mapper 接口是没有实现类的,当调用接口方法时,接口全限名+方法名拼 阅读全文
posted @ 2020-04-12 19:14 咔啡 阅读(1637) 评论(0) 推荐(0)
摘要: 第 1 种: 通过在查询的 sql 语句中定义字段名的别名,让字段名的别名和实体类 的属性名一致。 第 35 页 共 485 页<select id=”selectorder” parametertype=”int” resultetype=” me.gacl.domain.order”> sele 阅读全文
posted @ 2020-04-12 19:09 咔啡 阅读(3005) 评论(0) 推荐(0)
摘要: 1、Mybatis 和 hibernate 不同,它不完全是一个 ORM 框架,因为 MyBatis 需要 程序员自己编写 Sql 语句。 2、Mybatis 直接编写原生态 sql,可以严格控制 sql 执行性能,灵活度高,非常 适合对关系数据模型要求不高的软件开发,因为这类软件需求变化频繁,一但 阅读全文
posted @ 2020-04-12 19:08 咔啡 阅读(1002) 评论(0) 推荐(0)
摘要: 1、SQL 语句的编写工作量较大,尤其当字段多、关联表多时,对开发人员编写 SQL 语句的功底有一定要求。 2、SQL 语句依赖于数据库,导致数据库移植性差,不能随意更换数据库。 阅读全文
posted @ 2020-04-12 19:07 咔啡 阅读(234) 评论(0) 推荐(0)
摘要: 1、Mybatis 是一个半 ORM(对象关系映射)框架,它内部封装了 JDBC,开发时 只需要关注 SQL 语句本身,不需要花费精力去处理加载驱动、创建连接、创建 statement 等繁杂的过程。程序员直接编写原生态 sql,可以严格控制 sql 执行性 能,灵活度高。 2、MyBatis 可以 阅读全文
posted @ 2020-04-12 19:06 咔啡 阅读(215) 评论(0) 推荐(0)
摘要: 1.Ribbon都是调用其他服务的,但方式不同。2.启动类注解不同,Ribbon是@RibbonClient feign的是@EnableFeignClients3.服务指定的位置不同,Ribbon是在@RibbonClient注解上声明,Feign则是在定义抽象方法的接口中使用@FeignClie 阅读全文
posted @ 2020-03-25 17:02 咔啡 阅读(4080) 评论(0) 推荐(0)
摘要: 1.feign采用的是基于接口的注解2.feign整合了ribbon,具有负载均衡的能力3.整合了Hystrix,具有熔断的能力使用:1.添加pom依赖。2.启动类添加@EnableFeignClients3.定义一个接口@FeignClient(name=“xxx”)指定调用哪个服务 阅读全文
posted @ 2020-03-25 08:34 咔啡 阅读(2271) 评论(0) 推荐(0)
摘要: 1.RPC主要的缺陷是服务提供方和调用方式之间的依赖太强,需要对每一个微服务进行接口的定义,并通过持续继承发布,严格版本控制才不会出现冲突。 2.REST是轻量级的接口,服务的提供和调用不存在代码之间的耦合,只需要一个约定进行规范。 阅读全文
posted @ 2020-03-23 13:09 咔啡 阅读(560) 评论(0) 推荐(0)
摘要: 当一个服务调用另一个服务由于网络原因或自身原因出现问题,调用者就会等待被调用者的响应 当更多的服务请求到这些资源导致更多的请求等待,发生连锁效应(雪崩效应) 断路器有完全打开状态:一段时间内 达到一定的次数无法调用 并且多次监测没有恢复的迹象 断路器完全打开 那么下次请求就不会请求到该服务 半开:短 阅读全文
posted @ 2020-03-23 02:56 咔啡 阅读(2215) 评论(0) 推荐(1)
摘要: 一、SpringBoot和SpringCloud简介 1、SpringBoot:是一个快速开发框架,通过用MAVEN依赖的继承方式,帮助我们快速整合第三方常用框架,完全采用注解化(使用注解方式启动SpringMVC),简化XML配置,内置HTTP服务器(Tomcat,Jetty),最终以Java应用 阅读全文
posted @ 2020-03-23 02:06 咔啡 阅读(2077) 评论(0) 推荐(0)
摘要: 域名系统(服务)协议(DNS)是一种分布式网络目录服务,主要用于域名与 IP 地址的相互转换,以及控制因特网的电子邮件的发送。 阅读全文
posted @ 2020-03-20 08:32 咔啡 阅读(656) 评论(0) 推荐(0)
摘要: OpenSSL实现了5种信息摘要算法,分别是MD2、MD5、MDC2、SHA(SHA1)和RIPEMD。SHA算法事实上包括了SHA和SHA1两种信息摘要算法。此外,OpenSSL还实现了DSS标准中规定的两种信息摘要算法DSS和DSS1。 阅读全文
posted @ 2020-03-20 00:39 咔啡 阅读(442) 评论(0) 推荐(0)
摘要: OpenSSL一共实现了4种非对称加密算法,包括DH算法、RSA算法、DSA算法和椭圆曲线算法(EC)。DH算法一般用于密钥交换。RSA算法既可以用于密钥交换,也可以用于数字签名,当然,如果你能够忍受其缓慢的速度,那么也可以用于数据加密。DSA算法则一般只用于数字签名。 阅读全文
posted @ 2020-03-20 00:38 咔啡 阅读(3875) 评论(0) 推荐(0)
摘要: SSL能使用户/服务器应用之间的通信不被攻击者窃听,并且始终对服务器进行认证,还可选择对用户进行认证。SSL协议要求建立在可靠的传输层协议(TCP)之上。SSL协议的优势在于它是与应用层协议独立无关的,高层的应用层协议(例如:HTTP,FTP,TELNET等)能透明地建立于SSL协议之上。SSL协议 阅读全文
posted @ 2020-03-19 23:35 咔啡 阅读(947) 评论(0) 推荐(0)
摘要: SSL是Secure Sockets Layer(安全套接层协议)的缩写,可以在Internet上提供秘密性传输。Netscape公司在推出第一个Web浏览器的同时,提出了SSL协议标准。其目标是保证两个应用间通信的保密性和可靠性,可在服务器端和用户端同时实现支持。已经成为Internet上保密通讯 阅读全文
posted @ 2020-03-19 23:32 咔啡 阅读(974) 评论(0) 推荐(0)
摘要: 在计算机网络上,OpenSSL是一个开放源代码的软件库包,应用程序可以使用这个包来进行安全通信,避免窃听,同时确认另一端连接者的身份。这个包广泛被应用在互联网的网页服务器上。 阅读全文
posted @ 2020-03-19 23:31 咔啡 阅读(484) 评论(0) 推荐(0)
摘要: 1.服务发布时,指定对应的服务名,将服务注册到 注册中心(eureka zookeeper) 2.注册中心加@EnableEurekaServer,服务用@EnableDiscoveryClient,然后用ribbon或feign进行服务直接的调用发现。 阅读全文
posted @ 2020-03-19 23:22 咔啡 阅读(465) 评论(0) 推荐(0)
摘要: 在计算中,负载平衡可以改善跨计算机,计算机集群,网络链接,中央处理单元或磁盘驱动器等多种计算资源的工作负载分布。负载平衡旨在优化资源使用,最大化吞吐量,最小化响应时间并避免任何单一资源的过载。使用多个组件进行负载平衡而不是单个组件可能会通过冗余来提高可靠性和可用性。负载平衡通常涉及专用软件或硬件,例 阅读全文
posted @ 2020-03-19 10:13 咔啡 阅读(689) 评论(0) 推荐(0)
摘要: Feign是受到Retrofit,JAXRS-2.0和WebSocket启发的java客户端联编程序。Feign的第一个目标是将约束分母的复杂性统一到http apis,而不考虑其稳定性。在employee-consumer的例子中,我们使用了employee-producer使用REST模板公开的 阅读全文
posted @ 2020-03-19 08:54 咔啡 阅读(765) 评论(0) 推荐(0)
摘要: 注解 @EnableAutoConfiguration, @Configuration, @ConditionalOnClass 就是自动配置的核心,首先它得是一个配置文件,其次根据类路径下是否有这个类去自动配置。 阅读全文
posted @ 2020-03-17 04:02 咔啡 阅读(172) 评论(0) 推荐(0)
摘要: 当一个服务调用另一个服务由于网络原因或自身原因出现问题,调用者就会等待被调用者的响应 当更多的服务请求到这些资源导致更多的请求等待,发生连锁效应(雪崩效应)断路器有完全打开状态:一段时间内 达到一定的次数无法调用 并且多次监测没有恢复的迹象 断路器完全打开 那么下次请求就不会请求到该服务半开:短时间 阅读全文
posted @ 2020-03-16 10:04 咔啡 阅读(542) 评论(0) 推荐(1)
摘要: 在分布式系统中,由于服务数量巨多,为了方便服务配置文件统一管理,实时更新,所以需要分布式配置中心组件。在Spring Cloud中,有分布式配置中心组件spring cloud config ,它支持配置服务放在配置服务的内存中(即本地),也支持放在远程Git仓库中。在spring cloud co 阅读全文
posted @ 2020-03-15 11:15 咔啡 阅读(635) 评论(0) 推荐(1)
摘要: Spring Cloud Gateway是Spring Cloud官方推出的第二代网关框架,取代Zuul网关。网关作为流量的,在微服务系统中有着非常作用,网关常见的功能有路由转发、权限校验、限流控制等作用。使用了一个RouteLocatorBuilder的bean去创建路由,除了创建路由RouteL 阅读全文
posted @ 2020-03-15 10:19 咔啡 阅读(150) 评论(0) 推荐(0)
摘要: Spring Boot 的核心配置文件是 application 和 bootstrap 配置文件。application 配置文件这个容易理解,主要用于 Spring Boot 项目的自动化配置。bootstrap 配置文件有以下几个应用场景。使用 Spring Cloud Config 配置中心 阅读全文
posted @ 2020-03-15 02:02 咔啡 阅读(4726) 评论(0) 推荐(0)
摘要: Spring Boot 优点非常多,如:独立运行简化配置自动配置无代码生成和XML配置应用监控上手容易Spring Boot 集这么多优点于一身,还有理由不使用它呢? 阅读全文
posted @ 2020-03-13 06:55 咔啡 阅读(352) 评论(0) 推荐(0)
摘要: 启动类上面的注解是@SpringBootApplication,它也是 Spring Boot 的核心注解,主要组合包含了以下 3 个注解: @SpringBootConfiguration:组合了 @Configuration 注解,实现配置文件的功能。 @EnableAutoConfigurat 阅读全文
posted @ 2020-03-12 12:03 咔啡 阅读(2115) 评论(0) 推荐(0)
摘要: .properties 和 .yml,它们的区别主要是书写格式不同。 1).properties app.user.name = javastack 2).yml app: user: name: javastack 另外,.yml 格式不支持 @PropertySource 注解导入配置。 阅读全文
posted @ 2020-03-11 09:34 咔啡 阅读(7189) 评论(0) 推荐(0)
摘要: 打包用命令或者放到容器中运行用 Maven/ Gradle 插件运行直接执行 main 方法运行 阅读全文
posted @ 2020-03-11 04:41 咔啡 阅读(585) 评论(0) 推荐(0)
摘要: 可以不需要,内置了 Tomcat/ Jetty 等容器。 阅读全文
posted @ 2020-03-10 22:12 咔啡 阅读(922) 评论(0) 推荐(0)
摘要: 配置变更JDK 版本升级第三方类库升级响应式 Spring 编程支持HTTP/2 支持配置属性绑定更多改进与加强… 阅读全文
posted @ 2020-03-10 22:04 咔啡 阅读(1011) 评论(0) 推荐(0)
摘要: 以前的模式是 所有的代码在同一个工程中 部署在同一个服务器中 同一个项目的不同模块不同功能互相抢占资源 微服务 将工程根据不同的业务规则拆分成微服务 微服务部署在不同的机器上 服务之间进行相互调用 Java微服务的框架有 dubbo(只能用来做微服务),spring cloud(提供了服务的发现,断 阅读全文
posted @ 2020-03-09 22:27 咔啡 阅读(143) 评论(0) 推荐(0)
摘要: spring-boot-starter-web 嵌入tomcat和web开发需要servlet与jsp支持 spring-boot-starter-data-jpa 数据库支持 spring-boot-starter-data-redis redis数据库支持 spring-boot-starter 阅读全文
posted @ 2020-03-09 21:39 咔啡 阅读(1091) 评论(0) 推荐(0)