自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 收藏
  • 关注

原创 Spring中的事务

Spring事务的原理:Spring中对事务支持实际上就是数据库对事务的支持,它依赖于数据库对事务性,只是利用Spring中AOP进行了事务的封装,我们传统的JDBC如果要开启事务一般如下:加载驱动获取连接对象Connection con = DriverManager.getConnection()con.setAutoCommit(false);预处理sql语句preparesta...

2019-09-02 21:22:52 630

原创 innodb和myisam的区别及索引实现原理

innodb和myisam是Mysql中常用的两种引擎,以下是两者的比较:innodbmyisam对事务的支持支持四种事务的隔离级别不支持支持的锁种类行锁、页锁、表锁表锁是否支持全文索引不支持支持索引聚集索引非聚集索引并发根据事务隔离级别读写互相阻塞储存基于磁盘的资源是InnoDB表空间数据文件和它的日志文件在磁盘中储存...

2019-08-16 21:17:42 499

原创 为什么juc下的集合是线程安全、高效的?

我们常用的的java.util下的比如Arraylist、HashMap、HashSet虽然线程不安全,但执行效率很高,HashTable、Vector虽然线程安全(基于synchronized锁控机制),但性能很低,而juc(java.util.concurrent)下的集合却可以保证既安全有高效,如:ArrayList对应的高并发类是CopyOnWriteArrayList,HashSet...

2019-08-09 21:49:02 409

原创 简单SSM框架实现增删改查

1.创建maven的web项目,创建如下的简单目录结构:2.在pom文件中添加相关jar包依赖以及配置tomcat插件:<build> <plugins> <!-- tomcat插件 --> <plugin> <groupId>org.apache.tomcat.maven</groupId>...

2019-07-13 20:44:40 739 1

原创 MyBatis中映射文件的数据交互与动态sql语句的基本设置

一.数据交互传入参数时不同参数传递的映射文件设置下面列出了不同参数个数的传参设置:1.单个参数的传递设置:<!-- #{}的大括号中可以自定义参数名--><delete id="delete" parameterType="int"> delete from dept where deptno=#{deptno}</delete>2.多个参数...

2019-07-12 19:50:37 602

原创 利用MyBatis中typeHandlers属性将List数据存储到数据库中

在mybatis框架中,可以利用设置typeHandlers属性来实现数据库的数据与java类型的转换,一般由系统提供,但若是一些特殊的例如数组、集合的数据,那么我们需要自定义我们自己的类型转换器, 将list集合存储到数据库中:我们就需要在查询语句中,将List转换成字符串的形式设置到占位符中,同样从数据库中取可以将取到的字符串的数据转换成List集合,下面是代码演示:1.定义的pojo类p...

2019-07-11 19:48:16 1375

转载 线程相关问题

什么是线程?线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位,可以使用多线程对进行运算提速。比如,如果一个线程完成一个任务要100毫秒,那么用十个线程完成改任务只需10毫秒什么是线程安全和线程不安全?通俗的说:加锁的就是是线程安全的,不加锁的就是是线程不安全的线程安全线程安全: 就是多线程访问时,采用了加锁机制,当一个线程访问该类的某个数据时...

2019-06-01 09:08:48 339

原创 JS常用基本方法

JS代码可以写在哪?(1.)可以直接写在html代码中:这里直接写在超链接里 <a href="javascript:alert('禁止跳转')"></a>(2.)在script标签中定义:实际上可以放到html代码任何地方<script > alert("禁止跳转")</script>(3.)单独写到js文件中,但需要引用&l...

2019-05-30 20:10:35 167

原创 JDBC简单实现mysql增删查改(1)

