一、Spring MVC-使用注解构建Spring MVC

一、原理    一个Web应用,会收到用户的请求。使用Spring MVC框架代替使用servlet来处理请求。Spring MVC原理图如下:    可以看到:接收请求后,调度Servlet、处理器映射(handler mapping)、控制器、视图解析器(view resolver)之间等处理...

2018-05-08 20:01:19

阅读数 46

评论数 0

三、Spring-自动装配Bean,Java显式装配Bean,XML显式状态bean

一、创建实例    自动装配Bean,是指使用组件扫描(@ComponentScan),让Spring自动创建Bean。比较常用。1、类A-组件类package two.atuoConfigurationBean; import org.springframework.stereotype.Co...

2018-05-07 21:44:06

阅读数 48

评论数 0

Java-线程并发(二)-队列同步器-AbstractQueuedSynchronizer

1、队列同步器概念队列同步器是用来构建锁的基础,它使用一个int变量表示资源的被锁状态,使用FIFO队列来控制线程对资源的加锁。即线程必须先进入队列等待,当资源空闲允许后才能对资源加锁。它提供线程安全地访问状态:getState():获取状态setState(int newState):设置状态c...

2018-05-06 23:17:34

阅读数 39

评论数 0

Java-线程并发(一)-读写锁-ReentrantReadWriteLock

1、锁基本概念: java并发为了线程安全需要对线程进行加锁,从而保证各线程安全地访问共享数据。但是加锁安全之后,又想提高加锁的效率。出现了共享锁和排它锁。共享锁:同一资源允许多个线程对其进行操作,而且不会引起数据不安全(如脏数据、幻读等现象)排它锁:同一资源允许一个线程对其进行操作,而且不会引起...

2018-05-06 23:14:10

阅读数 45

评论数 0

二、Spring-AOP

一、面向切面编程目的:把应用在各处的功能分离出来,使其成为可重用的组件Spring AOP把业务看作两类:核心关注点和横切关注点核心关注点:核心业务横切关注点:经常融入到核心业务中的系统服务。如日志、事务管理、安全Spring AOP工作原理:AOP使横切关注点模块化,将其与核心业务逻辑相分离。二...

2018-05-06 22:52:20

阅读数 34

评论数 0

一、Spring注入依赖

一、注入依赖(Dependency Injection)  ● 目的:使相互协作组件保持松散耦合。  ● 实现原理:通过Spring容器创建对象的实例,而不是由业务创建。使业务不用关心业务之外的事情。二、创建Spring项目1、Spring项目也可向Java项目一样运行,所以这里创建Java项目。...

2018-05-06 22:30:44

阅读数 42

评论数 0

java虚拟机知识点-垃圾收集器与内存分配策略

一、概述1、线程私有:程序计数器、虚拟机栈、本地方法栈2、运行期间分配和回收内存:Java堆和方法区二、对象存活判定算法可达性分析算法通过一系列成为“GC Roots”的对象作为起点,从这些节点开始向下搜索,搜索所走过的路径成为引用链(Reference Chain);当对象不存在引用链时则为不可...

2018-03-24 11:21:09

阅读数 36

评论数 0

Java虚拟机知识点-内存分配

一、概述1.不再需要为每一个new操作去写配对的delete/free代码,不容易出现内存泄露和内存溢出问题二、运行时数据区域程序计数器:每个线程都有一个(线程私有);唯一一个没有在Java虚拟机规范中规定任何OutMemoryError的内存区域Java虚拟机栈:线程私有;描述Java方法执行的...

2018-03-24 09:22:17

阅读数 79

评论数 1

邻接矩阵的图遍历—深度、广度 java实现

1、图结构 public static int max_ver_num=10; //图 class MGraph{ char ver[]=new char[max_ver_num]; //顶点向量 int arc[][]=new int[max_ver_num][max_ver_...

2018-03-18 22:30:46

阅读数 244

评论数 0

java 静态代理、JDK代理、Cglib代理

1、代理模式        代理对象代表目标对象被访问,代理类可以在目标对象实现的基础上,增强额外的功能操作,即扩展目标对象的功能。      2、常见的三种代理实现静态代理动态代理java JDK代理Cglib代理3、静态代理代理类和被代理类实现相同的接口或继承相同的父类,代理对象通过他们的共同...

