- 博客(23)
- 资源 (1)
- 收藏
- 关注
原创 Java 命令模式
命令模式:设计为三层,调用层,封装层,实现层 传统不封装,直接到实现层可以完成功能,但是存在一定耦合,且实现层如果需要实现特殊算法等API封装,那么调用层还需要自己写,或者写个工具类,没必要,所以直接设计出一层封装层,可以解耦,且有特殊的功能实现...
2022-03-30 11:34:05
657
原创 Java 策略模式
由于使用draw画图,无法直接放上来,所以使用图片展示,如果需要请Q正文:代码整合//鸭子超类。public abstract class Duck { //鸭子需要飞和叫,所以创建两个行为接口 FlyBehavior flyBehavior; QuackBehavior quackBehavior; //为行为接口类型声明两个引用变量,所有鸭子子类(在同一个package中)都继承他们 pu...
2022-03-19 23:30:38
232
原创 java12种设计模式之策略模式
策略模式:以王者荣耀的英雄选择召唤师技能为准!条件需要:1.首先需要英雄 2.需要召唤师技能如何搭建策略模式 分析:如果每个英雄类直接实现召唤师技能接口会麻烦。耦合度高,英雄应该只负责它英雄,接口应该也不能直接使用的。所以需要把这个拆分出来。 搭建思想:1.创建一个抽象Hero模板类。 2.创建一个齐天大圣英雄类 3.创建一个ISkill技能接口 4....
2018-10-22 16:12:47
463
原创 AOP注解切面
/** 步骤 * 1、导入aop依赖 * 2、创建一个业务逻辑类MathCalculator,用于切面切入进去在(方法之前,之后,正常,异常运行)是调用 * 3、定义一个日志切面类。(LogAspects),它往业务逻辑切面 * 通知方法: * 前置通知:(@Before),logStart,在目标方法(div)之前执行...
2018-10-11 11:05:05
3094
原创 @AutoWired 手动装配
@AutoWired注解: 主要作用是从容器中找到对应的Bean,然后通过注解直接把它注入到类的字段上。 容器:@Configuration@ComponentScan({"com.cqvie.controller","com.cqvie.dao","com.cqvie.service"})public class MainConfigOfAutowired ...
2018-10-08 20:49:36
1143
原创 使用可视化的监控报表-Spring Boot Admin
使用Spring Boot Admin步骤: 1、搭建服务端,用来检测客户端浏览器服务器其实服务端也是一个springboot项目 2、在pom中添加依赖<dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-...
2018-09-27 10:31:08
617
1
原创 spring boot 注解异常 ControllerAdvice,ExceptionHandler
异常方法放入这个类并加上ControllerAdvice注解@ControllerAdvicepublic class MyControllerAdvice {Controller出现异常,会根据对应的异常找到定义的异常,没有则统一进入异常的父类Exception出现异常进入此方法操作逻辑,可以返回String,也可以返回modelandview试图@ResponseBody@...
2018-09-25 22:15:21
516
原创 Spring Boot核心注解讲解
@EnableAutoConfiguration:完成一些初始化的操作,比如在pom文件中添加web和其他依赖需要配置相关信息,都有它来自动完成。@SpringBootConfiguration:这个往里面跟踪发现就是一个@Configuration注解,它替代了之前的xml文件,这个注解用在哪个类上面,就可以在类里面添加Bean对象了。@SpringBootApplication:spr...
2018-09-21 09:33:17
274
原创 Spring Boot全局配置文件讲解
1、修改内嵌容器端口号server.port=8888 默认80802、自定义属性配置在application.properties中添加msg=helloworld在java代码中使用@value{msg}并放在属性的上面,就把msg的值赋给变量了@Value("${msg}")private String msg; 输出helloworld3、配置引用变量...
2018-09-13 10:06:47
262
原创 Spring Cloud微服务介绍
什么是微服务 了解微服务和单体架构区别就知道了 1、单体架构类似于spring-mvc开发模式,所有操作都在一个项目管理,这种模式就是单体架构。 优点:适用于小型的项目。 缺点:团队开发困难,测试成本高,迭代性差,可升缩性差,可靠性差,跨语言程度差。 2、微服务:说的简单易懂点它是一种架构模式,而这种模式是一个大型的复杂软件由几个或多个服务...
2018-09-10 21:51:07
205
原创 mybatis中_parameter使用和常用sql的讲解
一、通过Idea逆向工程发现sql语句有这样一句话 <if test="_parameter != null" > <include refid="Example_Where_Clause" /></if>二、这个_parameter到底指的是什么东西呢 看名字能知道就是参数的意思。但是具体呢? 1、这个_p...
2018-06-19 10:39:06
2627
原创 springboot接收String并映射到Date里,转换器
一、添加转换类@Configurationpublic class WebConfigBeans { @Autowired private RequestMappingHandlerAdapter handlerAdapter; /** * 增加字符串转日期的功能 */ @PostConstruct public void ini...
2018-06-14 15:11:43
2575
原创 Idea设置自动提示代码,其他全是垃圾,这才是你想要的设置,不是快捷键
一、点击右下的按钮二、把Power Save Mode勾去掉,这是省电模式不得不说下,网上全是设置快键键的没有用的废物!受不了,还全部复制别人的。难受
2018-06-13 19:50:00
4067
4
原创 @Select注解动态sql语句
一、我们先看看xml配置的动态sql语句二、如何使用注解也能达到这种效果呢?1、先在sql里面加上标签<script>2、之后就是用上面的配置,但是得注意双引号,和每一条语句的逗号分隔@Select({"<script>", "SELECT * FROM user", "<where>", "<i
2018-06-13 11:39:23
10536
2
原创 springboot@PathVariable怎么接收参数并映射到对象里,别找了,都在我这里
@RequestMapping(value = "findUser/{name}/{id}" , method = RequestMethod.GET) //"findUser/{name}/{id}后面可以继续跟参数,并且根据属性名就可以映射到User对象里了。 //是不是特别简单呢。 public List<User> findUser(User user){ ...
2018-06-13 09:28:34
8188
3
原创 websocket与安卓通信讲解和使用。
一、先讲解客户端安卓的步骤: 1、使用okhttpClient来请求websocket OkHttpClient okHttpClient=new OkHttpClient(); String ip="192.168.43.17"; //这里是ws开头,需要注意,后面的路径是项...
2018-06-11 11:56:41
2024
原创 多线程之线程池的讲解和使用
一、线程池的用处: 1、首先创建多个线程对象放入线程池,可以减少每次去跟操作系统通信。 2、效率高,但是线程池的数量要把握好。二、线程池的用法 1、通过完成实现接口的类(Executors)来创建线程池(ExecutorService) //创建一个线程池,线程池可以有2个线程 ExecutorService pool = Executors....
2018-06-09 16:29:51
433
原创 多线程之线程组讲解及使用
一、线程组的用处: 1、 操作线程组可以把线程组里的所有 线程做同样处理。 2、 方便管理,把相同需要放入一个组里二、使用线程组 1、默认线程的线程组是main线程组里。 public static void method1() { ThreadRunnable t = new ThreadRunnable(); ...
2018-06-09 13:43:12
569
原创 多线程讲解,没废话
1、守护线程’setDaemon(true); 意思就是当这个java程序子线程或者子线程停止了,守护线程接收到了这个消息,就会马上让守护线程终止,但是守护线程还是会继续执行一下,可以理解为自杀也需要一点时间。ThreadDaemon td1 = new ThreadDaemon(); ThreadDaemon td2 = new ThreadDaemon(); t...
2018-06-06 11:54:31
271
原创 java类的强制转换
//父类无法直接转子类// Person person = new Person();// 但是如果创建时候就是子类,这样既可转换,// 此时的person对象-不过是personchild能力削弱之后的对象,真身还是PersonChild// Person person = new PersonChild();// ...
2018-06-05 12:06:22
1606
原创 java基础结算出每个类型的存储空间,和越界处理
首先是byte类型,占一个字节,8bit,也就是八个二进制组成。int4个字节,4个字节,总共占32个bit二进制。 // 定义了三个byte类型的变量,b1,b2,b3 // b1的值是3,b2的值是4,b没有值 byte b1 = 3, b2 = 4, b; //做加法运算先进行类型提升,变为int形,结果也是int型,所以int型返回b...
2018-06-04 20:50:16
293
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人