java ee 学习
WoongCha
这个作者很懒,什么都没留下…
展开
-
多线程----生产者消费者问题
多线程----生产者消费者问题背景去购物买炸鸡,店里只能做好十只鸡等着卖,突然来了十五个客人,要买十五只鸡,卖出十只后,剩下的五个客人只能等厨房做,厨房一次只能做一只鸡。synchronzied版本package com.woongcha;//TODO synchronziedpublic class TestPCFinal { public static void main(String[] args) { Shop shop = new Shop();原创 2020-07-28 21:08:17 · 150 阅读 · 0 评论 -
多线程----银行取款问题(线程安全问题)
多线程----银行取款问题(非线程安全问题)背景张三在银行存了10000元钱,突发奇想,让两个人在柜台和ATM同时取出6000元(完全相同时间),能得到12000元吗?简易银行交互系统package com.woongcha;public class UnsafeBank implements Runnable { private int cash; private Bank bank; public UnsafeBank(int cash, Bank bank) {原创 2020-07-27 15:32:24 · 1097 阅读 · 0 评论 -
SpringBoot遇到的问题(实时更新)
最近遇到的问题在springboot下,没有@NotNull注解版本问题,2.3.1取消了@NotNUll等一系列数据校验的注解,回退到2.2.6即可mybatis报错java.lang.AbstractMethodError: com.mysql.jdbc.Connection.isValid(I)Zmysql版本问题 依赖换成5.1.47以上版本...原创 2020-06-29 22:39:33 · 299 阅读 · 0 评论 -
如何使用逆向工程生成代码(java)
逆向工程什么是逆向工程?逆向工程是通过数据库中已经存在的数据表,反向生成java中的实体类,并且生成对应的ORM(Object Relationship Mapping 对象关系映射)持久层代码。引入的依赖 <!--数据库链接java--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</ar原创 2020-06-12 22:52:33 · 2470 阅读 · 2 评论 -
SpringMVC 各组件工作流程 附图
Spring MVCSpringMVC是Spring的分支产品,以SpringIoC容器为基础,并利用容器的特性简化它的配置。Spring MVC组件DispatcherServlet:前置控制器,是整个流程控制的核心,控制其他组件的执行,进行统一调度,降低组件之间的耦合性,相当于总指挥。Handler:处理器,完成具体的业务逻辑,相当于 Servlet 或 Action。HandlerMapping:DispatcherServlet 接收到请求之后,通过 HandlerMapping 将不同原创 2020-05-26 17:35:32 · 382 阅读 · 1 评论 -
搭建SSM框架步骤(超基础版,附代码讲解)
SSM框架搭建meaven的创建创建一个maven,应用原型模板创建,省事。配置pom.xml<dependencies> <!-- SpringMVC --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.0.原创 2020-05-20 13:34:14 · 1179 阅读 · 1 评论 -
spring框架下的AOP(基础代码分析)
使用spring框架下的AOP由于spring框架对AOP进行了封装,所以可以用面向对象的方法实现AOP。只需要创建一个切面对象,将所有的非业务信息放进去即可。代码分析@Aspect@Componentpublic class LoggerAspect { @Before("execution(public int com.woongcha.utils.impl.CalImpl.*(..))") public void before(JoinPoint joinPoint){原创 2020-05-14 10:41:43 · 496 阅读 · 1 评论 -
AOP动态代理完整过程(超基础,超详细)
AOP动态代理租房的时候,房屋中介就是代理(筛选符合自己要求的房子,再供自己选择)。代理也需要和自己有相同的所有能力(自己有看房的能力,中介也有)。在程序中,代理是一个对象。这个对象由一个类产生,这个类本身就是动态产生。这个类本身不会被创建,在程序运行时动态产生。InvocationHandler提供生成代理类的功能,InvocationHandler不是代理类,是帮助生成动态代理类的一个类。代码分析public class MyInvocationHandler imp原创 2020-05-14 10:38:46 · 1496 阅读 · 0 评论 -
Bean的作用域及生命周期
Bean有7种作用域,只详细了解其中最常用的两种:singleton prototypesingleton(单例):在每个Spring IoC容器中一个bean定义对应一个对象实例。singleton是spring容器的默认作用域。<bean id="scope" class="com.woongcha.scope.scope" scope="singleton"/>pu...原创 2020-04-12 21:37:16 · 134 阅读 · 0 评论 -
Spring中的Bean 实例化
什么是BeanSpring就是一个大工厂,Bean就是Spring容器中需要加工生产的部分。我们都在微博上@过某某,对方会优先看到这条信息,并给你反馈,那么在Spring中,你标识一个@符号,那么Spring就会来看看,并且从这里拿到一个Bean(注册)或者给出一个Bean(使用)Bean的实例化想要用这个对象,就先要实例化这个对象。想要用Spring容器中的Bean,就要先实例...原创 2020-04-11 23:32:16 · 177 阅读 · 0 评论 -
2020/4/10 Spring IoC DI工作机制
**IoC工作机制**1. 先写一个userDao接口,再写一个实现类实现这个方法。2. 通过applicationContext.xml文件创建一个id为userDao的Bean。3. 在测试类中调用say()方法。public class TestIoC { public static void main(String[] args) { //初始化Spring容器,加载配置文...原创 2020-04-10 11:09:47 · 136 阅读 · 0 评论