
Java
少年无为
少年无为、青年有为。
展开
-
Java基础-成员变量与局部变量的区别
1):在类中的位置不同成员变量:在类中方法外。局部变量:在方法定义中或者方法声明外。2):在内存长的位置不同成员变量:在堆内存(成员变量属于对象,对象进堆内存)。局部变量:在栈内存(局部变量属于方法,方法进栈内存)。3):生命周期不同成员变量:随着对象的创建而存在,随着对象的消失而消失。局部变量:随着方法的调用而存在,随着方法的调用完毕而消失。4):初始化值不同...原创 2019-04-12 16:56:28 · 2735 阅读 · 0 评论 -
JdbcTemplate简介
➢ jdbcTemplate 类似于DBUtils,用于操作 Jdbc 的工具类,它需要依赖于连接池DataSource(数据源)➢ JDBC(Java DataBase Connectivity,java 数据库连接)是一种用于执行 SQL 语句的 Java API➢ ODBC(Open Database Connectivity,ODBC)开放数据库连接,是微软公司开提供了一组对数据库访问...原创 2019-07-02 17:26:23 · 3038 阅读 · 0 评论 -
JdbcTemplate简单实用讲解
一、建立demo所需的数据库建立数据库:day18create database day18;建立数据表:t_user并创建三个字段,id、username、password。create table t_user(id int primary_key auto_increment,username varchar(50),password varchar(32));插入几...原创 2019-07-02 20:16:48 · 3145 阅读 · 0 评论 -
Java学习笔记-多线程
并发与并行并发:指两个或多个事件在同一个时间段内发生并行:指两个或多个事件在同一时刻发生(同时发生)在操作系统中,安装了多个程序,并发指的是在一段时间内宏观上有多个程序同时运行,这在单CPU系统中,每一时刻只能有一道程序执行,即微观上这些程序是分时的交替运行,只不过是给人的感觉是同时运行,那是因为分时交替运行的时间是非常短的。而在多个CPU系统中,则这些可以并发执行的程序便可以分配到多...原创 2019-07-08 15:29:18 · 2924 阅读 · 0 评论 -
Java学习笔记-线程安全
线程安全如果有多个线程在同时运行,而这些线程可能会同时运行这段代码。程序每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的,就是线程安全的。现在通过一个案例来延时线程的安全问题:电影院卖票,一共100张票数,我们现在通过3个窗口来卖100张票:模拟票:public class Ticket implements Runnable { private in...原创 2019-07-08 20:06:47 · 2634 阅读 · 0 评论 -
Java学习笔记-线程状态
线程状态概述当线程被创建并启动以后,它既不是一启动就进入了执行状态,也不是一直处于执行状态。在线程的生命周期中,有几种状态呢?在APi中java.lang.Thread.State这个枚举中给出了六种线程状态:这里先列出哥哥线程状态发生的条件,下面将会对每种状态进行详细解析线程状态导致状态发生条件NEW(新建)线程刚被创建,但是并未启动。还没调用start方法。R...原创 2019-07-08 21:44:31 · 2788 阅读 · 0 评论 -
Java学习笔记-Thread类
java.lang.Thread 类,API中该类中定义了有关线程的一些方法,具体如下:构造方法:public Thread() :分配一个新的线程对象。public Thread(String name) :分配一个指定名字的新的线程对象。public Thread(Runnable target) :分配一个带有指定目标新的线程对象。public Thread(Runnable t...原创 2019-07-08 22:04:51 · 2602 阅读 · 0 评论 -
Java学习笔记-等待唤醒机制
等待唤醒机制线程间通信概念:多个线程再处理同一个资源,但是处理的动作(线程的任务)却不相同。比如:线程A用来生成包子的,线程B是用来吃包子的,包子可以理解为同一资源,线程A与线程B处理的动作,一个是生产,一个是消费,那么线程A与线程B之间就存在线程通信问题。为什么要处理线程间通信:多个线程并发执行时,在默认情况下CPU是随机切换线程的,当我们需要多个线程来共同完成一件任务,并且我们希...原创 2019-07-09 10:21:41 · 2583 阅读 · 0 评论 -
Java学习笔记-线程池
线程池思想概述我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题:如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。那么有没有一种办法使得线程可以复用,就是执行完一个任务,并不被销毁,而是可以继续执行其他的任务?在Java中可以通过线程池来达到这样的效果。今天我们就...原创 2019-07-09 10:55:43 · 2551 阅读 · 0 评论 -
Java学习笔记-Lambda表达式
函数式编程思想概述在数学中,函数就是有输入量、输出量的一套计算方案,也就是“拿什么东西做什么事情”。相对而言,面向对象过分强调“必须通过对象的形式来做事情”,而函数式思想则尽量忽略面向对象的复杂语法——强调做什么,而不是以什么形式做。面向对象的思想:做一件事情,找一个能解决这个事情的对象,调用对象的方法,完成事情。函数式编程思想:只要能获取到结果,谁去做的,怎么做的都不重要,重视的是...原创 2019-07-09 14:27:02 · 2242 阅读 · 0 评论 -
Java学习笔记-File类、递归
第一章 File类1.1 概述java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建、查找和删除等操作。1.2 构造方法public File(String pathname) :通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。public File(String parent, String child) :从父路径名字符串和子路径...翻译 2019-07-09 19:39:44 · 2379 阅读 · 0 评论 -
Java学习笔记-字节流、字符流
字节流、字符流主要内容IO流字节流字符流异常处理Properties第一章 IO概述1.1 什么是IO生活中,你肯定经历过这样的场景。当你编辑一个文本文件,忘记了ctrl+s ,可能文件就白白编辑了。当你电脑上插入一个U盘,可以把一个视频,拷贝到你的电脑硬盘里。那么数据都是在哪些设备上的呢?键盘、内存、硬盘、外接设备等等。我们把这种数据的传输,可以看做是一种数据的流动,按照...翻译 2019-07-09 21:32:09 · 2340 阅读 · 0 评论 -
集合综合案例-斗地主实现
按照斗地主的规则,完成洗牌发牌的动作。具体规则:使用54张牌打乱顺序,三个玩家参与游戏,三人交替摸牌,每人17张牌,最后三张留作底牌。原创 2019-06-30 23:10:51 · 3061 阅读 · 0 评论 -
AspectJ 案例讲解【基于xml】
第一步:导jar包相关jar包链接:链接: https://pan.baidu.com/s/1lo8eehhJNds-8HULbJ3LuQ 提取码: fdhn第二步:实现类与切面类2.1、首先写一个IUserService接口:public interface IUserService { void addUser(); void updateUser()...原创 2019-07-02 16:01:53 · 2967 阅读 · 0 评论 -
AspectJ通知类型
aop 联盟定义通知类型,具有特性接口,必须实现,从而确定方法名称。aspectj 通知类型,只定义类型名称,以及方法格式。 个数:6 种, 知道 5 种,掌握 1 中。before:前置通知(应用:各种校验) 在方法执行前执行,如果通知抛出异常,阻止方法运行afterReturning:后置通知(应用:常规数据处理) 方法正常返回后执行,如果方法中抛出异...原创 2019-07-02 15:34:07 · 3035 阅读 · 0 评论 -
Java学习笔记-Hashtable和HashMap的区别
# HashMap不是线程安全的,HashTable是线程安全的# HashMap允许空(null)的键和值(key),HashTable则不允许# HashMap性能优于HashTable关于Map的介绍: 1.Map是一个以键值对存储的接口。Map下有两个具体的实现,分别是HashMap和HashTable。 2.HashMap是线程非安全的,HashTable...原创 2019-07-08 08:00:17 · 2606 阅读 · 0 评论 -
Java基础-方法的形式参数是类名的时候如何调用
答:如果你看到了一个方法的形式参数是一个类 类型(引用类型),这里其实需要的是该类的对象。public class HelloWorld { public static void main(String[] args) { print(10); Student s1 = new Student(); //创建对象,并将对象的地址值赋值给s1 ...原创 2019-04-12 17:05:29 · 3373 阅读 · 0 评论 -
Java基础-大串中检测指定小串出现的次数
给定一长串,在给定一个待检测的小串,输出小串在大串中出现的次数。public static void main(String[] args){ String test ="ajava,nijava,yijava,shengjavaj,shijavajava"; int i = getStringCount(test,"java"); Syste...翻译 2019-04-20 10:27:21 · 2748 阅读 · 0 评论 -
Java数组-自定义基类
此类可以实现以下功能:添加数据、显示数据、查找数据返回索引、根据索引返回对应的数组值、删除数据、更新数据、顺序添加数据以及数组的二分查找返回索引的功能。public class MyArray { private long[] arr; //表示有效的数据长度 private int elements; public MyArray(){ ar...原创 2019-05-18 00:03:05 · 3182 阅读 · 0 评论 -
mysql-connector-java-8.0.15-bin.jar
免费分享一下Java JDBC的数据库连接文件,优快云里面还有人以这个赚积分,真的是让人气愤,MySql官网能下载的东西还拿来“卖”,这里mysql-connector-java-8.0.15-bin.jar免费下载,百度网盘自取。链接: https://pan.baidu.com/s/1XU69sCJAQ4bJff4QcxaM8g提取码: enit...原创 2019-05-24 00:14:12 · 13009 阅读 · 24 评论 -
Java重写toString()方法的意义
1、重写toString()方法的作用:其实对于一般的对象来说都会有这个方法,这个方法的目的,主要就是将对象按字符串的方式输出出来,用白话说就是:使用文字描述这个对象里各个变量是什么值 ,这个变量是什么类型的变量等 ,并且任何类都从Object继承了这个方法。2、不重写toString()方法的输出是什么:你不重写toString()方法的话输出的就是一个内存地址,也就是哈希码值。并不...原创 2019-06-20 09:02:39 · 5928 阅读 · 1 评论 -
Spring编写代理半自动
目标:掌握让spring创建代理对象,从Spring容器中手动的获取代理对象。第一步:导入jar包【核心4+1、AOP联盟(规范)、spring-aop(实现)】jar包链接:链接: https://pan.baidu.com/s/11z96PkDfNGovwrDWTCqvbg 提取码: g6yq第二步:建立一个目标类2.1、首先建立一个目标类的接口IUserServi...原创 2019-07-02 08:42:23 · 2780 阅读 · 0 评论 -
Spring AOP 全自动编程
目标:明白什么是全自动织入。第一步:导入jar包上述jar包链接地址:链接: https://pan.baidu.com/s/1z9fviY2dJRWeTjBNoxBMfw 提取码: gbq7第二步:建立一个目标类2.1、首先建立一个目标类的接口IUserServicepublic interface IUserService { public void ad...原创 2019-07-02 09:30:33 · 2842 阅读 · 0 评论 -
原生js实现ajax
1、什么是Ajax?Ajax全称:AsynchronousJavascriptAndXML And HTML(异步JavaScript和XML 或 HTML)。Ajax 是一种用于创建快速动态网页的技术。Ajax 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。2、为什么要使用Ajax?传统的网页(不使用Ajax),如果想更新内容,就必须重载整个页面,与服务器交互获...原创 2019-06-23 17:15:29 · 3057 阅读 · 0 评论 -
Java学习笔记-JDK常用的包
java.lang:这个是系统的基础类,比如String、Math、Integer、System和Thread,提供常用功能。java.io:这里面是所有输入输出有关的类,比如文件操作等。java.net:这里面是有输入输出有关的类,比如URL、URLConnection等。java.util:这个是系统辅助类,特别是集合类Collection、List、Map等。java.sql:这个...原创 2019-07-08 07:32:37 · 577 阅读 · 0 评论 -
Java学习笔记-Get和Post的区别
1.get是从服务器上获取数据,而post是向服务器提交数据。2.get传输的数据量较小,不能大于2KB。post传送的数据量较大,一般默认为不受限制。3.get安全性非常低,post安全性较高。但是执行效率却比post方法好。4.在进行文件上传时只能使用post而不能是get。...原创 2019-07-08 07:35:38 · 2673 阅读 · 0 评论 -
Java学习笔记-多态的具体体现
面向对象编程有四个特征:抽象、封装、继承、多态。 多态有四种体现形式: 1.接口和接口的继承 2.类和类的继承 3.重载 4.重写 其中重载和重写是核心。 # 重载:重载发生在同一类中,在该类中如果存在多个同名方法,但是方法的参数类型和个数不 一样,那么说明该方法被重载了。 #重写:重写发生在子类继承父类的关系中,父类中的方法被子类继承,方法名、返回...原创 2019-07-08 07:41:10 · 2734 阅读 · 0 评论 -
Java学习笔记-StringBuffer、StringBuilder、String的区别
String 字符串常量 不可变 使用字符串拼接时是不同的2个空间Stringbuffer 字符串变量 可变 线程安全,字符串拼接直接在字符串后追加StringBuilder 字符串变量 可变 非线程安全,字符串拼接直接在字符串后追加特点执行效率:StringBuilder > Stringbuffer > StringString是一...原创 2019-07-08 07:52:08 · 2669 阅读 · 0 评论 -
Java-计算一个字符串中每个字符出现的次数
/* 分析:* 1、使用Scanner获取用户输入的字符串* 2、创建Map集合,key是字符串中的字符,value是字符的个数* 3、遍历字符串,获取每一个字符* 4、使用获取到的字符,去Map集合判断key是否存在* key存在:* 通过字符key,获取value(字符个数)* value++* put(key,valu...原创 2019-07-05 21:31:55 · 4669 阅读 · 1 评论