Spring

20145209刘一阳《JAVA程序设计》第二周课堂测试

假装没事ソ 提交于 2021-02-13 10:32:37
第二周课堂测试 1、if关键字后面的小括号内,表达式的值可以为10。(B) A .true B .false 2、表达式0xaa | 0x55的值为(C) A .FF B .0 C .255 D .1 3、表达式15&250的值为(B) A .FF B .0 C .255 D .1 4、表达式10 ^ 12的值为(A) A .0x06 B .120 C .9 D .14 5、表达式-2 >> 1的值为(D) A .2^31 – 1 B .2^15 – 1 C .1 D .-1 6、表达式-2 >>> 1的值为(A) A .2^31 – 1 B .2^15 – 1 C .1 D .-1 7、下列与3*4的值相等的是(D) A .3/2 B .3<2 C .3*2^2 D .3<<2 8、观察以下方法的定义,则该方法的返回类型为(A) ReturnType method(byte x, double y) { return (short)x/y*2; } A .double B .short C .int D .byte 9、在命令行输入“java demo 3”,下列程序的运行结果为(C) public class unsigned { public static void main(String args[]) { int i = Integer.parseInt(args[0])

SpringBoot笔记

风格不统一 提交于 2021-02-13 09:37:10
1. 今日大纲 1、 了解Spring的发展 2、 掌握Spring的java配置方式 3、 学习Spring Boot 4、 使用Spring Boot来改造购物车系统 2. Spring的发展 2.1. Spring1.x 时代 在Spring1.x时代,都是通过xml文件配置bean,随着项目的不断扩大,需要将xml配置分放到不同的配置文件中,需要频繁的在java类和xml配置文件中切换。 2.2. Spring2.x时代 随着JDK 1.5带来的注解支持,Spring2.x可以使用注解对Bean进行申明和注入,大大的减少了xml配置文件,同时也大大简化了项目的开发。 那么,问题来了,究竟是应该使用xml还是注解呢? 最佳实践: 1、 应用的基本配置用xml,比如:数据源、资源文件等; 2、 业务开发用注解,比如:Service中注入bean等; 2.3. Spring3.x到Spring4.x 从Spring3.x开始提供了Java配置方式,使用Java配置方式可以更好的理解你配置的Bean,现在我们就处于这个时代,并且Spring4.x和Spring boot都推荐使用java配置的方式。 3. Spring的Java配置方式 Java配置是Spring4.x推荐的配置方式,可以完全替代xml配置。 3.1. @Configuration 和 @Bean

Spring MVC 4.2.4.RELEASE 中文文档

本小妞迷上赌 提交于 2021-02-13 06:49:22
W3Cschool网页版: Spring MVC 4.2.4.RELEASE 中文文档 spring官方原版: Spring Framework Reference Documentation spring官网所有工具开发文档: https://docs.spring.io/spring-framework/ 。含api,pdf,html等格式的文档。 要查找spring—boot文档就把“spring-framework/”换成“spring-boot/”,查找其他文档同样修改url就行 spring官网: spring全家桶都在这 来源: oschina 链接: https://my.oschina.net/u/4157404/blog/3082408

springboot情操陶冶-web配置(五)

99封情书 提交于 2021-02-13 01:46:25
本文讲讲mvc的异常处理机制,方便查阅以及编写合理的异常响应方式 入口例子 很简单,根据之前的文章,我们只需要复写 WebMvcConfigurer 接口的异常添加方法即可,如下 1.创建简单的异常处理类,本例针对绑定异常 package com.example.demo.web.validation; import com.example.demo.web.model.ResEntity; import com.google.gson.Gson; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.validation.BindException; import org.springframework.validation.ObjectError; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.handler.AbstractHandlerExceptionResolver; import javax.servlet.http.HttpServletRequest; import javax.servlet.http

微服务架构的四大金刚利器

可紊 提交于 2021-02-12 19:37:52
Photo @Christopher Campbell 文 | 孔凡勇 概述 互联网应用发展到今天,从单体应用架构到 SOA 以及今天的微服务,随着微服务化的不断升级进化,服务和服务之间的稳定性变得越来越重要,分布式系统之所以复杂,主要原因是分布式系统需要考虑到网络的延时和不可靠,微服务很重要的一个特质就是需要保证服务幂等,保证幂等性很重要的前提需要分布式锁控制并发,同时缓存、降级和限流是保护微服务系统运行稳定性的三大利器。 随着业务不断的发展,按业务域的划分子系统越来越多,每个业务系统都需要缓存、限流、分布式锁、幂等工具组件, distributed-tools 组件(暂未开源)正式包含了上述分布式系统所需要的基础功能组件。 distributed-tools 组件基于 tair、redis 分别提供了 2 个 springboot starter ,使用起来非常简单。 以使用缓存使用 redis 为例, application.properties 添加如下配置: redis.extend.hostName= 127.0 .0.1 redis.extend.port= 6379 redis.extend.password=pwdcode redis.extend.timeout= 10000 redis.idempotent.enabled= true 接下来的篇幅

springcloud情操陶冶-初识springcloud

落爺英雄遲暮 提交于 2021-02-12 19:28:37
许久之前便听到了springcloud如雷贯耳的大名,但是不曾谋面,其主要应用于微服务的相关架构。笔者对微服务并不是很了解,但其既然比较出众,遂也稍微接触研究下 springcloud特性 springcloud作为spring团队的微服务架构,其有如下的特性(摘自官方文档) Distributed/versioned configuration(分布式/版本化配置) Service registration and discovery(服务注册与发现) Routing(路由) Service-to-service calls(服务间远程调用) Load balancing(负载均衡) Circuit Breakers(熔断器) Distributed messaging(分布式消息) 应该就是微服务的相关特性,笔者不对上述的概念进行阐述,读者可相应的查阅相关 文档 springcloud config springcloud板块下有很多的分支,根本看不过来,就挑笔者比较感兴趣的配置管理 springcloud config 作为分析的入口把。具体的使用以及概念本文就不展开了,在官方文档上都有,笔者喜欢从源码角度看下springcloud是如何整合springboot进行扩展的 MAVEN依赖 根据官方的例子,笔者最后还是通过IDEA开发工具引入 Spring Initializr

Spring Cloud Config 和Spring Cloud Bus实现配置中心

老子叫甜甜 提交于 2021-02-12 19:05:09
Spring Cloud是很多组件的集合,Spring将常用的技术框架进行包装和整合,如mybatis zookeeper rabbitmq redis等等,还有一些科技公司贡献出来的一些经过生产环境验证的组件如奈飞公司贡献出的eureke(服务发现) Hystrix(监控与隔离) Feign(声明式服务调用) Ribbon(负载均衡) Zuul(网关) 等等,详情移步官网 SpringCloud Spring Cloud是目前比较流行的微服务开发框架,可以与容器技术如docker一起使用,提高生产力。但是组件过多也有一定的学习曲线,而且适合大公司的架构不见得适合我们的业务,要根据实际情况灵活运用。 Spring Cloud Config是基于git/svn仓库来管理配置,然后有一个ConfigServer来负责拉取配置,ConfigClient是使用配置的应用,比如现在有很多微服务应用,如订单管理,用户管理,地址管理,库存管理等等,在这些微服务的pom中增加ConfigClient就可以自动从ConfigServer拉取配置。我们还希望配置更新之后可以实时获取,这时候需要用到spring cloud中的bus组件,bus其实就是基于amqp的一个消息总线,spring对rabbitmq和kafka支持的比较好。常见的场景是: 1、更改配置 2、push到远程仓库 3

Spring事务传播机制

倾然丶 夕夏残阳落幕 提交于 2021-02-12 19:04:52
阅读文本大概需要3分钟 Spring管理的事务是逻辑事务,而且物理事务和逻辑事务最大差别就在于事务传播行为,事务传播行为用于指定在多个事务方法间调用时,事务是如何在这些方法间传播的。 下面以a.save()里调用了b.save()举例,事务方法之间调用时事务如何传播。 1 2 3 4 5 6 7 8 9 10 11 12 13 @Service public class A { @Autowired private B b; @Transactional (propagation=Propagation.XXX) public void save () { // ... b.save(); // ... } } 1 2 3 4 5 6 7 8 @Service public class B { @Transactional (propagation=Propagation.XXX) public void save () { // ... } } 1. REQUIRED 默认的spring事务传播级别,使用该级别的特点是,如果上下文中已经存在事务,那么就加入到事务中执行,如果当前上下文中不存在事务,则新建事务执行。 如下图: 由于两个方法属于同一个物理事务,如果发生回滚,则两者都回滚。 2. SUPPORTS 顾名思义就是可以支持事务,如果b.save()在事务环境中运行

从零开始搭建后台管理系统(一)--创建SpringBoot项目

不打扰是莪最后的温柔 提交于 2021-02-12 18:58:42
最近我在搭建一个SpringBoot的后台管理系统,写到一半想起来博客好像很久很久没更新了,所以准备把这个项目的开发过程记录到博客系统里,这个系统现在已经集成了Mysql、Mybatis-Plus、Redis、Shiro、Druid、lombok。这个系统我开发了两个星期了,主要时间花在Shiro上了,现在Shrio使用Redis作为Catch和Session存储器,未来准备集成Kafka作为日志记录系统,把日志数据写到数据库里。 第一步我们要创建一个SpringBoot项目,我个人习惯使用IDEA,所以使用IDEA创建SpringBoot项目。 打开IDEA,点击File->New->Project。然后选择SpringInitializr,点next,配置项目信息。我自己本地装的还是JDK8,所以JavaVersion就选8。配置信息配置好之后,就要选择引用的包,我们到时候自己在pom文件里添加就行,继续next,配置项目名称。最后配置一下项目名称和创建地址,我们就搭建成了。 这个是项目的地址 https://github.com/Raindtop/Spring-Backstage,这个后台搭建的所有代码都在这里面。 来源: oschina 链接: https://my.oschina.net/u/4109273/blog/4952473