2018-03-14 18:28:31

阅读数 39

评论数 0

java对象序列化

1、序列化Java 提供了一种对象序列化的机制,该机制中,一个对象可以被表示为一个字节序列,该字节序列包括该对象的数据、有关对象的类型的信息和存储在对象中数据的类型。将序列化对象写入文件之后,可以从文件中读取出来,并且对它进行反序列化,也就是说,对象的类型信息、对象的数据,还有对象中的数据类型可以...

2018-03-13 10:54:39

阅读数 46

评论数 0

java泛型

一、泛型方法1、规则所有泛型方法声明都有一个类型参数声明部分(由尖括号分隔),该类型参数声明部分在方法返回类型之前每一个类型参数声明部分包含一个或多个类型参数,参数间用逗号隔开。类型参数能被用来声明返回值类型类型参数只能代表引用型类型        //泛型方法 public static &a...

2018-03-13 10:44:48

阅读数 38

评论数 0

java新添知识点—第十五章

【注】博客在看了java程序设计基础和java语言程序设计(基础篇)总结的,想从头开始复习请请看java程序设计基础一、基本数据类型Java对大小写敏感/* */注释不能嵌套在Java中,整型的范围与运行Java代码的机器无关长整型数值:在后面加L二进制数值:前缀为0b数值写法:数值可用下划线隔开...

2018-03-13 09:59:26

阅读数 152

评论数 0

java补漏知识点—第十四章

一、二进制I/O文件输入输出类:文本I/O类和二进制I/O类抽象类InputStream:是读取二进制数据的根类方法:read()从输入流中读取下一个字节数据read(byte[] b)从输入流中读取b.length个字节到数组b中read(byte[] b,int off,int len)从输入...

2018-03-13 09:55:35

阅读数 47

评论数 0

java补漏知识点—第十三章

一、继承super:指代父类,可用于调用父类的普通方法和构造方法构造必须是构造方法的第一行(this也是)构造一个类的实例时,将会调用沿着继承链的所有父类的构造方法父类应该有无参的构造函数(防止子类没有定义构造时调用)仅当方法是可访问的(不是private)时,它才能被重写(覆盖≠重载)静态方法也...

2018-03-13 09:54:32

阅读数 40

评论数 0

java补漏知识点—第十二章

一、抽象类Number类:是数值包装类、BigInteger以及BigDecimal类的抽象父类Calendar类:是GregorianCalendar类的抽象父类方法:get(int field)返回一个给定日历域的值set(int field,int value)将给定的日历设为指定值set(...

2018-03-13 09:53:43

阅读数 40

评论数 0

java补漏知识点—第十一章

一、异常处理声明异常的关键字:throws抛出异常后,编译器会跳到catch块;若没有,则跳到调用该方法的方法,继续查找catch块,如果在打印链中都找不到,程序终止并在控制台打印catch块一个catch块可以捕获一个异常对象,它就能捕获其所有异常子类的异常若多个catch块,异常子类的顺序必须...

2018-03-13 09:52:56

阅读数 46

评论数 0

java补漏知识点—第十章

一、数组除基本类型外,数组变量都可看做其引用;传递参数是,基本类型是按值传递,而数组是按其引用传递的堆用于动态内存分配变长参数类型相同但个数可变方法中的参数声明:typeName… parameterName只能给方法中指定一个可变长参数,同时该参数必须是最后一个参数Array类sort或para...

2018-03-13 09:51:39

阅读数 37

评论数 0

java补漏知识点—第九章

一、Math类三角函数sin(radians)返回以弧度为单位的角度的三角正弦函数值,1弧度约为57.3°cos(radians)返回以弧度为单位的角度的三角余弦函数值tan(radians)返回以弧度为单位的角度的三角正切函数值toRadians(degree)将以度为单位的角度值转换为以弧度表...

2018-03-13 09:42:37

阅读数 41

评论数 0

java补漏知识点—第八章

0.   解释的过程就是一次将字节码中单独的一步翻译为目标机器语言代码,翻译完一步后立即执行1.  输入1)  创建Scanner对象:Scanner in=new Scanner(System.in)2) 对象调用方法:in.方法        a) nextByte()、nextShort()...

2018-03-12 20:59:16

阅读数 45

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