- 博客(51)
- 资源 (1)
- 收藏
- 关注
原创 从自学到工作近一年总结
从0到0.5从为什么会学编程聊起。我记得是大三第一学期的时候,我们有一个单元的课文是分析微软和苹果这种科技巨头的,然后到苹果那一部分的时候就出现了著名的乔布斯在斯坦佛的演讲Stay Hungry,Stay Foolish。不巧的是正好是我要做这个部分的presentation,因为要围绕苹果的发展历程以及乔布斯的人生历程,所以还是花了时间课下好好准备的。当我讲完这部分,准备从讲台上下来时,芈教授叫住了我,她问我:Django, what about your life and dream. 我当时脑..
2022-05-12 11:03:11 344
原创 文件上传
<%--Created by IntelliJ IDEA.User: DjangoDate: 2021/4/26Time: 10:42To change this template use File | Settings | File Templates.--%><%@ page contentType="text/html;charset=UTF-8" language="java" %><html><head> <title&g
2021-04-26 21:12:29 173
原创 2021-04-15
1、常用正则表达式正则表达式就是单个字符串,用来描述或匹配一系列符合某个句法规则的字符串作用:进行数据验证替换用户名/1{3,16}$/密码/2{6,18}$/十六进制值/^#?([a-f0-9]{6}|[a-f0-9]{3})$/电子邮箱/^([a-z0-9_.-]+)@([\da-z.-]+).([a-z.]{2,6})KaTeX parse error: Undefined control sequence: \d at position 9: /
2021-04-15 17:40:09 270
原创 一文搞定JSP
一、为什么使用JSPHTML和JSP的区别,就好像我有一块巨大的墙,然后在上面用传统的方式粘贴广告布,今天是张三出1万块钱展示他的成人用品广告,明天是李四花2万块钱展示他的治肾亏广告。。。我每天都得去换广告布???No,使用电子屏幕就搞定了!HTML不能动态展示内容HTML不能设置变量HTML也不能进行业务逻辑判断不能进行数据循环可以通过response对象响应浏览器数据的方式,在servlet中通过Java代码控制响应的数据,达到动态展示的效果,但是需要以一个完整页面的方式展示,但是代码
2021-04-15 09:19:12 382
原创 初识JDBC
1、什么是JDBCJDBC(Java DataBase Connectivity)就是一套数据接口规范,用于连接数据库,而各个数据产商负责提供实现类。主要有两个部分:(1)java.sql包和javax.sql包中的API(2)各个数据库厂商提供的jar2、JDBC的使用步骤2.1、注册驱动准备工作:首先导入数据库jar包到项目中,然后把驱动jar包添加到项目的path路径下将驱动类加载到内存中:Class.forName("com.mysql.jdbc.Driver");/*注
2021-04-12 21:09:56 164
原创 Java反射机制
Java反射机制前言首先向自己道个歉,自从上一篇文章说要以写教案的形式提高自己以来,迟迟未动手,一方面,是因为这段时间一直在准备专八考试和毕业论文,实在是有点力不从心;另一方面,是自己尚未充分的构思好要如何切入反射这个重要的知识点。现在终于有时间可以动手了,言归正传。还是从头开始说比较好。首先,本文的线索是:什么是反射类的加载机制javalang.Class类反射的应用1、什么是反射?Java反射机制其实是动态的获取信息以及动态调用对象的功能;而所谓动态是指,对于任意一个运
2021-04-08 11:32:14 113
原创 混沌初开
前言2021/3/25 16:22:14 星期四为什么要写教案其实也不能说是教案,而是说一种学习方式,或者说是一种提高方式。因为我自己本身是对编程感兴趣,但是又不想仅仅是停留在做一个低级的程序员,所以得找到合适得学习方法不断地提高自己得能力,综合说来是两点:其一是对Java这门语言的认识和掌握,其二是对算法的学习和掌握。我知道要成为一名顶尖的高手,这两门是必不可少的。而如何学习Java语言本身是一个难题,昨晚看一个博主的推文,恍然大悟,学生的思维,做笔记的方式来学习编程,我们的编程能力将很难得到长足
2021-03-25 16:41:33 205 2
原创 day12装饰器
今日上课内容(2020-3-11):1.装饰器的形成过程:最简单的装饰器,有返回值的,有一个参数,万能参数2.装饰器的作用3.原则:开放封闭原则4.装饰器的固定模式5.语法糖:@import timetime.sleep(3)def func(): print('Good morning everybody! Welcome back to your class!')fu...
2021-03-25 16:37:50 71
原创 2020-11-01
MySQL多表与事务多表查询_内连接多表查询的分类:内连接查询:1.隐式内连接:使用where条件来消除无用的数据。2.显式内连接:* 语法:select 字段列表 from 表名 inner jion 表名 on 条件(inner可选)* 注意事项:*从哪些表中查数据* 条件是什么* 查询哪些字段外链接查询:1.左外连接:* 语法:select 字段列表 from 表1 left outer jion 表2 on 条件;* 查询的是左表所有数据及其交集部分.2.右外连
2021-03-06 10:46:27 77
原创 Spring框架
1.Spring框架概述Spring是什么Spring是分层的JavaSE/EE应用full-stak轻量级开源框架,以IOC(Inverse Of Control:反转控制)和(Aspect Oriented Programming:面向切面线程)为内核,提供展现层SpringMVC和持久层SpringJDBC以及业务层事务管理的企业i应用技术。Spring的两大核心IOC(Inverse Of Control:反转控制)和AOP(Aspect Oriented Programming
2020-12-02 15:23:16 129
原创 JSP
JSP指令:作用:用于配置JSP页面,导入资源文件格式:<%@ 指令名称 属性名1=属性值1 属性名2=属性值2 …%>分类:page:配置JSP页面contentType:等同于response.setContType()设置响应体的mime类型以及字符集设置当前JSP页面的编码(只能是高级IDE才能生效,如果使用低级工具则需要设置pageEncoding属性设置当前页面的字符集)import:导包(和Java是一样的)errorpage:当前页面发生异常后,
2020-11-28 22:57:52 256
原创 Cookies&Session
会话技术概念:一次会话中包含多次请求和响应一次会话:六篮球第一次给服务器资源发送请求,会话建立,直到有一方断开为止功能:在一次会话的范围内共享方式:客户端绘画技术:Cookie服务器端会话技术:SessionCookie:概念:客户端会话技术,将数据保存到客户端快速入门:使用步骤:创建Cookie对象,绑定数据new Cookie(String name,String value)发送Cookie对象response.addCookie(Cook
2020-11-27 17:35:06 107
原创 HTTP&SERVLET
ResponseHTTP协议:请求消息:客户端发送给服务器端的数据数据格式:请求行请求头请求空行请求体响应消息:服务器端发送给客户端的数据数据格式:响应行组成:协议/版本 响应状态码 状态码描述响应状态码:服务器告诉客户端浏览器,本次请求和响应的状态状态码都是3位数分类:1xx:客户端给服务器发消息,服务器接收客户端消息但是没有完成,等待一段时间后,发送1xx状态码2xx:成功。代表状态:2003xx:重定向。代表的状态码:302(重定向)304(访
2020-11-22 16:11:13 87
原创 tomcatServlet
web服务器软件:Tomcat网络通信的三要素IP地址:电子设备在网络中的唯一标识端口:应用程序在计算机中的唯一标识。(0~65536)传输协议:规定额数据传输的规则基础协议:TCP协议:安全协议,三次握手。速度慢,安全UDP协议:不安全的广播协议。速度快,不安全Web服务器软件:服务器:安装了服务器软件的计算机服务器软件:接收用户请求,处理请求,做出响应web服务器软件:在web服务器软件中,可以部署web项目,让用户通过浏览器来访问这些项目常见的Java相关的
2020-11-14 18:43:48 131
原创 JavaScript基础
javas基础JavaScript简介概念:JavaScript是一门客户端脚本语言#### 运行应在客户端浏览器中,每一个浏览器都有JavaScript的解析引擎#### 脚本语言时不需要编译就可以直接被浏览器解析执行功能:* 增强用户与html页面交互,可以用来控制html元素,让页面有一些动态的效果,增强用户的体验01.ECMAScript基本语法与html结合方式:内部JS:定义script标签,标签体内容就是js代码外部JS:定义script标签,通过sr
2020-11-13 14:43:12 117
原创 《第12章 泛型与容器类》
12.1 泛型泛型的实质就是将数据类型参数化,通过为类,接口及方法设置类型参数来定义泛型。泛型使一个类或一个方法可在多种不同类型的对象上进行操作,使用泛型意味着编写的代码可以被很多类型不同的对象所重用,从而减少数据类型转换潜在的错误。12.1.1 泛型的概念泛型实际上是在定义类,接口或方法时通过为其增加“类型参数”来实现的。即泛型所操作的数据类型被指定为一个参数,这个参数被称为类型参数,所以说,泛型的实质是将数据的类型参数化。当这种类型参数用在类,接口,以及方法的声明中时,则分别称为泛型类,泛型
2020-11-11 17:14:39 352
原创 CSS
HTML 表单标签:1. 用于采集用户输入的数据2. 使用标签:form 1. 可以定义一个范围,这个范围代表采集用户数据的范围 2. 属性: 1. action:指定提交数据的URL 2. method:指定提交方式 1. 一共其中,2两种常用 1. get: 1. 请求参数会在地址栏中显示。封装到请求行中。 2. 请求参数的长度是有限制的 3. 不太安全 2. post: 1. 请求参数不会在地址栏中显示。会封装在请求体中
2020-11-08 18:45:25 190
原创 HTML
web概念JavaWeb:使用Java要吐烟开发基于互联网的项目软件的架构:C/S:Client/Server/客户端/服务器在用户本地有一个客户端程序,再远程有一个服务器端程序如:QQ,微信等优点:用户体验好缺点:安装,部署麻烦,维护也很麻烦B/S:Browser/Server/浏览器/服务器端只需要一个浏览器,用户通过不同的网址(URL),可以访问不同的服务器端程序优点:开发,安装与部署以及维护都很简单缺点:如果应用过大,用户的体验可
2020-11-08 14:43:10 129 2
原创 2020-11-05
package multi_threading;/*实验11.4——线程同步机制1.实验目的:了解线程同步的基本思想了解synchronized关键字的使用2.实验要求:编写一个Java程序,载程序中实现生产者与消费者过程3.实验指导:线程同步思想,是避免多个线程对统一资源的同时访问,对于这样的同步资源,Java语言使用synchronized关键字来标识,这里的资源可以是一种类型的数据,也就是对象,也可以是一个方法,还可以是一段代码方式前面加关机字synchronized的方法或代
2020-11-05 10:26:56 151
原创 2020-11-05
package multi_threading;/*实验11.4——守护线程1.实验目的:1.了解守护线程的作用2.学习在程序中使用守护线程3.了解守护线程与普通线程的区别2.实验要求:编写一个Java程序,在程序中生成一个线程,把该线程定义为守护线程3.实验指导:守护线程是一类特殊的线程,他是为了其他线程的运行听过符文u的后台线程当一个应用程序的所有非守护线程终止运行时,即使仍然有守护线程运行=,应用程序也将终止,反之只要有一个非守护想蹭运行,应用程序就不会终止将一个用户线程
2020-11-05 09:50:23 763
原创 2020-11-05
package multi_threading;/*实验11。3——售票程序1.实验目的: 学习线程的同时运行 掌握一个类直接继承Thread类和实现Runnable接口实现多线程的区别2.实验要求 用程序模拟售票系统,实现4个售票点发售某日某次列车的0张车票3.实验指导 直接继承Thread类和实现Runnable接口都能实现多线程,再写一个程序对比两者的区别*/```javapublic class Sale { public static
2020-11-05 09:35:11 257
原创 2020-11-05
package multi_threading;/*实验11.1——用Thread类创建线程1.实验目的:l.了解Thread类2.通过学习Thread类来创建线程2.实验要求:编写一个Java程序,定义一个ThreadA类继承Thread类,在main()方法中创建ThreadA类的3个实例,执行这些线程3.实验指导:java语言中实现多线程的方法有两种,一种是继承java.lang包中的Thread类;另一种是用户在定义自己的类中实现Runnable接口。不管采用哪种方法,都要用
2020-11-05 09:03:44 339
原创 2020-11-05
package multi_threading;/*实验11.2——实现Runnable接口创建线程1.实验目的:1.了解Runnable接口2.学习通过Runnable接口来创建线程2.实验要求:编写一个Java程序,定义一个类ThreadB实现Runnable接口,在main()方法中创建Thread类 的3个实例,执行这些线程3.实验指导:如果本身已经继承了某个父类,由于Java不支持多重继承,所以就无法在继承Thread类,特别是小程序这种情况下可以创建一个类来实现Runna
2020-11-05 09:02:41 302
原创 线程面试题
简述线程的基本概念。程序,进程,线程的关系是什么?线程也是一个执行中的程序,但线程是一个比进程更小的执行单位。程序是指含有指令和数据的文件,被存储在磁盘或其他的数据存储设备中,程序是静态的代码;进程是程序的一次执行过程,是系统运行程序的基本单位,进程是动态的一个进程在其执行过程中可以产生多个线程,形成多条执行路径什么是多线程?为什么程序的多线程功能是必要的?多线程就是同时执行一个以上的线程,一个线程的执行不必等待另一个线程执行完后才执行,所有的线程都可以发生在同一个时刻,由于每一个进程.
2020-11-04 21:38:54 111
原创 《第11章》多线程
线程的概念多线程是指在同一个进程中同时存在几个执行体,按照几条不同的执行路径同时的工作。也就是说,可以将一个程序人物划分成几个可以同时并发执行的子任务。程序,进程,多人物与线程程序:程序是含有指令和数据的文件,被存储在磁盘或其他的数据存储设备中,也就是说程序是静态的代码。进程:进程是程序的一次执行过程,是系统运行程序的基本单位,因此进程是动态的。系统运行一个而程序也就是一个进程从创建,运行到消亡的过程。简单的说,一个进程就是一个执行中的程序,他在计算机集中一个指令接着一个指令地执行着,同时,
2020-11-04 21:06:17 178
原创 JDBC
JDBC基本概念概念:Java DataBase Connectivity——Java数据库i按揭,Java语言操作数据库JDBC本质:其实是官方定义的一套操作所有关系型数据库的规则,即接口。各个数据库厂商区实现这套接口,提供数据库驱动jar包。我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类。快速入门步骤:导入驱动jar包:复制包到项目下(最好是新目录下)右键–>add as library注册驱动:获取数据库连接对象Connection:
2020-11-04 12:39:41 96
原创 XML
XML概念:Extensible Markup Language可扩展标记语言可扩展:标签都是自定义的。功能:与html的区别:xml的标签都是自定义的,html标签都是预定义的xml的语法严格,html的语法松散、xml是存储数据的,html是展示数据的语法:基本语法:xml文档的后缀名.xml第一行必须定义为文档声明xml中有且仅有一个根标签属性值必须用引号引起来(单双都可以)标签必须正确关闭xml的标签区分大小写快速入门:组成部分:文档声明
2020-11-03 11:02:28 123
原创 MySQL多表与事务
多表查询_内连接多表查询的分类内连接查询:1.隐式内连接:使用where条件来消除无用的数据。2.显式内连接:语法:select 字段列表 from 表名 inner jion 表名 on 条件(inner可选)注意事项:*从哪些表中查数据条件是什么查询哪些字段外链接查询:1.左外连接:语法:select 字段列表 from 表1 left outer jion 表2 on 条件;查询的是左表所有数据及其交集部分.2.2.右外连接:语法:select
2020-11-01 15:08:49 92
原创 第10章—Java语言的输入输出与文件管理
第10章—Java语言的输入输出与文件管理1.什么是数据的输入与输出?将数据从外设或外存(如屏幕,打印机,文件等)传递到应用程序称为数据的输入;将数据从应用程序传递到外设或外村称为数据的输出。2.什么是流?Java语言中分为哪两种流?这两种流有何差异?流是指计算机各部件之间的数据流动。按照数据的传输方向,Java语言将流分为输入流与输出流两种,从流的内容上划分,流分为字节流和字符流。字节流每次读写8为二进制数,由于他只能将数据以二进制的原始方式读写,因此字节流又被称为二进制流,由于他只能将数据以二进
2020-10-31 16:40:52 573
原创 第6节 Static静态
Static静态1.static关键字概述一旦使用了static关键字,那么这样的内容不再属于对象自己,而是属于类的。所以凡是本类的对象,都共享同一份package day08;public class Student { private String name;//姓名 private int age;//年龄 static String room;//所在教室 private static int idCounter = 0;//学号计数器,当新建对象时,计数器++ private
2020-08-13 13:13:51 122
原创 第5节 String类
第五节 String类一、简介java.lang.String类代表字符串API中:Java程序中所有字面值(如:“abc”)都做此类的实例实现其实就是说:程序中所有的双引号字符串都是String类的对象,就算是(没有new)也是String对象、二、特点String字符串的特点:1.字符串的内容不可改变2.正是因为字符串不可改变,所以字符串是可以共享使用的3.字符串效果上相当于是char[]字符数组,但是底层原理是byte[]字节数组三、创建字符串的常见3+1种方式:1.直接
2020-08-13 13:13:20 131
原创 再难也要坚持下去
再难也要坚持下去因为自己喜欢,所以才会热爱,才会有热情。虽然直到看到乔布斯说的则换句话之后,才发现自己喜欢的是编程,是计算机,所以开始学习。这一路上自己进步很缓慢,但是一定会坚持到底,改变世界的理想依旧未变,无论我改变与否,那不重要,重要的是改变世界,十年后,再回来看这篇博客,我一定已经是行业内首屈一指的大牛。感谢逝去的岁月和未来的征程。2020.5.29...
2020-05-29 18:39:22 92
原创 数据库
# 什么是数据库? # 存储数据的仓库# 什么是数据? # 大家所知道的都是数据# 数据库概念: # 1.数据库服务器——计算机 # 2.数据库管理系统——数据库管理系统 # 3.库——文件夹(重点) # 4.表——文件 # 5.记录——具体的数据就被称之为记录 # 6.数据 # 数据库操作 # 1.创建 # CREATE DATABASES 文件名 charset utf8; # 2.删除
2020-05-20 09:35:50 91
原创 协程
# 进程——启动多个进程,进程之间是由操作系统负责调用# 线程——启动多个线程,真正由CPU执行的最小单位是线程 # 开启一个线程有属于自己的一小块内存 # 关闭一个线程# 协程——本质上是一个线程 # 能够在多个任务之间切换来节约IO时间,协程中任务切换时间开销远远低于线程进程的切换时间# 这三者都是实现并发的手段def consumer(): # 生成器函数 while True: x = yield print("处理了数据:"
2020-05-20 08:58:33 447 2
原创 事件和信号量
from threading import Semaphore,Threadimport timedef func(sem,a,b): sem.acquire() time.sleep(1) print(a+b) sem.release()sem = Semaphore(4)for i in range(10): t = Thread(target=func,args=(sem,i,i+5)) t.start()57119131519
2020-05-20 08:48:40 403
原创 day_24 初识继承
面向对象的三大特性继承(今天学继承)多态封装什么是继承?继承是一种创建新类的方式,新建的类可以继承一个或多个父类,弗雷又可以称为基类或超类,新建的类叫做派生类或者子类。继承表达了什么是什么的关系python中继承分为单继承和多继承。例:class A: pass #父类class B:passclass A_son(A):pass #只有单A在A_son的括号中时,这两...
2020-04-27 16:26:18 217
原创 day21_24
序列化模块数据类型转化成字符串的过程就是序列化为了方便数据存储与网络传输jsondumpsloadsdump 和文件相关load 不能多次loadpickle方法和json一样dump 和load 的时候 文件时rb或者时wb打开的支持python所有的数据类型序列化和反序列化需要相同的环境shelve模块open方法open方法获取一个文件句柄操作和字典类似模块...
2020-04-25 09:52:18 131
原创 day15_复习和作业讲解
迭代器和生成器迭代器——所有的生成器都是迭代器可迭代协议——含有iter方法的都是可迭代的迭代器协议——含有iter和next的都是迭代器特点:节省内存空间,方便逐个取值,一个迭代器只能取一次生成器生成器函数——含有yield关键字函数的都是生成器生成器函数的特点:调用之后,函数内的代码不执行,而是返回一个生成器,每次从生成器中取一个值,就会执行一段代码,遇到yield就停止。如何...
2020-03-22 10:42:16 153
原创 day14_生成器表达式和列表推导式
# 生成器表达式#生成器表达式英语列表推导式唯一的区别就是括号g = (i for i in range(10)) #这里的generator是生成器print(g)for i in g: print(i)<generator object <genexpr> at 0x000001833D4742C8>0123456789#...
2020-03-21 11:07:14 205
原创 day13迭代器
# Author: Django# 2020-3-18# #迭代器# l = [1,2,3,4]# # 遍历的方法:# #索引,循环# #能被for循环的:字符串,元组,列表,集合,字典,文件,range,enumerate(枚举)# # 为什么能循环?# # 答:# print(dir([])) #告诉列表所拥有的所有方法# #一般带双下划线的方法叫做双下方...
2020-03-18 21:20:22 84
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人