Java
文章平均质量分 79
LiLiLiLaLa
石棉
展开
-
JavaSE——访问控制权限、jar、单例和异常
1.包的定义及使用包的本质实际上就属于一个文件夹,在项目开发中很难避免类名称重复的问题,如果所有的java文件都放在一个文件夹中,就有可能存在覆盖问题1.1.包的导入开发中使用包的定义之后,相当于把一个大的项目分别按照一定要求保存在了不同的包之中,但是这些程序类一定会发生互相调用的情况,这个时候就需要包的导入类使用class和public class的区别:public class: ...原创 2019-07-22 23:59:30 · 280 阅读 · 2 评论 -
JavaSE——多线程:ThreadLocal详解
1.概念ThreadLocal用于提供线程局部变量,在多线程环境可以保证各个线程里的变量独立于其它线程里的变量,也就是说ThreadLocal可以为每个线程创建一个单独的变量副本,相当于线程的private static类型变量2.ThreadLocal的简单使用public class Test { private static String commStr; privat...原创 2019-07-02 23:26:55 · 236 阅读 · 0 评论 -
Spring JDBC
Spring JDBC:Spring提供的对JDBC简单封装。提供了JDBCTemplate对象简化JDBC开发。Spring JDBC使用步骤:1.导入jar包2.创建JDBCTemplate对象依赖于数据源DataSource:JDBCTemplate te = new JDBCTemplate(DataSource ds);3.调用JDBCTemplate的方法来完成CRUD操...原创 2019-06-22 23:25:36 · 255 阅读 · 0 评论 -
JavaSE——泛型
1.泛型问题引出假设需要你定义一个描述坐标的程序类Point,需要提供两个属性x、y。对于这两个属性的内容可能有如下选择:1.x = 10、y = 20 ;2. x = 10.1、y = 20.1 ;3. x = 东经80度、y = 北纬20度那么现在首先要解决的问题就是Point类中的x、y的属性类型问题,此时需要保存的有int、double、String,所以在java中只有一种类型...原创 2019-06-11 23:22:10 · 395 阅读 · 0 评论 -
JavaWeb——EL和JSTL
1.EL表达式1.1.EL概念EL:Expression Language,表达式语言作用:替换和简化JSP页面中Java代码的编写1.2.EL语法${表达式}!!!注意:JSP默认支持EL,那么假如要输出“3 > 4”字符串样式怎么办呢?有两种方法:使用isELIgnore,但是这个方法会是这个页面的所有EL表达式都被忽略使用“\”忽略个别1.3.EL使用...原创 2019-06-04 23:27:33 · 367 阅读 · 0 评论 -
JavaWeb——MVC开发模型
MVC:一种软件开发典范,不是设计模式,是一种开发模型1.JSP演变历史早期只有servlet,只能使用response输出标签数据,非常麻烦后来有了JSP,简化了Servlet的开发当项目比较小时使用JSP很方便,当项目很大后,JSP里面又有代码又有标签,循环嵌套,十分混乱,难以阅读和维护再后来Java的Web开发借鉴MVC开发模式使得程序的设计更加合理2.MVC模式MVC:...原创 2019-06-04 17:37:01 · 421 阅读 · 1 评论 -
JavaWeb——JSP
1.JSP入门1.1.概念JSP:Java Server Page,Java服务端页面,可以理解为一个特殊的页面,其中既可以指定HTML标签,又可以定义Java代码,用于简化书写1.2.JSP原理JSP本质是一个Servlet1.3.JSP的脚本JSP脚本:JSP定义Java代码的方式<% 代码 %>:定义的Java代码,在Service方法中。service方法中...原创 2019-06-03 20:58:35 · 270 阅读 · 1 评论 -
JavaSE——JDK1.5新特性
131734原创 2019-06-08 21:48:41 · 350 阅读 · 0 评论 -
JavaWeb——Filter and Listener
JavaWeb三大组件:Servlet、Filter、Listener1.Filter(过滤器)1.1.概念Web中的过滤器:当访问服务器的资源时,过滤器可以将请求拦截,完成一些特殊的功能1.2.过滤器的作用一般用于完成通用的操作,如登陆验证、统一编码处理、敏感字符过滤等1.3.过滤器快速入门步骤:1.定义一个类,实现接口Filter2.覆写方法3.配置拦截路径...原创 2019-06-07 16:58:40 · 375 阅读 · 0 评论 -
JavaSE——多线程:生产者消费者模型
生产者消费者模式是通过一个容器来解决生产者和消费者的强耦合问题。生产者和消费者彼此之间不直接通讯,而通过阻塞队列来进行通讯,所以生产者生产完数据之后不用等待消费者处理,直接扔给阻塞队列,消费者不找生产者要数据,而是直接从阻塞队列里取,阻塞队列就相当于一个缓冲区,平衡了生产者和消费者的处理能力1.wait()与notify()方法1.1.wait()方法(痴汉)方法wait()的作用是使当前...原创 2019-07-03 11:03:07 · 246 阅读 · 0 评论 -
JavaEE——Spring:IOC的注解开发
1.SpringIOC注解开发入门1.1.创建接口和实现类1.2.约束文档1.3.开启Spring的组件扫描1.4.在类上添加注解1.5.编写测试类1.6.注解方式设置属性值注意:如果使用注解方式设置属性值,可以没有set方法如果提供set方法,将属性注入注解写在set方法上如果不提供set方法,将属性注入注解写在属性上2.Spring的IOC注解详解2....原创 2019-07-12 22:34:27 · 278 阅读 · 0 评论 -
JavaSE——多线程:进程线程以及Java多线程的实现
1.进程与线程1.1.进程线程概念与比较进程:操作系统(OS)中一个程序的执行周期称为一个进程线程:进程中的一个任务就称为一个线程,一个进程中包含N个线程序号进程线程1.进程是资源分配的最小单位线程是程序执行的最小单位2.进程有自己的独立地址空间,每启动一个进程,系统就会为它分配地址空间,建立数据表来维护代码段、堆栈段和数据段,这种操作非常昂贵线程是共享...原创 2019-06-28 22:18:54 · 327 阅读 · 1 评论 -
JavaEE——Spring:事务管理
1.事务1.1.概念事务:逻辑上的一组操作,组成这组操作的各个单元要么全都成功要么全都失败1.2.特点原子性:事务不可分割一致性:事务操作前后数据总量不变隔离性:一个事务的执行不干扰其他事务持久性:一旦事务结束(包括提交或回滚)数据就持久化到数据库1.3.不考虑隔离性引发的安全问题脏读:是指当一个事务正在访问数据,并且对数据进行了修改,而这种修改还没有提交到数据库中,这时,...原创 2019-07-17 20:39:33 · 308 阅读 · 2 评论 -
JavaEE——Spring:AOP概述及入门
1.AOP的概述1.1.什么是AOPAOP:面向切面编程,AOP是OOP的扩展和延伸,用于解决OOP开发中遇到的一些问题1.2.AOP的应用场景1.3.Spring底层所使用的AOP的实现原理底层原理:动态代理JDK动态代理:只能对实现了接口的类产生代理(默认,底层会自动切换)cglib动态代理(类似于Javassist第三方代理技术):对没有实现接口的类产生代理对象,生成该类的...原创 2019-07-16 01:16:44 · 635 阅读 · 0 评论 -
JavaSE——反射(类加载器,双亲委派)
1.初识反射1.1.认知反射反射指的是对象的反向处理操作,根据对象倒推类的组成,默认情况下,必须要先导入一个包,而后才能产生类的实例化对象,如下:import java.util.Date;public class Test { public static void main(String[] args) { Date date = new Date() ; ...原创 2019-07-05 23:55:41 · 319 阅读 · 0 评论 -
JavaSE——多线程:线程的同步与死锁
同步问题:每一个线程对象轮番抢占共享资源带来的问题1.同步问题的引出需求:多个线程同时卖票class MyThread implements Runnable { private int ticket = 10 ; // 一共十张票 @Override public void run() { while(this.ticket>0) { // 还...原创 2019-06-30 23:24:04 · 252 阅读 · 0 评论 -
JavaSE——多线程:常用操作方法
1.多线程的常用操作方法1.1.线程命名与取得多线程的运行状态是不确定的,所以对于多线程操作必须有一个明确标识出线程对象的信息,这个信息往往通过名称来描述。在Thread类中提供有如下的线程名称获得相关方法:No.方法名称类型描述1public Thread(Runnable target,String name)构造创建线程的时候设置名称2public...原创 2019-06-29 21:22:06 · 242 阅读 · 0 评论 -
JavaSE——多线程:Lock体系
1.初识Lock与AbstractQueuedSynchronizer(AQS)1.1.Lock简介锁是用来控制多个线程访问共享资源的方式,一般来说,一个锁能够防止多个线程同时访问共享资源。在Lock接口出现之前,java程序主要是靠synchronized关键字实现锁功能的,而JDK5之后,并发包中增加了lock接口,它提供了与synchronized一样的锁功能。虽然它失去了像synchr...原创 2019-07-04 20:39:15 · 404 阅读 · 0 评论 -
JavaEE——Spring:对Bean的管理
1.IOC(控制反转)和DI(依赖注入)IOC:控制反转,将对象的创建权反转给SpringDI:依赖注入,前提必须有IOC的环境,Spring在管理类的时候会将类的依赖的属性注入(设置)进来面向对象的时候类之间关系:1.依赖class A{}class B{ public void xxx(A a){}...原创 2019-06-29 16:03:39 · 489 阅读 · 0 评论 -
JavaEE——Spring:Spring概述和基础IOC入门
1.Spring概述1.1.Spring是什么Spring:Spring是分层的JavaSE/EE应用full-stack轻量级开源框架,它以IOC(控制反转)和AOP(面向切面编程)为内核,提供了展现层的SpringMVC和持久层的Spring JDBC以及业务层的事务管理等众多企业级应用技术,还能整合开源世界众多著名的第三方框架和库,逐渐成为使用最多的JavaEE企业应用开源框架1.2....原创 2019-06-23 21:37:06 · 513 阅读 · 0 评论 -
JavaWeb——Servlet
1.Servlet概念Servlet:server applet,运行在服务器的小程序。Servlet就是一个接口,定义了Java类被浏览器访问到(Tomcat识别)的规则。原创 2019-05-17 18:24:08 · 602 阅读 · 1 评论 -
JavaWeb——Cookie和Session(会话技术)
1.会话技术1.1.概念会话:一次会话中包含多次请求和响应一次会话:浏览器第一给服务器资源发送请求,会话建立,直到有一方断开为止会话的功能:在一次会话的范围内的多次请求间共享数据1.2.方式客户端会话技术:Cookie,将来将数据存在客户端服务器端会话技术:Session,将来将数据存在服务器2.CookieCookie:客户端会话技术,将数据保存在客户端2.1.Cooki...原创 2019-05-22 17:58:28 · 1273 阅读 · 2 评论 -
JavaWeb——Tomcat
1.Web相关概念1.1.软件架构C/S:客户端/服务器端B/S:浏览器/服务器端(大部分JavaEE开发集中于B/S)1.2.资源分类静态资源:所有用户访问得到的结果都是一样的,这种效果称为静态资源,浏览器拥有静态资源解析引擎可以直接解析静态资源,如HTML、CSS、JavaScript动态资源:每个用户访问相同资源后得到的结果可能一样可能不一样,称为动态资源,动态资源被访问后...原创 2019-05-16 14:48:27 · 365 阅读 · 0 评论 -
JavaSE——数组的定义和使用
数组:指的就是一组相关类型的变量集合,并且这些变量可以按照统一的方式进行操作。1.数组的基本概念1.1.数组的动态初始化1.1.1.数组的开辟数组的动态初始化要声明并开辟数组,语法格式如下:数据类型[] 数组名称 = new 数据类型[长度];1.1.2.对数组的操作数组的访问通过索引完成。即“数组名称[索引]”,要注意的是,数组索引从0开始,因此可以采用的索引范围就是0~数组长...原创 2019-01-20 20:59:37 · 445 阅读 · 3 评论 -
JavaSE——类与对象(1)
1.面向对象编程简述面向过程编程缺少了可重用设计性1.1.面向对象三大特征封装性:所谓封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。简而言之,内部操作对外部而言不可见(保护性)继承性:继承是一种能力,指的是他可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展多态性:所谓多态就是指一个类实例的...原创 2019-01-25 12:18:11 · 644 阅读 · 2 评论 -
JavaSE——程序的逻辑控制和方法的定义及使用
1.Java程序结构与逻辑控制在Java中,程序一共有三种结构:分支结构循环结构顺序结构1.1.Java分支结构分支结构:进行逻辑判断,当满足某些条件时才会执行某些语句1.1.1.if语句if语句有如下两种形式:if(布尔表达式){ //条件满足时执行代码 }else{ 条件不满足时执行代码 } if(布尔表达...原创 2019-01-19 20:46:23 · 625 阅读 · 3 评论 -
JavaSE——数据类型与运算符
1.Java标识符与关键字1.1.Java注释注释分为以下三种:单行注释://注释内容(使用最多)多行注释:/* 注释内容 */(不推荐)文档注释:/** 文档注释 */(常见于方法和类之上,描述方法和类的作用,可用于生成自动文档)1.2.Java标识符Java中,对于变量、常量、函数、语句块等的名字,我们称之为标识符。1.2.1.标识符基本要求对于Java标识符,有三点基本...原创 2019-01-18 19:23:28 · 523 阅读 · 3 评论 -
JavaSE——初识Java
1.Java中的main方法&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;如下展示的是一个简单的java程序,Java程序的结构大致由三部分组成:源文件(扩展名*.java):源文件带有类的定义,小程序或许只会有一个类,类的内容必须包含在花括号里类:类中会带有一个或多个方法,方法必须在类的内部声明方法:在方法的花括号中编写方法应该执行的语句&am原创 2019-01-17 18:59:16 · 414 阅读 · 1 评论 -
JavaSE——三个特殊的类:StringBuffer类
StringBuffer类1.引入 任何的字符串常量都是String对象,而且String的常量一旦声明不可改变,如果改变对象内容,改变的只不过是其引用的指向而已。 由于String的不可改性,为了方便字符串修改,提供了Strin原创 2018-12-10 19:58:40 · 651 阅读 · 1 评论 -
JavaSE——三个特殊的类:String类(下)
String类(下)1.字符串查找从一个完整的字符串之中可以判断指定内容是否存在,查找方法如下:No.方法名称类型描述1.public boolean contains(CharSequence s)普通判断一个子字符串是否存在2.public int indexOf(String str)普通从头开始查找指定字符串位置,查到了返回开始位置索引,如果...原创 2018-12-08 15:39:13 · 543 阅读 · 2 评论 -
JavaSE——三个特殊的类:Object
Object1.Object简述&amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;nbsp;Object是Java默认提供的一个类。Java里除了O原创 2019-01-15 19:26:23 · 371 阅读 · 2 评论 -
JavaSE——三个特殊的类:包装类
包装类1.包装类基本原理包装类就是将基本数据类型封装到类中。//这里的IntDemo实际上就是int数据类型的包装类class IntDemo{ private int num; public IntDemo(int num){ this.num = num; } public int intValue(){ return t...原创 2019-01-15 22:53:05 · 529 阅读 · 0 评论 -
JavaSE——类与对象(2)
1.代码块定义:使用“{}”定义的一段代码称为代码块根据代码块定义的位置及关键字可分为以下四种:普通代码块构造块静态块同步代码块1.1.普通代码块普通代码块:定义在方法中的代码块示例如下:public class Test{ public static void main(String[] args) { {//直接使用{}定义,普通方法块 ...原创 2019-01-27 19:08:25 · 719 阅读 · 3 评论 -
JavaWeb——Response
1.HTTP协议请求消息:客户端发送给服务器端的数据响应消息:服务器端发送给客户端的数据1.1.数据格式请求消息:请求行、请求头、请求空行、请求体响应消息:响应行、响应头、响应空行、响应体1.2.响应数据格式响应行1.组成:协议/版本 响应状态码 状态码描述2.响应状态码:服务器告诉客户端浏览器本次请求和响应的状态:https://baike.baidu.com/item/...原创 2019-05-20 20:55:24 · 553 阅读 · 0 评论 -
配置文件——XML
1.XML概念XML:Extensible Markup Language,可扩展标记语言可扩展:标签都是自定义的,想写啥写啥,只要符合标签的命名2.XML功能——存储数据XML作为配置文件数据存起来后可以在网络中传输(XML是纯文本的,它和语言和平台都无关)3.XML和HTML区别扩展——W3C:万维网联盟,94年创建,发布了许多影响深远的web技术标准及实施指南,其中就 包...原创 2019-05-15 00:20:36 · 740 阅读 · 0 评论 -
JavaWeb——Request
1.HTTP的请求消息和响应消息1.1.概念HTTP:Hyper Text Transfer Protocol,超文本传输协议传输协议:定义了客户端和服务器通信时发送数据的格式1.2.HTTP协议特点基于TCP/IP的高级协议默认端口号80基于请求/响应模式:一次请求对应一次响应无状态的:每次请求之间相互独立,不能交互数据1.3.历史版本1.0:每次响应都会建立新的连...原创 2019-05-19 10:51:45 · 513 阅读 · 1 评论 -
JavaSE——JDK1.8新特性概述
1.枚举1.1.枚举问题引出2.注解3.接口定义加强4.Lambda表达式5.方法引用6.内建函数式接口原创 2019-04-10 17:59:02 · 700 阅读 · 0 评论 -
JavaSE——抽象类与接口
1.抽象类的定义和使用1.1.抽象类的定义与使用&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;amp;amp原创 2019-02-18 23:33:41 · 768 阅读 · 1 评论 -
JavaSE——面向对象开发
1.包的定义与使用&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;&amp;amp;amp;nbsp;包的本质实际上就是一个文件夹,在项目开发中很难避免类名称重复问题,如果所有的java文件都放在一个文件夹,就有可能出现覆盖问题。原创 2019-02-27 21:53:35 · 564 阅读 · 0 评论 -
JavaSE——三个特殊的类:String(上)
String类(上)1.String类的两种实例化方式1.1.直接赋值(常用)String str = "Hello Bit";//str是一个对象,那么“Hello Bit”就应该保存在堆内存中System.out.println(str);1.2.传统方法:String本身是一个类,既然是类,就存在构造方法,String类其中一种构造方法如下public String...原创 2018-11-22 23:30:07 · 569 阅读 · 2 评论