自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Mybatis总结

Mybatis1 . 什么是MybatisMyBatis 是一款优秀的持久层框架它支持定制化 SQL、存储过程以及高级映射(mapper)。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apach

2020-11-27 14:57:57 121

原创 JavaWeb

JavaWebJava Web1、基本概念1.1、前言web开发:web,网页的意思 , www.baidu.com静态webhtml,css提供给所有人看的数据始终不会发生变化!动态web淘宝,几乎是所有的网站;提供给所有人看的数据始终会发生变化,每个人在不同的时间,不同的地点看到的信息各不相同!技术栈:Servlet/JSP,ASP,PHP在Java中,动态web资源开发的技术统称为JavaWeb;1.2、web应用程序web应用程序:可以提供浏览器

2020-11-21 22:38:24 593

原创 XML总结

今日内容1. XML 1. 概念 2. 语法 3. 解析XML:1. 概念:Extensible Markup Language 可扩展标记语言 * 可扩展:标签都是自定义的。 <user> <student> * 功能 * 存储数据 1. 配置文件 2. 在网络中传输 * xml与html的区别 1. xml标签都是自定义的,html标签是预定义。 2. xml的语法严格,html语法松散 3. xml是存储数据的,html是展示

2020-11-16 09:59:14 89

原创 JavaScript总结

0、前端知识体系想要成为真正的“互联网Java全栈工程师”还有很长的一段路要走,其中前端是绕不开的一门必修课。本阶段课程的主要目的就是带领Java后台程序员认识前端、了解前端、掌握前端,为实现成为“互联网Java全栈工程师”再向前迈进一步。0.1、前端三要素HTML(结构):超文本标记语言(Hyper Text Markup Language),决定网页的结构和内容CSS(表现):层叠样式表(Cascading Style Sheets),设定网页的表现样式。JavaScript(行为):是一种

2020-11-12 23:33:16 350

原创 JDBC操作事务, 数据库连接池

JDBC操作事务, 数据库连接池JDBC操作事务ACID原则原子性:要么全部完成,要么都不完成一致性:总数不变隔离性:多个进程互不干扰持久性:一旦提交不可逆,持久化到数据库了隔离性的问题:脏读:一个事务读取了另一个没有提交的事务不可重复读:在同一个事务内,重复读取表中的数据,表数据发生了改变虚读(幻读):在一个事务内,读取到了别人插入的数据,导致前后读出的数据不一致package com.JDBC.www;import java.sql.Connection;import j

2020-11-11 20:08:41 89

原创 HTML笔记总结

HTML笔记总结JavaWeb:使用Java语言开发基于互联网的项目软件架构:C/S: Client/Server 客户端/服务器端在用户本地有一个客户端程序,在远程有一个服务器端程序如:QQ,迅雷…优点:用户体验好缺点:开发、安装,部署,维护 麻烦B/S: Browser/Server 浏览器/服务器端只需要一个浏览器,用户通过不同的网址(URL),客户访问不同的服务器端程序优点:开发、安装,部署,维护 简单缺点:如果应用过大,用户

2020-11-11 09:27:29 110

原创 JDBC的使用

JDBCSUM公司为了简化开发人员的(对数据库的统一)操作,提供了一个(Java操作数据库)规范,俗称jdbc这些规范的实现由具体的厂商去做对于我们开发人员来说,我们只需要掌握jdbc接口的操作即可java.sqljavax.sql还需要导入一个数据库驱动包mysql-connector-java-5.1.37package com.JDBC.www;import java.sql.Connection;import java.sql.DriverManager;import ja

2020-11-10 21:49:46 52

原创 反射机制,类的加载

反射机制(Reflection)定义反射是框架设计的灵魂JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制。反射是Java被视为动态语言的关键要想解剖一个类,必须先要获取到该类的字节码文件对象。而解剖使用的就是Class类中的方法.所以先要获取到每一个字节码文件对应的Class类型的对象.以上的总结就是什么是反射反射就是把java类中的各种成分映射

2020-11-10 19:36:28 303 1