1.准备工作:导包目的:取得与数据库的联系工具:mysql-connector-java-5.1.38.jar建立连接工具目的:获取连接对象public class ConnectionUtil { //完整的地址URL信息;localhost处为IP地址;3306为端口; //useSSL=true:表示程序与数据库信息交互采用加密方式传输 //characte...

2019-05-29 17:30:17 185

原创 MySQL句法常见错误

demo:将emp表中小于平均薪资的员工工资上涨10%错误语句UPDATE empSET sal=sal*1.1WHERE sal<(SELECT AVG(sal) FROM emp);1.You can’t specify target table ‘emp’ for update in FROM clause原因:如果子查询的语句和更新,删除在同一张表上,MY SQL会出现...

2019-05-24 21:05:58 234

原创 orcale中的简单SQL语句用法

数据操作语言,简称DML包括:SELECT(查询)、UPDATE(更新)、INSERT(插入)、DELETE(删除)用法:(1.)SELECT:SELECT用法(2.)UPDATE:UPDATE 表名 SET 要更新的内容设置 WHERE 筛选要更新的字段demo:UPDATE emp SET empno=7054 WHERE empno=7788;(3.)INSERT:INSERT ...

2019-05-23 19:46:53 238

原创 Oracle数据查询的方法简单总结

1. 句法:SELECT 字段名 5FROM 表格名称 1WHERE 筛选语句 2GROUP BY 字段名称 3HAVING 分组后的数据筛选 4ORDER BY DESC/ASC 6该句法为最全语句,当不需要相应语句可去掉2. 执行顺序:1 数据来源,2,筛选出符合条件的数据,3对符合条件的数据分组,4对分组的数据条件进行判断,5:输出想要的数据...

2019-05-20 20:21:40 778

原创 使用TCP协议简单实现接收和发送数据

客户端1.创建Socket对象2.通过Socket对象获取输出流3.输出数据4.释放资源public class Client { public static void main(String[] args) throws UnknownHostException, IOException { // 1.创建Socket对象 Socket s = new Socket("192...

2019-05-13 19:38:57 1866

原创 线程相关知识点总结

1.线程的启动方式开启主要有两种:继承Thread和实现cannable接口;继承Thread:public class Practice { public static void main(String[] args) {// 继承 Thread 任务:copy文件 Copy c = new Copy(); c.start(); }}class Copy exte...

2019-05-12 10:42:19 169

原创 浅析线程同步案例

案例:火车站目前正在出售车票,共有100张票,而它有3个售票窗口售票, 请设计一个程序模拟该火车站售票。解答:分析:三个窗口共享同一个份代码,同一份资源,但是都是独立执行,可利用实现Runnable接口的方法,但存在线程安全问题,所以主要应该解决线程安全问题PS:(1.)实现接口方式的好处:1.可以避免由于Java单继承带来的局限性。2.适合多个相同程序的代码去处...

2019-05-10 19:58:53 384

原创 注解相关知识回顾

概述(1.)注解可以理解为一种使用相关信息来绑定Java文件元素的方式(2.)Java中常见的注解@Override: 表示必须对方法重写@Deprecated : 表示方法过时@SuppresWarning : 表示忽略警告@FunctionalInterface : 表示函数式接口(3.)按照运行机制分类:源码注解: 注解只在源码中存在,当编译生成.class文件的时候,就不...

2019-05-09 20:13:56 183

原创 反射:获取字节码文件对象及构造方法、成员变量、成员方法

反射通过Class获取字节 码文件对象,使用字节码文件对象来获取类的一些描述信息一. 获取字节码文件对象方式有三种:1.Object的getClass方法 Student s1 = new Student(); Student s2 = new Student(); Class<? extends Student> class1 = s1.getClass();...

2019-05-07 20:01:24 367

原创 IO流操作文件相关方法(二)

3.万能输出流打印流PrintWriter PrintStream特点:只能写数据,不能读取数据。可以操作任意类型的数据。如果启动了自动刷新,能够自动刷新。如果启用了自动刷新,则只有在调用 println、printf 或 format 的其中一个方法时才可能完成此操作例题:模拟记录用户登录日志(采用追加方式记录),从控制台接收用户输入的用户名和密码,在文件中记录用户名和密码...

2019-05-06 20:34:07 193

原创 IO流操作文件相关方法(一)

一.file类对文件的基本操作文件的基本操作:1.创建功能:(1.)createNewFile():1.该方法会抛出一个IOException异常,该异常是一个编译时异常,必须处理2.该方法创建的是文件,而不是文件夹3.如果文件已经创建,就不会再创建了,返回falseFile file = new File("D:\\JavaSE\\day\\resource\\a.txt");...

2019-05-05 20:49:06 430

原创 Set接口的一些主要集合总结

Set接口概述一个不包含重复元素的 collection。更确切地讲,set 不包含满足 e1.equals(e2) 的元素对e1 和 e2,并且最多包含一个 null 元素特点Set接口是无序的Set 是继承于Collection的接口。它是一个不允许有重复元素的集合。Set可以存储null值,但是null不能重复Set的实现类都是基于Map来实现的(HashSet是通过H...

2019-04-29 19:12:46 464

原创 集合中常用数据结构总结

常见的和集合相关的数据结构有: 数组, 栈, 队列,链表,哈希表, 二叉树下面简单总结一下个数据结构特点:1. 数组ArrayList(public class ArrayList extends AbstractList implements List, RandomAccess, Cloneable, Serializable)底层数据结构是数组,所以数组有的特点,ArrayList...

2019-04-28 20:17:49 2887

原创 数组、字符串和集合中的增、删、查、改

一.数组(1.)数组的遍历(1.)forint[] arr = new int[n];for (int i = 0; i < arr.length; i++) { }(2.)foreachint[] arr = new int[n];for (int i : arr) { }总结:foreach遍历方式的特点:1.简化了遍历2.foreach没有索引3...

2019-04-27 20:55:32 224

原创 throw、throws处理异常的常用方法

1.概述:异常是指在程序的运行过程中所发生的不正常的事件,它会中断正在运行的程序。简单来说就是程序出现了不正常的情况。异常本质就是Java当中对可能出现的问题进行描述的一种对象体现。一些常见异常:除数不能为0异常(ArithmeticException)空指针异常(NullPointException)数组越界异常(ArrayIndexOutOfBoundsException)类型转...

2019-04-25 21:10:40 6503

原创 包装类及一些常用类的方法回顾

包装类导语: 基本数据类型的包装类可以使用基本类型对应的类的相关成员变量和成员方法,相比于基本数据类型,包装类更易于使用。八大基本数据类型byte short int long float double char boolean对应的包装类Byte Short Integer Long Float Doubl...

2019-04-24 19:50:37 291

原创 String、StringBuffer、StringBuffer的一些常用方法和应用

1. String类public class practice3 { public static void main(String[] args) { String s1="HelloWorld";//char charAt(int index) 输入字符串对应下标获取该下标对应的字符 char ch = s1.charAt(5); System.out.println(ch);...

2019-04-23 20:28:07 306

原创 多态的基本应用及内部类的分类总结

一.多态的两种实现方式1.使用父类作为方法形参实现多态:当这个作为参数的父类是普通类或者抽象类时,构成继承多态;当这个父作为参数的父类是一个接口时,构成接口多态2 使用父类作为方法返回值实现多态(1).多态作为形参形参为引入类型:普通类、抽象类、接口1.普通类:当一个形参希望我们传入的是一个普通类时,我们实际上传入的是该类的对象/匿名对象public class ArgsDemo...

2019-04-22 20:30:13 202

原创 多态、抽象、接口的一些总结

多态、抽象类及接口1.多态2.抽象类3.接口1.多态1.多态概述同一个引用类型,使用不同的实例而执行不同操作,即父类引用指向子类对象。2.实现多态的必要条件(1) 有继承关系 (2)有方法重写 (3)运行时使用父类的引用子类的对象3.多态的优缺点多态的优点:(1)提高了程序的维护性(2)提高了程序的扩展性多态的缺点:不能访问子类所特有的功能解决办法:向下转型向下转型...

2019-04-20 20:40:17 212

原创 回顾static、super、代码块、继承、重写等概念

前言:本文主要介绍有关static、super、代码块、继承、重写等相关知识点。1.static直译:静态的,可以修饰成员变量和成员方法。有关static的特点总结如下:1.static修饰变量又称为共享变量,类变量,静态变量2.静态成员属于某一类的,而不属于某一个具体的对象3.访问静态成员的方式:a.通过对象访问 不建议b.通过类名访问c.通过读写方法访问4.静态static...

2019-04-19 20:41:39 210

原创 面对对象及类的有关知识

面对对象:面对对象是JAVA的一个重要特征和思想,下面通过与面对过程来深刻认识一下面对对象。1.面向过程思想概述:面向过程的思想去实现一个功能的步骤:首先要做什么,怎么做,最后我们再代码体现。一步一步去实现,而具体的每一步都需要我们去实现和操作。这些步骤相互调用和协作,实现我们的功能。每一个步骤我们都是参与者,并且需要面对具体的每一个步骤和过程,这就是面向过程最直接的体现。面向过程开发关心...

2019-04-18 20:58:52 152

原创 回顾:Arrays工具在数组的应用和一些案例应用

有关数组 2:1. Arrays工具类public static native void arraycopy(Object src, int srcPos,Object dest, int destPos, int length);主要介绍Arrays的在数组一些常用方法:public class ArraysDemo { public static void main(Strin...

2019-04-17 16:35:36 148

原创 数组相关及其主要思想回顾

有关数组1.定义:数组是一个变量,存储相同数据类型的一组数据。2.格式:数据类型 数组 名[ ] 或 数据类型[ ] 数组名 ;3.特点 :1.数据类型相同2.数组名实际就是一个变量,既然是变量就必须先赋值再使用3.数组的每一个元素既可以是基本数据类型也可以是引用数据类型4.数组的初始化:1.静态初始化(1)初始化的同时为每个元素赋值,不需要指明长度(2) int[ ]...

2019-04-15 21:15:35 199

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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