- 博客(26)
- 资源 (2)
- 收藏
- 关注
原创 MyBatis学习笔记之注解式
1. 了解什么是MyBatis: 用百度的话来说,MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java对象)映...
2018-11-25 19:09:12 266
原创 Spring之Aop通知
在Spring的面向切面(AOP)中有五大通知(advice),分别为前置通知,后置通知,环绕通知以及异常通知:前置通知:在目标方法前执行的通知,实现MenthodBeforeAdvice接口后置通知:在目标方法执行之后,无论是否发生异常,都进行执行的通知,实现AfterReturningAdvice接口异常通知:在目标方法出现异常时才会进行执行的代码,实现ThrowsAdvice...
2018-09-19 11:15:06 203
原创 Spring中ref和idrefd的区别
idref用来将容器内其他bean的id传给<constructor-arg>/<property>元素,同时提供错误验证功能<bean id ="theTargetBean" class="..." /><bean id ="theClientBean2" class="..." /><spa
2018-09-19 11:10:37 326
原创 Java Bean 与Spring Bean 的区别
什么是JavaBean:JavaBean是一种JAVA语言写的可重用组件。JavaBean符合一定规范写的Java类,是一种规范。它的方法命名,构造以及行为必须符合特定的要求: 1.所有属性为private 2.这个类必须具有一个公共的(public)无参构造函数 3.private属性必须提供public的getter和setter来给外部访问,并且方法的命...
2018-09-17 20:44:51 7765
原创 Hibernate关联关系映射之一对一
在数据库中存在四种关联关系映射,分别为一对一(one-to-one),一对多(one-to-many),多对一(many-to-one),多对多(many-to-many),其中日常开发中比较常用的是一对多和多对一的映射,我们先来了解一下一对一的关系映射:什么是一对一关系映射呢?就好比身份证和人之间的关系,一个人对应一张身份证,一张身份证对应一个人,这就是一对一的关系。接下来就通过实例来具体分...
2018-09-09 09:57:33 189
原创 HIbernate对象状态转换
hibernate的对象状态: 临时状态(新建状态):指对象没有保存进数据库之前的状态 持久化状态(托管状态):指对象在数据库中有,也在session中缓存 游离状态(脱管状态):指对象在数据库中有,但是不存在session缓存中 删除状态:指对象在数据库中没有,session缓存中也没有hibernate对象状态转换:临时状态-...
2018-09-07 10:07:32 663
原创 简述Hibernate主键生成策略
HIbernate的主键类型有很多种,下面给大家介绍六种常见的主键类型1.assigned: assigned主键由外部程序生成,在save()之前必须指定一个。assigned主键类型与HIbernate和底层数据库都无关,所以可以跨数据库操作。assigned在存储对象面前,必须使用主键的setter方法进行赋值,至于这个值怎么生成完全由自己决定,不建议使用。2.identi...
2018-09-05 21:07:27 1794
原创 java中等号之间的区别
简单来说,java中"="是赋值,"=="是判断,而"==="在java中是没有的,只有JavaScript才有,用于比较。在javascript中:先说 ===,下面的规则用来判断两个值是否===相等: 1、如果类型不同,就[不相等] 2、如果两个都是数值,并且是同一个值,那么[相等];(!例外)的是,如果其中至少一个是NaN,那么[不相等]。(判断一个值是否是NaN,只能用isNaN()来判...
2018-06-23 20:25:11 1264
原创 自定义标签之TagSupport与BodyTagSupport的区别
在自定义标签里,要处理标签体时要继承BodyTagSupport,其中TagSupport是BodyTagSupport的父类。接下来,我们来看看二者之间的区别: 1. TagSupport与BodyTagSupport :的区别主要是标签处理类是否需要与标签体交互,如果不需要交互的就用TagSupport,否则如果不需要交互就用BodyTagSupport。用 TagSupport实现...
2018-06-03 19:48:58 2950
原创 简析java反射
一.什么是反射:java反射机制是在运行状态中,对于任意一个类,都能知道这个类的所有属性和方法;对于任意一个对象,都能调用它的任意方法和属性 ;反射就是把java类中的各个成分映射成一个个对象;它是框架设计的灵魂。二.反射的作用: 1. 编译:.java->.class 编译:.class->.java 2.通过反射机制访问java对象的属性,方法和构造方法等三.具体功...
2018-06-02 16:35:53 248
原创 简析java XML
1.XML全称为:Extensible Markup Language 可扩展性标记语言。2.语法: 01.文档声明:声明XML文档的类型 <?xml version="1.0" encoding="UTF-8"?> 02.标签元素: a.文件有且只有一个根标签,其他标签都必须封装在根标签里面 b...
2018-05-31 11:23:07 140
原创 简析java中Map集合
1.特点: 无序,以键值对的形式添加元素,键值不能重复,值可以重复,它没有继承Collection接口例://键值对 Map<String, Object> map=new HashMap<>(); //相当于 String a=a; map.put("a", "a"); map.put("b", "b"); map.put("b&am
2018-05-31 10:38:28 146
原创 简析java中SET集合
1.特点:无序,对象不可重复注:不可重复指的是能加入重复的值,但是加入值后无效果。注:set之所以能够实现不重复的信息,是因为在它包含的add方法中,add操作实际上是赋值给了map,而加入的值则作为了key,map的可以是不能重复的。2.遍历(循环)方式: FOREACH:Set s=new HashSet(); s.add("1"); s.add("2"); s.add("...
2018-05-31 10:13:47 169
原创 java快速排序算法简析
快速排序算法是什么? 快速排序算法相当于冒泡排序的升级版;简单的说,先找一个基准数,通过排序将数据分为两部分,基准数一边的数据比另一边的数据都要小,然后按照该方法,将两部分数据分别进行快速排序,整个过程递归进行,最后该数据完成排序,形成有序序列。~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~我是快乐的分割线~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~...
2018-05-27 15:30:06 144
原创 XML文件与properties文件的异同
properties配置文件,风格是一个属性对应于一个值(key = value)这样的键值匹对模式。这样给我的感觉就是每一行properties配置文件的键值,对应着一次赋值。事实上,如果你试验一下,在前后两行properties文件中给同一个属性赋不同值,得到的结果往往是属性是后面赋值的值。properties的局限性在于,只能处理赋值。 xml配置文件则是一个树的结构,因此,可...
2018-05-25 22:51:26 843
原创 XML文件的java操作有哪些
1. DOM (JAXP Crimson解析器) DOM是用与平台和语言无关的方式表示XML文档的官方W3C标准。DOM是以层次结构组织的节点或信息片断的集合。这个层次结构允许开发人员在树中寻找特定信息。分析该结构通常需要加载整个文档和构造层次结构,然后才能做任何工作。由于它是基于信息层次的,因而DOM被认为是基于树或基于对象的。DOM以及广义的基于树的处理具有几个优点。首先,由于树在内存...
2018-05-25 22:29:56 148
原创 XML文件中的DTD是什么
DTD全称为Document Type Definition,中文意思为“文档类型定义”。DTD肩负着两重任务:一方面它帮助你编写合法的代码,另一方面它让浏览器正确地显示器代码。 DTD相当于是编写XML文件的代码提示蓝本,在XML文件中声明DTD的ID或者URL,再在MyEclipse或者Eclipse中配置一下,重新打开这个XML文件,就可以用alt+/获得像编写JAVA代码一样的提示功能。一...
2018-05-25 22:12:49 441
原创 什么是 XML文件
XML定义:Extentsible Markup Language(可扩展标记语言)的缩写,是用来定义其他语言的一种元语言,它的前身是SGML(标准通用标记语言); 它的语法和HTML比较相似,但是HTML中的元素是固定的,而XML的标签可以有用户自由定义。XML应用:XML可以应用配置文件和存储数据。XML文档命名规则:区分大小写不能使用空格,不能使用冒号不建议以XML、xml、Xml开头...
2018-05-25 22:02:10 347
转载 java中Comparable和Comparator 的区别
Java的Comparator和Comparable当需要排序的集合或数组不是单纯的数字型时,通常可以使用Comparator或Comparable,以简单的方式实现对象排序或自定义排序。1 Comparable简介:Comparable是排序接口。若一个类实现了Comparable接口,就意味着该类支持排序。实现了Comparable接口的类的对象的列表或数组可以通过Collections.so...
2018-05-24 21:22:36 246
转载 堆栈之间的差别
栈和堆栈是一个概念。队列先进先出,在队头做删除操作,在队尾做插入操作。栈先进后出,在栈顶做插入和删除操作。堆和它们不同,不存在是先进后出还是先进先出。 1.栈(Stack)是操作系统在建立某个进程时或者线程(在支持多线程的操作系统中是线程)为这个线程建立的存储区域,该区域具有FIFO的特性,在编译的时候可以指定需要的Stack的大小。在编程中,例如C/C++中,所有的局部变量都是从栈中分配内存空间...
2018-05-23 21:56:32 281
转载 LinkedList和ArrayList异同
ArrayList和LinkedList的大致区别为:1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构。(LinkedList是双向链表,有next也有previous);2.对于随机访问get和set,ArrayList觉得优于LinkedList,因为LinkedList要移动指针;3.对于新增和删除操作add和remove,LinedList比较占...
2018-05-23 21:32:38 120
转载 Vector和ArrayList异同
从图中可以看出,Vector和ArrayList者都实现了List接口.所有使用方式也很相似,主要区别在于因为实现方式的不同,所以对不同的操作具有不同的效率。首先我们来看看Vector和ArrayList的相同点:这两个类都实现了List接口(List接口继承了Collection接口),他们都是有序集合,即存储在这两个集合中的元素的位置都是有顺序的,相当于一种动态的数组,我们以后可以按位置索引...
2018-05-23 21:05:33 164
转载 LIMIT分页有什么优化方法
1.子查询优化法 先找出第一条数据,然后大于等于这条数据的id就是要获取的数据 缺点:数据必须是连续的,可以说不能有where条件,where条件会筛选数据,导致数据失去连续性 2.倒排表优化法 倒排表法类似建立索引,用一张表来维护页数,然后通过高效的连接得到数据 缺点:只适合数据数固定的情况,数据不能删除,维护页表困难 3.反向查找优化法 当偏移超过一半记录数的...
2018-05-22 19:39:03 532
原创 mysql自定义函数:传入值(0显示值为女,1显示值为男)
DELIMITER $$CREATE /*[DEFINER = { user | CURRENT_USER }]*/ FUNCTION `t204`.`fun_student`(sex INT) RETURNS VARCHAR (50) /*LANGUAGE SQL | [NOT] DETERMINISTIC | { CONTAINS SQL | NO SQL ...
2018-05-22 19:30:47 1017
原创 mysql简化通用的分页存储过程
#当前页 pageindex #每一页显示的记录数 prows DELIMITER $$CREATE /*[DEFINER = { user | CURRENT_USER }]*/ PROCEDURE `t204`.`pro_student`(pageindex INT,prows INT) /*LANGUAGE SQL | [NOT] DETERMINISTIC ...
2018-05-22 19:28:40 106
原创 mysql数据库解决sql语句无法识别运算符问题
#concat 字符串拼接#2 页码数 5每页显示5行SET @add=concat('select * from student limit ',(2-1)*5,',',5,'');PREPARE s FROM @add;EXECUTE s;
2018-05-22 19:24:16 493
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人