原创 注解(Annotation)

注解Java 注解(Annotation)又称 Java 标注,是 JDK5.0 引入的一种注释机制。Java 语言中的类、方法、变量、参数和包等都可以被标注。和 Javadoc 不同,Java 标注可以通过反射获取标注内容。在编译器生成类文件时,标注可以被嵌入到字节码中。Java 虚拟机可以保留标注内容,在运行时可以获取到标注内容 。 当然它也支持自定义 Java 标注。annotation的作用:不是程序本身,可以对程序作出解释,(这一点跟注解(comment)没有什么区别)可以被

2020-11-10 09:06:45 175

原创 事务,mysql设计

事务什么是事务事务就是将一组SQL语句放在同一批次内去执行如果一个SQL语句出错,则该批次内的所有SQL都将被取消执行MySQL事务处理只支持InnoDB和BDB数据表类型事务的ACID原则 百度 ACID原子性(Atomic)整个事务中的所有操作,要么全部完成,要么全部不完成,不可能停滞在中间某个环节。事务在执行过程中发生错误,会被回滚(ROLLBACK)到事务开始前的状态,就像这个事务从来没有执行过一样。一致性(Consist)一个事务可以封装状态改变(除非它是一个

2020-11-09 23:07:27 126

原创 事务,索引

事务什么是事务事务就是将一组SQL语句放在同一批次内去执行如果一个SQL语句出错,则该批次内的所有SQL都将被取消执行MySQL事务处理只支持InnoDB和BDB数据表类型事务的ACID原则 百度 ACID原子性(Atomic)整个事务中的所有操作,要么全部完成,要么全部不完成,不可能停滞在中间某个环节。事务在执行过程中发生错误,会被回滚(ROLLBACK)到事务开始前的状态,就像这个事务从来没有执行过一样。一致性(Consist)一个事务可以封装状态改变(除非它是一个

2020-11-09 11:52:22 90

原创 DQL后一部分的查询数据

DQL查询数据联表查询操作描述Inner join如果表中至少有一个匹配,就返回行left join会从左表中返回所有的值,即使右表中没有匹配right join会从右表中返回所有的值,即使左表中没有匹配–join (连接的表) on(判断的条件) 连接查询–where 等值查询SELECT语法SELECT [ALL | DISTINCT]{* | table.* | [table.field1[as alias1][,ta

2020-11-09 10:18:43 83

原创 MySQL基础

初始MySQLjavaEE: 企业级Java开发 web前端 (页面:展示,数据)后台(连接点:连接数据库JDBC ,连接前端(控制,控制试图跳转,和给前端传递数据))数据库(存数据,txt,excel,word)只会写代码,学好数据库,基本混饭吃;操作系统,数据结构与算法!当一个不错的程序员离散数学,数学电路,体系结构,编译原理。+实战经验,高级程序员,优秀的程序员为什么学习数据库岗位需求现在的世界,大数据时代,得数据者得天下。被迫需求:存数据 去IOE**数据库是所有软

2020-11-08 00:12:43 90

原创 网络编程

网络编程软件结构C/S结构 :全称为Client/Server结构,是指客户端和服务器结构。常见程序有QQ、迅雷等软件。B/S结构 :全称为Browser/Server结构,是指浏览器和服务器结构。常见浏览器有谷歌、火狐等。两种架构各有优势,但是无论哪种架构,都离不开网络的支持。网络编程,就是在一定的协议下,实现两台计算机的通信的程序。javaweb : 网页编程 B/S网络编程: TCP/IP (协议) C/S网络通信协议**网络通信协议:**通过计算机网络可以使多台

2020-11-07 16:14:00 113

原创 线程协作,线程池

线程协作,线程池线程协作**概念:**多个线程在处理同一个资源,但是处理的动作(线程的任务)却不相同。比如:线程A用来生成包子的,线程B用来吃包子的,包子可以理解为同一资源,线程A与线程B处理的动作,一个是生产,一个是消费,那么线程A与线程B之间就存在线程通信问题。为什么要处理线程间通信:多个线程并发执行时, 在默认情况下CPU是随机切换线程的,当我们需要多个线程来共同完成一件任务,并且我们希望他们有规律的执行, 那么多线程之间需要一些协调通信,以此来帮我们达到多线程共同操作一份数据。如何保证线

2020-11-06 19:15:12 97

原创 线程安全问题,线程同步,死锁,lock锁

线程安全问题,线程同步,死锁线程安全问题如果有多个线程在同时运行,而这些线程可能会同时运行这段代码。程序每次运行结果和单线程运行的结果是一样 的,而且其他的变量的值也和预期的是一样的,就是线程安全的。我们通过一个案例,演示线程的安全问题:电影院要卖票,我们模拟电影院的卖票过程。假设要播放的电影是 “葫芦娃大战奥特曼”,本次电影的座位共100个 (本场电影只能卖100张票)。 我们来模拟电影院的售票窗口,实现多个窗口同时卖 “葫芦娃大战奥特曼”这场电影票(多个窗口一起卖这100张票) 需要窗口,采用线

2020-11-06 16:31:27 142

原创 File类

File类java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建、查找和删除等操作。构造方法public File(String pathname) :通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。public File(String parent, String child) :从父路径名字符串和子路径名字符串创建新的 File实例。public File(File parent, String child) :从父抽象路径名和子路径名字符串创建

2020-11-05 21:38:00 55

原创 Map集合,Entry键值对对象

MapMap集合我们常会看到这样的一种集合:IP地址与主机名,身份证号与个人,系统用户名与系统用户对象等,这种一一对应的关系,就叫做映射。Java提供了专门的集合类用来存放这种对象关系的对象,即java.util.Map接口。Collection中的集合,元素是孤立存在的(理解为单身),向集合中存储元素采用一个个元素的方式存储。Map中的集合,元素是成对存在的(理解为夫妻)。每个元素由键与值两部分组成,通过键可以找对所对应的值。Collection中的集合称为单列集合,Map中的集合称为双列集合

2020-11-05 21:37:38 393

原创 Random,Arrays,String,Math类

String类java.lang.String :此类不需要导入。构造方法public String() :初始化新创建的 String对象,以使其表示空字符序列。public String(char[] value) :通过当前参数中的字符数组来构造新的String。public String(byte[] bytes) :通过使用平台的默认字符集解码当前参数中的字节数组来构造新的//无参构造 String str = new String(); // 通过字符数组构造 char c

2020-11-05 21:36:08 69

原创 缓冲流、转换流、序列化流,打印流

【缓冲流、转换流、序列化流】缓冲流作为IO流的入门,今天我们要见识一些更强大的流。比如能够高效读写的缓冲流,能够转换编码的转换流,能够持久化存储对象的序列化流等等。这些功能更为强大的流,都是在基本的流对象基础之上创建而来的,就像穿上铠甲的武士一样,相当于是对基本流对象的一种增强。缓冲流,也叫高效流,是对4个基本的FileXxx 流的增强,所以也是4个流,按照数据类型分类:字节缓冲流:BufferedInputStream,BufferedOutputStream字符缓冲流:BufferedRea

2020-11-05 21:01:23 86

原创 Android 启程

Android 启程Android系统架构Linux内核层:Android系统是基于Linux内核的系统运行库层:如SQLite库提供了数据库应用框架层:提供了构架应用程序时可能到的各种API,android自带的一些应用就是使用这些API完成的,开发者也就是使用API构建自己的应用程序。应用层:所有安装手机的应用程序四大组件活动(Activity)服务(Service)广播接收器(Broadcast Receiver)内容提供器(Content provider)开发andr

2020-11-04 15:04:17 95

原创 常用API

常用APISystem类java.lang.System类中提供了大量的静态方法,可以获取与系统相关的信息或系统级操作,在System类的API文档中,常用的方法有:public static long currentTimeMillis():返回以毫秒为单位的当前时间。public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length):将数组中指定的数据拷贝到另一个数组中。cur

2020-11-03 09:03:48 54

原创 关于日期时间的类

关于日期时间的类Date类java.util.Date类 表示特定的瞬间,精确到毫秒。查阅Date类的描述,发现Date拥有多个构造函数,只是部分已经过时,但是其中有未过时的构造函数可以把毫秒值转成日期对象。public Date():分配Date对象并初始化此对象,以表示分配它的时间(精确到毫秒)。无参构造方法public Date(long date):分配Date对象并初始化此对象,以表示自从标准基准时间(称为“历元(epoch)”,即1970年1月1日00:00:00 GMT)以来的指

2020-11-02 22:39:34 317

原创 Object类

Object类java.lang.Object类是Java语言中的根类,即所有类的父类。它中描述的所有方法子类都可以使用如果一个类没有特别指定父类, 那么默认则继承自Object类。根据JDK源代码及Object类的API文档public String toString():返回该对象的字符串表示.public boolean equals(Object obj):指示其他某个对象是否与此对象“相等”。toString方法toString方法返回该对象的字符串表示,其实该字符串内

2020-11-02 18:28:29 80

原创 观测线程状态,守护(daemon)线程

观测线程状态,守护(daemon)线程观测线程状态package com.Jinone.www;public class TextState { public static void main(String[] args) { Thread thread=new Thread(()->{ for(int i=0;i<5;i++) { try { Thread.sleep(1000); } catch (InterruptedException e)

2020-11-02 11:24:33 180

原创 线程强制执行 Join

线程强制执行 JoinJoin 合并线程,待此线程执行完成后,再执行其他线程,其他线程阻塞可以想象成插队package com.Jinone.www;import java.text.SimpleDateFormat;import java.util.Date;public class TextJoin implements Runnable { public static void main(String[] args) { TextJoin join=new TextJoin(

2020-11-02 10:30:05 60

原创 线程休眠,礼让

线程休眠,礼让线程休眠sleep(时间)指定当前线程阻塞的毫米值sleep存在异常InterruptedException;sleep时间达到后线程进入就绪状态sleep可以模拟网络延迟(就是在run方法中加一个sleep方法就可以了),倒计时等每一个对象都有一个锁,sleep不会释放锁;package com.Jinone.www;import java.text.SimpleDateFormat;import java.util.Date;public class TextS

2020-11-02 10:04:11 719

原创 线程休眠

线程休眠sleep(时间)指定当前线程阻塞的毫米值sleep存在异常InterruptedException;sleep时间达到后线程进入就绪状态sleep可以模拟网络延迟(就是在run方法中加一个sleep方法就可以了),倒计时等每一个对象都有一个锁,sleep不会释放锁;package com.Jinone.www;import java.text.SimpleDateFormat;import java.util.Date;public class TextStop { p

2020-11-02 09:50:16 66

原创 线程状态,线程停止

线程状态,线程停止创建状态 Thread t=new Thread();开启线程 用t.start方法就绪状态,就是等待CPU资源调度阻塞状态,就是调用sleep,wait方法或者同步锁定时,线程进入阻塞状态阻塞事件解除后,就重新进入就绪状态运行状态,就是CPU在调度中最后dead ,线程中断或者结束isAilve 方法,就是测试线程是否处于活动状态join(),等待该线程终止停止线程不推荐使用JDK提供的stop(),destroy()方法自定义线程停止的过程

2020-11-02 09:06:44 107

原创 静态代理

静态代理package com.Jinone.www;public class StacticProxy{ public static void main(String[] args) { You you =new You(); //你要结婚 WeddingCompany wed=new WeddingCompany(you); wed.HappysHarry(); //new Thread(new Runnable()).start();

2020-11-01 16:48:21 55

原创 实现Callable接口

实现Callable接口实现Callable 接口,需要返回类型重写call方法,需要抛出异常创建目标对象创建执行服务:ExecutorService ser=Execututors.newFixedThreadPool(1);提交执行:Future result1=ser.submit(t1)获取结果:boolean r1=result1.get()关闭服务:ser.shutdownNow();package com.Jinone.www;import java.io.IOExce

2020-11-01 16:07:27 177

原创 龟兔赛跑

龟兔赛跑package com.Jinone.www;import java.io.IOException;public class TextThread implements Runnable { //胜利者 private static String winner; private int sa=0; @Override public void run() { for(int i=1;i<=100;i++) { boolean flag=getFlag(i);

2020-11-01 15:17:36 110 2

原创 实现Runnable

实现Runnable定义MyRunnable类实现Runnable接口实现run()方法,编写线程执行体创建对象,调用start()方法启动线程package com.Jinone.www;import java.io.IOException;public class TextThread implements Runnable { @Override public void run() { for(int i=0;i<20;i++) { System.out.pr

2020-11-01 14:28:51 532

原创 多线程基础

多线程基础核心概念:线程就是独立的执行路径在程序运行时,即使没有自己创建线程,后台也会多个线程main()称为主线程,为系统的入口,用于执行整个程序;在一个进程中,如果开辟了多个线程,线程的运行由调度器安排调度,调度器是与操作系统紧密相关的,先后顺序是不能人为的干预的。对同一份资源操作时,会存在资源抢夺的问题,需要加入并发控制;线程会带来额外的开销,如CPU调度时间,并发控制开销。每个线程在自己的工作内存交互,内存控制不当会造成数据不一致Thread创建线程方式一:继承Thread

2020-11-01 11:22:37 89

原创 自定义的异常类

自定义的异常类package com.jin.www;public class MyException extends Exception{ private int detail; public MyException(int a) { this.detail=a; } public String toString() { return "MyException{"+detail+"}"; } }package com.jin.www;public class De

2020-10-31 22:39:10 65

原创 try catch, throw, throws

try catch, throw, throwspackage com.jin.www;public class Person { public static void main(String[] args) { int a=1; int b=0; try { System.out.println(a/b); //try 监控区域 }catch(ArithmeticException e){ //catch()括号里是要捕获的异常 Thr

2020-10-31 17:18:35 42

原创 接口 内部类

接口 内部类接口接口的本质是契约,就像我们人间的法律一样,制订好后大家都要遵守。接口关键字:interface接口都需要实现类类 可以实现接口,但是需要重写接口中的方法利用接口实现多继承接口作用约束定义一些方法,让不同的人实现。方法都是 public abstract 修饰常量都是 public static final 修饰接口不能实例化,接口中没有构造方法implements 可以实现多个接口必须要重写接口中的方法接口没有构造方法内部类内部类就是在一个类的内部

2020-10-31 16:17:25 101

原创 抽象类

抽象类package com.jin.www;// abstract 抽象类public abstract class Person { //约束~有人帮我们实现~ //abstract ,抽象方法,只有方法名字,没有方法实现! public abstract void say() { }}抽象类的所有方法,继承它的子类,都必须要实现它的方法-除非~子子类 类只有单继承,而接口可以多继承。不能new 这个抽象类,只能靠子类去实现它:约束!抽象类可以写

2020-10-31 10:02:54 45

原创 static关键字

static关键字private static int age; //静态的变量private double score; //非静态的变量package com.jin.www;public class Demo01 { static String name; //类变量 public static void main(String[] args) { Demo01 demo=new Demo01(); System.out.println(demo.name); //通

2020-10-31 09:42:06 65

原创 封装 继承 多态

封装 继承 多态封装我们程序设计要追求**“高内聚,低藕合”**。高内聚就是类的内部数据操作细节自己完成,不允许外部干涉;低耦合:仅暴露少量的方法给外部使用。通常,应禁止直接访问一个对象中数据的实际表示,而应通过操作接口来访问,这称为信息隐藏。记住:属性私有,get/set关键字:private 表示只能类内使用它,或者new出来对象,再用get方法获取,set方法设置。作用提高程序的安全性,保护数据。隐藏代码的实现细节。统一接口。系统可维护增加了继承继承的本质是对某一

2020-10-31 09:08:23 90 1

空空如也

空空如也

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

TA关注的人

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