06 2021 档案
摘要:1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Title</title> 6 </head> 7 <body> 8 <form action="/day14_test/loginServ
阅读全文
摘要:1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Title</title> 6 </head> 7 <body> 8 9 <form action="/day14/RequestDemo4
阅读全文
摘要:1 package com.haifei.web.request; 2 3 import javax.servlet.ServletException; 4 import javax.servlet.annotation.WebServlet; 5 import javax.servlet.http
阅读全文
摘要:
阅读全文
摘要:1 package com.haifei.web.servlet; 2 3 import javax.servlet.*; 4 import javax.servlet.annotation.WebServlet; 5 import java.io.IOException; 6 7 8 //@Web
阅读全文
摘要:1 package com.haifei.servlet; 2 3 import javax.servlet.*; 4 import javax.servlet.annotation.WebServlet; 5 import java.io.IOException; 6 7 //@WebServle
阅读全文
摘要:1 <?xml version="1.0" encoding="UTF-8"?> 2 <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
阅读全文
摘要:1 <?xml version="1.0" encoding="UTF-8"?> 2 <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
阅读全文
摘要:
阅读全文
摘要:web相关概念回顾 web服务器软件 Tomcat
阅读全文
摘要:https://www.w3school.com.cn/xpath/index.asp 1 <?xml version="1.0" encoding="UTF-8" ?> 2 <students> 3 <student number="itcast_0001"> 4 <!--<name id="it
阅读全文
摘要:1 <?xml version="1.0" encoding="UTF-8" ?> 2 <students> 3 <student number="itcast_0001"> 4 <!--<name id="itcast">tom</name>--> 5 <name id="itcast"> 6 <
阅读全文
摘要:1 <?xml version="1.0" encoding="UTF-8" ?> 2 <students> 3 <student number="itcast_0001"> 4 <!--<name id="itcast">tom</name>--> 5 <name id="itcast"> 6 <
阅读全文
摘要:DTD --> XML 1 <!ELEMENT students (student*) > <!--*表示可以出现无限次--> 2 <!ELEMENT student (name,age,sex)> <!--严格属性顺序:name,age,sex--> 3 <!ELEMENT name (#PCDA
阅读全文
摘要:1 <?xml version="1.0" encoding="utf-8" standalone="yes" ?> 2 <!--<?xml-stylesheet type="text/css" href="a.css" ?>--> 3 4 <users> 5 <user id='1'> 6 <na
阅读全文
摘要:1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Title</title> 6 <meta http-equiv="X-UA-Compatible" content="IE=edge">
阅读全文
摘要:3_Bootstrap_CSS全局样式_按钮图片 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>3_Bootstrap_CSS全局样式</title> 6 7 <meta http-eq
阅读全文
摘要:https://v3.bootcss.com/css/ https://v3.bootcss.com/components/ https://v3.bootcss.com/javascript/ https://www.runoob.com/bootstrap/bootstrap-tutorial.
阅读全文
摘要:1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Title</title> 6 7 <style> 8 table{ 9 border: 1px solid; 10 width: 500p
阅读全文
摘要:1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Title</title> 6 7 <script> 8 /*//1.失去焦点事件 9 document.getElementById("u
阅读全文
摘要:1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Title</title> 6 </head> 7 <body> 8 <div id="div1"> 9 div 10 </div> 11
阅读全文
摘要:1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Title</title> 6 7 <style> 8 table{ 9 border: 1px solid; 10 margin: aut
阅读全文
摘要:核心DOM对象Document 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Title</title> 6 </head> 7 <body> 8 <div id="div1">div1
阅读全文
摘要:1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Title</title> 6 7 <script> 8 /*//警告弹出框 9 alert("hello window"); 10 win
阅读全文
摘要:1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Title</title> 6 7 <script> 8 //通过id获取元素对象 9 // var light = document.ge
阅读全文
摘要:参考:https://blog.csdn.net/fantianning/article/details/115880363
阅读全文
摘要:1. Function:函数(方法)对象 创建: var fun = new Function(形式参数列表,方法体); //不推荐 function 方法名称(形式参数列表){ 方法体 } var 方法名 = function(形式参数列表){ 方法体 } 属性: length:代表形参的个数 特
阅读全文
摘要:JavaScript 概念: 一门客户端脚本语言 运行在客户端浏览器中的。每一个浏览器都有JavaScript的解析引擎 脚本语言:不需要编译,直接就可以被浏览器解析执行了 功能: 可以来增强用户和html页面的交互过程,可以来控制html元素,让页面有一些动态的效果,增强用户的体验。 JavaSc
阅读全文
摘要:1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>注册页面(html)</title> 6 </head> 7 <style> 8 9 *{ 10 margin: 0px; 11 paddi
阅读全文
摘要:1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>css属性</title> 6 7 <style> 8 p{ 9 color: red; 10 font-size: 30px; 11 te
阅读全文
摘要:1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>css基础选择器</title> 6 7 <style> 8 #div1{ 9 color: red; 10 } 11 12 div{ 13
阅读全文
摘要:概念: Cascading Style Sheets 层叠样式表 层叠:多个样式可以作用在同一个html的元素上,同时生效 页面美化和布局控制 好处: 功能强大 将内容展示和样式控制分离 降低耦合度。解耦 让分工协作更容易 提高开发效率 CSS的使用:CSS与html结合方式 内联样式 在标签内使用
阅读全文
摘要:1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>注册页面(html)</title> 6 </head> 7 <body> 8 9 <form action="#" method="pos
阅读全文
摘要:表单: 概念:用于采集用户输入的数据的。用于和服务器进行交互。 form:用于定义表单的。可以定义一个范围,范围代表采集用户数据的范围 属性: action:指定提交数据的URL method:指定提交方式 分类:一共7种,2种比较常用 get: 请求参数会在地址栏中显示。会封装到请求行中(HTTP
阅读全文
摘要:确定使用table来完成布局 如果某一行只有一个单元格,则使用<tr><td></td></tr> 如果某一行有多个单元格,则使用 <tr> <td> <table></table> </td> </tr> <!DOCTYPE html> <html lang="en"> <head> <meta
阅读全文
摘要:3. 图片标签: * img:展示图片 * 属性: * src:指定图片的位置 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>图片标签</title> </head> <body> <img src="..
阅读全文
摘要:文件标签:构成html最基本的标签 html:html文档的根标签 head:头标签。用于指定html文档的一些属性。引入外部的资源 title:标题标签。 body:体标签 <!DOCTYPE html>:html5中定义该文档是html文档 文本标签:和文本有关的标签 注释:<!-- 注释内容
阅读全文
摘要:JavaWeb: 使用Java语言开发基于互联网的项目 软件架构: C/S: Client/Server 客户端/服务器端 在用户本地有一个客户端程序,在远程有一个服务器端程序 如:QQ,迅雷... 优点: 用户体验好 缺点: 开发、安装,部署,维护 麻烦 B/S: Browser/Server 浏
阅读全文
摘要:1 package com.haifei.jdbctemplate; 2 3 import com.haifei.utils.JDBCUtils; 4 import org.springframework.jdbc.core.JdbcTemplate; 5 6 /* 7 Spring JDBC 8
阅读全文
摘要:1 package com.haifei.datasource.druid; 2 3 import com.alibaba.druid.pool.DruidDataSourceFactory; 4 5 import javax.sql.DataSource; 6 import java.io.IOE
阅读全文
摘要:1 package com.haifei.datasource.c3p0; 2 3 import com.mchange.v2.c3p0.ComboPooledDataSource; 4 5 import javax.sql.DataSource; 6 import java.sql.Connect
阅读全文
摘要:1 package com.yub4by.jdbc; 2 3 /* 4 JDBC控制事务 5 6 1. 事务:一个包含多个步骤的业务操作。如果这个业务操作被事务管理,则这多个步骤要么同时成功,要么同时失败。 7 2. 操作: 8 1. 开启事务 9 2. 提交事务 10 3. 回滚事务 11 3.
阅读全文
摘要:CREATE TABLE USER ( id INT PRIMARY KEY AUTO_INCREMENT, username VARCHAR (32), password VARCHAR (32) ); INSERT INTO USER VALUES(NULL, 'zhangsan', '123'
阅读全文
摘要:1 package com.yub4by.util; 2 3 import java.io.FileReader; 4 import java.io.IOException; 5 import java.net.URL; 6 import java.sql.Connection; 7 import
阅读全文
摘要:-- 部门表CREATE TABLE dept ( id INT PRIMARY KEY, -- 部门id dname VARCHAR (50), -- 部门名称 loc VARCHAR (50) -- 部门所在地 ); -- 添加4个部门 INSERT INTO dept (id, dname,
阅读全文
摘要:1 3. 详解JDBC涉及的各个对象 2 (1) DriverManager:驱动管理对象 3 <2> 注册驱动:告诉程序该使用哪一个数据库驱动jar 4 static void registerDriver(Driver driver) :注册与给定的驱动程序 DriverManager 。 5
阅读全文
摘要:1. 概念 Java DataBase Connectivity Java 数据库连接, Java语言操作数据库 JDBC本质:其实是官方(sun公司)定义的一套操作所有关系型数据库的规则,即接口。 各个数据库厂商去实现这套接口,提供数据库驱动jar包。 我们可以使用这套接口(JDBC)编程,真正执
阅读全文
摘要:
阅读全文
摘要:查询语法 select 列名列表 from 表名列表 where .... 准备sql # 创建部门表 CREATE TABLE dept( id INT PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(20) ); INSERT INTO dept (NAME)
阅读全文
摘要:#数据库的设计 ##1. 多表之间的关系 1. 分类: 1. 一对一(了解): * 如:人和身份证 * 分析:一个人只有一个身份证,一个身份证只能对应一个人 2. 一对多(多对一): * 如:部门和员工 * 分析:一个部门有多个员工,一个员工只能对应一个部门 3. 多对多: * 如:学生和课程 *
阅读全文
摘要:##约束 概念: 对表中的数据进行限定,保证数据的正确性、有效性和完整性。 分类: 主键约束:primary key 非空约束:not null 唯一约束:unique 外键约束:foreign key ##* 非空约束:not null,某一列的值不能为null 1. 创建表时添加约束 CREAT
阅读全文
摘要:排序查询 语法:order by 子句 order by 排序字段1 排序方式1 , 排序字段2 排序方式2... 排序方式: ASC:升序,默认的。 DESC:降序。 注意: 如果有多个排序条件,则当前边的条件值一样时,才会判断第二条件。 聚合函数:将一列数据作为一个整体,进行纵向的计算。 cou
阅读全文
摘要:##DDL:操作数据库、表 ###客户端图形化工具:SQLYog ##DML:增删改表中数据 ##DQL:查询表中的记录
阅读全文
摘要:安装mysql服务后,自带四个数据库,尽量不要动它们 其中后三个在数据目录下都有对应的文件夹,第一个为视图数据库没有物理文件夹
阅读全文
摘要:1 package com.yubaby.annotation.p3; 2 3 /* 4 * 案例:简单的测试框架 5 6 7 * 小结: 8 1. 以后大多数时候,我们会使用注解,而不是自定义注解 9 2. 注解给谁用? 10 1. 编译器 11 2. 给解析程序用 12 3. 注解不是程序的一部
阅读全文
摘要:1 package com.yubaby.annotation.p2; 2 3 /* 4 * 在程序使用(解析)注解:获取注解中定义的属性值 5 1. 获取注解定义的位置的对象 (Class,Method,Field) 6 2. 获取指定的注解 7 * getAnnotation(Class) 8
阅读全文
摘要:1 package com.yubaby.annotation; 2 3 import com.yubaby.domain.Person; 4 5 /* 6 * 自定义注解 7 * 8 * 格式: 9 元注解 10 public @interface 注解名称{ 11 属性列表; 12 } 13 1
阅读全文
摘要:1 package com.yubaby.annotation.p1; 2 3 /* 4 3 注解 5 6 * 概念:说明程序的。给计算机看的 7 * 注释:用文字描述程序的。给程序员看的 8 9 * 定义:注解(Annotation),也叫元数据。一种代码级别的说明。它是JDK1.5及以后版本引入
阅读全文
摘要:1 package com.yubaby.reflect; 2 3 import com.yubaby.domain.Person; 4 5 import java.io.IOException; 6 import java.io.InputStream; 7 import java.lang.re
阅读全文
摘要:1 package com.yubaby.reflect; 2 3 import com.yubaby.domain.Person; 4 5 import java.lang.reflect.Constructor; 6 import java.lang.reflect.Field; 7 impor
阅读全文
摘要:1 package com.yubaby.reflect; 2 3 import com.yubaby.domain.Person; 4 5 /* 6 2 反射:框架设计的灵魂 7 8 * 框架:半成品软件。可以在框架的基础上进行软件开发,简化编码 9 * 反射:将类的各个组成部分封装为其他对象,这
阅读全文
摘要:1 package com.yubaby.junit; 2 3 /** 4 * 计算器类 5 */ 6 public class Calculator { 7 8 /** 9 * 加法 10 * @param a 11 * @param b 12 * @return 13 */ 14 public
阅读全文
摘要:1 package day15.lesson3; 2 3 /* 4 3 模块化 5 6 3.1 模块化概述 7 8 Java语言随着这些年的发展已经成为了一门影响深远的编程语言,无数平台,系统都采用Java语言编写。 9 但是,伴随着发展,Java也越来越庞大,逐渐发展成为一门“臃肿” 的语言。 1
阅读全文
摘要:1 package day15.lesson2.p; 2 3 import java.lang.reflect.InvocationTargetException; 4 import java.lang.reflect.Method; 5 import java.util.ArrayList; 6
阅读全文
摘要:1 package day15.lesson2; 2 3 import java.lang.reflect.Constructor; 4 import java.lang.reflect.InvocationTargetException; 5 import java.lang.reflect.Me
阅读全文
摘要:1 package day15.lesson2; 2 3 import java.lang.reflect.Constructor; 4 import java.lang.reflect.Field; 5 import java.lang.reflect.InvocationTargetExcept
阅读全文
摘要:1 package day15.lesson2; 2 3 import java.lang.reflect.Constructor; 4 import java.lang.reflect.InvocationTargetException; 5 6 /* 7 2.3 反射获取构造方法并使用 8 9
阅读全文
摘要:1 package day15.lesson2; 2 3 /* 4 2 反射 5 6 2.1 反射概述 7 是指在运行时去获取一个类的变量和方法信息。然后通过获取到的信息来创建对象,调用方法的一种机制。 8 由于这种动态性,可以极大的增强程序的灵活性,程序不用在编译期就完成确定,在运行期仍然可以扩展
阅读全文
摘要:1 package day15.lesson1; 2 3 /* 4 1 类加载器 5 6 1.1 类加载 7 8 (1)类加载的描述 9 当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过 10 类的加载,类的连接,类的初始化这三个步骤来对类进行初始化。 11 如果不出现意外情况,JVM
阅读全文
摘要:1 package day14.lesson2; 2 3 import java.util.*; 4 import java.util.stream.Collectors; 5 import java.util.stream.Stream; 6 7 /* 8 2.6 Stream流的收集操作 9 1
阅读全文
摘要:1 package day14.lesson2; 2 3 import java.util.ArrayList; 4 import java.util.stream.Stream; 5 6 /* 7 2.5 Stream流案例 8 9 案例需求 10 现在有两个ArrayList集合,分别存储6名男
阅读全文
摘要:1 package day14.lesson2; 2 3 import java.util.ArrayList; 4 5 /* 6 2.4 Stream流的"终结操作"方法 7 8 终结操作的意思是,执行完此方法之后,Stream流将不能再执行其他操作 9 10 void forEach(Consu
阅读全文
摘要:1 package day14.lesson2; 2 3 import java.util.ArrayList; 4 import java.util.stream.Stream; 5 6 /* 7 2.3 Stream流的"中间操作"方法 8 9 中间操作的意思是,执行完此方法之后,Stream流
阅读全文
摘要:1 package day14.lesson2; 2 3 import java.util.ArrayList; 4 5 /* 6 2 Strem流 7 8 2.1 体验Stream流 9 10 案例需求 11 按照下面的要求完成集合的创建和遍历 12 创建一个集合,存储多个字符串元素 13 把集合
阅读全文
摘要:1 package day14.lesson1; 2 3 import java.util.function.Function; 4 5 /* 6 1.10 常用函数式接口之Function 7 8 Function<T,R>接口通常用于对参数进行处理,转换(处理逻辑由Lambda表达式实现),然后
阅读全文
摘要:1 package day14.lesson1; 2 3 import java.util.function.Predicate; 4 5 /* 6 1.8 常用函数式接口之Predicate 7 8 Predicate<T>接口通常用于判断参数是否满足指定的条件 9 10 boolean test
阅读全文
摘要:1 package day14.lesson1; 2 3 import java.util.function.Consumer; 4 5 /* 6 1.6 常用函数式接口之Consumer 7 8 Consumer接口 9 Consumer<T>接口也被称为消费型接口,它消费的数据的数据类型由泛型T
阅读全文
摘要:1 package day14.lesson1; 2 3 import java.util.function.Supplier; 4 5 /* 6 1.4 常用函数式接口之Supplier 7 8 JDK8在java.util.function包中预定义了大量函数式接口 9 重点学习四个:Suppl
阅读全文
摘要:1 package day14.lesson1; 2 3 /* 4 1 函数式接口 5 6 1.1 函数式接口概述 7 8 概念 9 有且仅有一个抽象方法的接口 10 java中的函数式编程体现就是Lambda表达式,所以函数式接口就是可以适用于Lambda使用的接口 11 只有确保接口中有且仅有一
阅读全文
摘要:1 package day13.lesson3.p3; 2 3 /* 4 3.6 Lambda表达式支持的方法引用:引用构造器 5 6 引用构造器,其实就是引用构造方法 7 8 格式 9 类名::new 10 范例 11 Student::new 12 13 练习描述 14 定义一个类(Studen
阅读全文
摘要:1 package day13.lesson3.p3; 2 3 /* 4 3.5 Lambda表达式支持的方法引用:引用类的实例方法 5 6 引用类的实例方法,其实就是引用类中的成员方法 7 8 格式 9 类名::成员方法 10 范例 11 String::substring 12 public S
阅读全文
摘要:1 package day13.lesson3.p3; 2 3 /* 4 3.4 Lambda表达式支持的方法引用:引用对象的实例方法 5 6 引用对象的实例方法,其实就引用类中的成员方法 7 8 格式 9 对象::成员方法 10 范例 11 "HelloWorld"::toUpperCase 12
阅读全文
摘要:1 package day13.lesson3.p3; 2 3 /* 4 3.3 Lambda表达式支持的方法引用:引用类方法 5 6 引用类方法,其实就是引用类的静态方法 7 8 格式 9 类名::静态方法 10 范例 11 Integer::parseInt 12 Integer类的方法:pub
阅读全文
摘要:1 package day13.lesson3.p1; 2 3 /* 4 3 方法引用 5 6 3.1 体验方法引用 7 8 方法引用的出现原因 9 在使用Lambda表达式的时候,我们实际上传递进去的代码就是一种解决方案:拿参数做操作 10 那么考虑一种情况: 11 如果我们在Lambda中所指定
阅读全文
摘要:1 package day13.lesson2; 2 3 /* 4 2.3 接口中私有方法 5 6 私有方法产生原因 7 Java 9中新增了带方法体的私有方法,这其实在Java 8中就埋下了伏笔:Java 8允许在接口中定义带方法体的默认方法和静态方法。 8 这样可能就会引发一个问题:当两个默认方
阅读全文
摘要:1 package day13.lesson2; 2 3 /* 4 2.2 接口中静态方法 5 格式 6 [public] static 返回值类型 方法名(参数列表) { } 7 范例 8 [public] static void show() { 9 } 10 注意事项 11 静态方法只能通过接
阅读全文
摘要:1 package day13.lesson2; 2 3 /* 4 2 接口组成更新 5 6 2.1 接口组成更新概述 7 8 常量 9 public static final 10 抽象方法 11 public abstract 12 默认方法(Java 8) 13 静态方法(Java 8) 14
阅读全文
摘要:1 package day13.lesson1.p3; 2 3 /* 4 1.8 Lambda表达式和匿名内部类的区别 5 6 所需类型不同 7 匿名内部类:可以是接口,也可以是抽象类,还可以是具体类 8 Lambda表达式:只能是接口 9 10 使用限制不同 11 如果接口中有且仅有一个抽象方法,
阅读全文
摘要:1 package day13.lesson1.p2; 2 3 /* 4 1.7 Lambda表达式的注意事项 5 6 使用Lambda必须要有接口,并且要求接口中有且仅有一个抽象方法 7 8 必须有上下文环境,才能推导出Lambda对应的接口 9 根据局部变量的赋值得知Lambda对应的接口 10
阅读全文
摘要:1 package day13.lesson1.p1; 2 3 /* 4 1.6 Lambda表达式的省略模式 5 6 参数类型可以省略。但是有多个参数的情况下,不能只省略一个 7 如果参数有且仅有一个,那么小括号可以省略 8 如果代码块的语句只有一条,可以省略大括号和分号,和return关键字 9
阅读全文
摘要:1 package day13.lesson1; 2 3 /* 4 1.5 Lambda表达式练习3 5 6 练习描述 7 有参有返回值抽象方法的练习 8 9 操作步骤 10 定义一个接口(Addable),里面定义一个抽象方法:int add(int x,int y); 11 定义一个测试类(Ad
阅读全文
摘要:1 package day13.lesson1; 2 3 /* 4 1.4 Lambda表达式练习2 5 6 练习描述 7 有参无返回值抽象方法的练习 8 9 操作步骤 10 定义一个接口(Flyable),里面定义一个抽象方法:void fly(String s); 11 定义一个测试类(Flya
阅读全文
摘要:1 package day13.lesson1; 2 3 /* 4 1.3 Lambda表达式练习1 5 6 练习描述 7 无参无返回值抽象方法的练习 8 9 操作步骤 10 定义一个接口(Eatable),里面定义一个抽象方法:void eat(); 11 定义一个测试类(EatableDemo)
阅读全文
摘要:1 package day13.lesson1; 2 3 /* 4 1 Lambda表达式 5 6 1.1 体验Lambda表达式 7 8 案例需求 9 启动一个线程,在控制台输出一句话:多线程程序启动了 10 11 实现方式一 12 定义一个类MyRunnable实现Runnable接口,重写ru
阅读全文
摘要:1 package day12.lesson3.p6; 2 3 import java.io.*; 4 import java.net.Socket; 5 6 /* 7 3.8 TCP通信程序练习6 8 9 案例需求 10 客户端:数据来自于文本文件,接收服务器反馈 11 服务器:接收到的数据写入文
阅读全文
摘要:package day12.lesson3.p5; import java.io.*; import java.net.Socket; /* 3.7 TCP通信程序练习5 案例需求 客户端:数据来自于文本文件,接收服务器反馈 服务器:接收到的数据写入文本文件,给出反馈 案例分析 创建客户端对象,创建
阅读全文
摘要:1 package day12.lesson3.p4; 2 3 import java.io.*; 4 import java.net.Socket; 5 6 /* 7 3.6 TCP通信程序练习4 8 9 案例需求 10 客户端:数据来自于文本文件 11 服务器:接收到的数据写入文本文件 12 本
阅读全文
摘要:1 package day12.lesson3.p3; 2 3 import java.io.*; 4 import java.net.Socket; 5 6 /* 7 3.5 TCP通信程序练习3 8 9 案例需求 10 客户端:数据来自于键盘录入,直到输入的数据是886,发送数据结束 11 服务
阅读全文
摘要:1 package day12.lesson3.p2; 2 3 import java.io.*; 4 import java.net.Socket; 5 6 /* 7 3.4 TCP通信程序练习2 8 9 案例需求 10 客户端:数据来自于键盘录入, 直到输入的数据是886,发送数据结束 11 服
阅读全文
摘要:1 package day12.lesson3.p1; 2 3 import java.io.IOException; 4 import java.io.InputStream; 5 import java.io.OutputStream; 6 import java.net.Socket; 7 8
阅读全文
摘要:1 package day12.lesson3; 2 3 import java.io.IOException; 4 import java.io.OutputStream; 5 import java.net.InetAddress; 6 import java.net.Socket; 7 8 /
阅读全文
摘要:1 package day12.lesson2.p1; 2 3 import java.io.BufferedReader; 4 import java.io.FileReader; 5 import java.io.IOException; 6 import java.io.InputStream
阅读全文
摘要:1 package day12.lesson2; 2 3 import java.io.IOException; 4 import java.net.*; 5 6 /* 7 2 UDP通信程序 8 9 2.1 UDP发送数据 10 11 Java中的UDP通信 12 UDP协议是一种不可靠的网络协议
阅读全文
摘要:1 package day12.lesson1; 2 3 import java.net.InetAddress; 4 import java.net.UnknownHostException; 5 6 /* 7 1 网络编程入门 8 9 1.1 网络编程概述 10 11 计算机网络 12 是指将地
阅读全文
摘要:1 package day11.lesson3; 2 3 /* 4 3 生产者消费者 5 6 3.1 生产者消费者模式 7 8 生产者消费者模式是一个十分经典的多线程协作的模式,弄懂生产者消费者问题能够让我们对多线程编程的理解更加深刻。 9 所谓生产者消费者问题,实际上主要是包含了两类线程: 10
阅读全文
摘要:1 package day11.lesson2; 2 3 import java.util.*; 4 import java.util.concurrent.locks.Lock; 5 import java.util.concurrent.locks.ReentrantLock; 6 7 /* 8
阅读全文
摘要:1 package day11.lesson2; 2 3 /* 4 2.3 同步代码块解决数据安全问题(卖票案例问题解决) 5 6 卖票案例为啥会出现问题?(多线程程序出现安全问题的标准条件) 7 是多线程环境 8 有共享数据 9 有多条语句操作共享数据 10 11 如何解决多线程安全问题呢? 12
阅读全文
摘要:1 package day11.lesson2; 2 3 /* 4 2 线程同步 5 6 2.1 案例-卖票 7 8 需求 9 某电影院目前正在上映国产大片,共有100张票,而它有3个窗口卖票,请设计一个程序模拟该电影院卖票 10 11 步骤 12 定义一个类SellTicket实现Runnable
阅读全文
摘要:1 package day11.lesson1.p5; 2 3 /* 4 1.6 线程的生命周期 5 线程一共有五种状态,线程在各种状态之间转换 6 见五态图 7 8 1.7 实现多线程方式2:实现Runnable接口 9 10 Thread构造方法 11 Thread(Runnable targe
阅读全文
摘要:1 package day11.lesson1.p4; 2 3 /* 4 1.5 线程控制 5 6 static void sleep(long millis) 使当前正在执行的线程停留(暂停执行)指定的毫秒数 7 void join() 等待这个线程死亡 8 void setDaemon(bool
阅读全文
摘要:1 package day11.lesson1.p3; 2 3 /* 4 1.4 线程优先级 5 6 1、线程调度 7 (1)两种调度方式 8 分时调度模型:所有线程轮流使用 CPU 的使用权,平均分配每个线程占用 CPU 的时间片 9 抢占式调度模型:优先让优先级高的线程使用 CPU,如果线程的优
阅读全文
摘要:1 package day11.lesson1.p2; 2 3 /* 4 1.3 设置和获取线程名称 5 6 Thread类中设置和获取线程名称: 7 void setName(String name) 将此线程的名称更改为等于参数name 8 String getName() 返回此线程的名称 9
阅读全文
摘要:1 package day11.lesson1.p1; 2 3 /* 4 1 实现多线程 5 6 1.1 进程和线程 7 8 进程 9 是正在运行的程序 10 是系统进行资源分配和调用的独立单位 11 每一个进程都有它自己的内存空间和系统资源 12 线程 13 是进程中的单个顺序控制流,是一条执行路
阅读全文
摘要:1 package day10.lesson3; 2 3 import java.io.FileReader; 4 import java.io.FileWriter; 5 import java.io.IOException; 6 import java.util.Properties; 7 8
阅读全文
摘要:1 package day10.lesson3; 2 3 import java.io.FileReader; 4 import java.io.FileWriter; 5 import java.io.IOException; 6 import java.util.Properties; 7 8
阅读全文
摘要:1 package day10.lesson3; 2 3 import java.util.Properties; 4 import java.util.Set; 5 6 /* 7 3 Properties集合 8 9 3.1 Properties作为Map集合的使用 10 11 Propertie
阅读全文
摘要:1 package day10.lesson2.p2; 2 3 import java.io.*; 4 5 /* 6 2.8 对象序列化/反序列化的三个问题(serialVersionUID&transient) 7 8 serialVersionUID 9 1、用对象序列化流序列化了一个对象后,假
阅读全文
摘要:1 package day10.lesson2.p1; 2 3 import java.io.FileOutputStream; 4 import java.io.IOException; 5 import java.io.ObjectOutputStream; 6 7 /* 8 2.6 对象序列化
阅读全文
摘要:1 package day10.lesson2; 2 3 import java.io.*; 4 5 /* 6 2.5 案例-复制Java文件(打印流改进版) 7 */ 8 public class CopyJavaDemo { 9 public static void main(String[]
阅读全文
摘要:1 package day10.lesson2; 2 3 import java.io.FileWriter; 4 import java.io.IOException; 5 import java.io.PrintStream; 6 import java.io.PrintWriter; 7 8
阅读全文
摘要:1 package day10.lesson2; 2 3 import java.io.*; 4 import java.util.Scanner; 5 6 /* 7 2 IO特殊操作流 8 9 2.1 标准输入流 10 11 System类中有两个静态的成员变量 12 public static
阅读全文
摘要:1 package day10.lesson1.p4; 2 3 import java.io.*; 4 5 /* 6 1.4 复制文件的异常处理 7 */ 8 public class CopyFileDemo { 9 public static void main(String[] args) {
阅读全文
摘要:1 package day10.lesson1.p3; 2 3 import java.io.*; 4 5 /* 6 1.3 案例-复制多级文件夹 7 8 1. 创建数据源File对象 9 2. 创建目的地File对象 10 3. 写方法实现文件夹的复制,参数为数据源File对象和目的地File对象
阅读全文
摘要:1 package day10.lesson1.p2; 2 3 import java.io.*; 4 5 6 /* 7 1.2 案例-复制单级文件夹 8 9 源目录:source 10 目的地:copy 11 12 1. 创建数据源目录File对象 13 2. 获取数据源目录File对象的名称 1
阅读全文
摘要:1 package day10.lesson1.p1; 2 3 import java.io.BufferedWriter; 4 import java.io.FileWriter; 5 import java.io.IOException; 6 import java.util.Comparato
阅读全文
摘要:1 package day9.lesson3; 2 3 import java.io.BufferedWriter; 4 import java.io.FileWriter; 5 import java.io.IOException; 6 import java.util.ArrayList; 7
阅读全文
摘要:1 package day9.lesson3; 2 3 import java.io.BufferedReader; 4 import java.io.FileReader; 5 import java.io.IOException; 6 import java.util.ArrayList; 7
阅读全文
摘要:1 package day9.lesson3; 2 3 import java.io.BufferedWriter; 4 import java.io.FileWriter; 5 import java.io.IOException; 6 import java.util.ArrayList; 7
阅读全文
摘要:1 package day9.lesson2; 2 3 import java.io.*; 4 5 /* 6 2.10 案例-字符缓冲流复制Java文件 7 */ 8 public class CopyJavaDemo03 { 9 public static void main(String[] a
阅读全文
摘要:1 package day9.lesson2; 2 3 import java.io.*; 4 5 /* 6 2.9 字符缓冲流 7 8 BufferedWriter 9 字符缓冲输入流 10 将文本写入字符输出流,缓冲字符,以提供单个字符,数组和字符串的高效写入, 11 可以指定缓冲区大小,或者可
阅读全文
摘要:1 package day9.lesson2; 2 3 import java.io.*; 4 5 /* 6 2.7 案例-字符流复制Java文件 7 根据数据源创建字符输入流对象 8 根据目的地创建字符输出流对象 9 读写数据,复制文件 10 释放资源 11 */ 12 public class
阅读全文
摘要:1 package day9.lesson2; 2 3 import java.io.FileOutputStream; 4 import java.io.IOException; 5 import java.io.OutputStreamWriter; 6 7 /* 8 2.5 字符流写数据的5种
阅读全文
摘要:1 package day9.lesson2; 2 3 import java.io.UnsupportedEncodingException; 4 import java.util.Arrays; 5 6 /* 7 2.3 字符串中的编码解码问题 8 9 byte[] getBytes() 使用平
阅读全文
摘要:1 package day9.lesson2; 2 3 import java.io.FileInputStream; 4 import java.io.IOException; 5 import java.util.Arrays; 6 7 /* 8 2 字符流 9 10 需求:字节流读取文本文件数
阅读全文
摘要:1 package day9.lesson1; 2 3 import java.io.*; 4 5 /* 6 1.2 案例-字节流复制视频 7 8 根据数据源创建字节输入流对象 9 根据目的地创建字节输出流对象 10 读写数据,复制视频 11 释放资源 12 13 四种方式实现赋值视频,记录每种方式
阅读全文
摘要:1 package day9.lesson1; 2 3 import java.io.*; 4 5 /* 6 1 字节缓冲流 7 8 1.1 字节缓冲流构造方法 9 10 BufferOutputStream:该类实现缓冲输出流。 11 通过设置这样的输出流,应用程序可以向底层输出流写入字节,而不必
阅读全文
摘要:1 package day8.lesson3; 2 3 import java.io.File; 4 import java.io.FileInputStream; 5 import java.io.FileOutputStream; 6 import java.io.IOException; 7
阅读全文
摘要:1 package day8.lesson3; 2 3 import java.io.FileInputStream; 4 import java.io.FileNotFoundException; 5 import java.io.FileOutputStream; 6 import java.i
阅读全文
摘要:1 package day8.lesson3; 2 3 import java.io.FileOutputStream; 4 import java.io.IOException; 5 6 /* 7 3.5 字节流写数据加异常处理 8 9 try-catch-finally: 10 try{ 11
阅读全文
摘要:1 package day8.lesson3; 2 3 import java.io.FileOutputStream; 4 import java.io.IOException; 5 6 /* 7 3.4 字节流写数据的两个小问题 8 9 字节流写数据如何实现换行? 10 windows:\r\n
阅读全文
摘要:1 package day8.lesson3; 2 3 import java.io.File; 4 import java.io.FileNotFoundException; 5 import java.io.FileOutputStream; 6 import java.io.IOExcepti
阅读全文
摘要:1 package day8.lesson3; 2 3 import java.io.FileNotFoundException; //是IOException的子类 4 import java.io.FileOutputStream; 5 import java.io.IOException; 6
阅读全文
摘要:1 package day8.lesson2; 2 3 /* 4 2 递归 5 6 2.1 递归 7 8 递归概述 9 以编程的角度来看,递归指的是方法定义中调用方法本身的现象 10 11 递归解决问题的思路 12 把一个复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解 13 递归策略只需
阅读全文
摘要:1 package day8.lesson1; 2 3 import java.io.File; 4 5 /* 6 1 File类 7 8 1.1 File类概述和构造方法 9 10 File类介绍 11 它是文件和目录路径名的抽象表示 12 文件和目录是可以通过File封装成对象的 13 对于Fi
阅读全文
摘要:1 package day7.lesson3; 2 3 import java.util.*; 4 5 /* 6 3.1 案例-模拟斗地主(升级版本) 7 需求 8 通过程序实现斗地主过程中的洗牌,发牌和看牌 9 +给玩家顺排,即对牌进行排序 10 */ 11 public class PokerD
阅读全文
摘要:1 package day7.lesson3; 2 3 import java.util.ArrayList; 4 import java.util.Collections; 5 6 /* 7 3 斗地主案例 8 9 3.1 案例-模拟斗地主(普通版本) 10 需求 11 通过程序实现斗地主过程中的
阅读全文
摘要:1 package day7.lesson2; 2 3 import java.util.ArrayList; 4 import java.util.Collections; 5 import java.util.Comparator; 6 7 /* 8 2.2 案例-ArrayList集合存储学生
阅读全文
摘要:1 package day7.lesson2; 2 3 import java.util.ArrayList; 4 import java.util.Collections; 5 import java.util.List; 6 7 /* 8 2 集合工具类Collections 9 10 2.1
阅读全文
摘要:1 package day7.lesson1.anli5; 2 3 import java.util.*; 4 5 /* 6 1.5.5 案例-统计字符串中每个字符出现的次数 7 键盘录入一个字符串,要求统计字符串中每个字符串出现的次数。 8 举例:键盘录入“aababcabcdabcde” 在控制
阅读全文
摘要:1 package day7.lesson1.anli3; 2 3 import java.util.ArrayList; 4 import java.util.HashMap; 5 import java.util.Set; 6 7 /* 8 1.5.3 案例-集合嵌套之ArrayList嵌套Ha
阅读全文
摘要:1 package day7.lesson1.anli1; 2 3 import java.util.HashMap; 4 import java.util.Map; 5 import java.util.Set; 6 7 /* 8 1.5 Map集合的案例 9 10 1.5.1 案例-HashMa
阅读全文
摘要:1 package day7.lesson1; 2 3 import java.util.HashMap; 4 import java.util.Map; 5 6 /* 7 1 Map 8 9 1.1 Map集合的特点 10 11 interface Map<K,V> K:键的类型;V:值的类型 1
阅读全文
摘要:1 package day6.lesson4; 2 3 /* 4 4 可变参数 5 6 4.1 可变参数介绍 7 8 可变参数又称参数个数可变,用作方法的形参出现,那么方法参数个数就是可变的了 9 格式:修饰符 返回值类型 方法名(数据类型… 变量名) { } 10 注意:这里的变量其实是一个数组;
阅读全文
摘要:1 package day6.lesson3.p5; 2 3 import java.util.ArrayList; 4 import java.util.List; 5 6 /* 7 3.5 类型通配符 8 9 为了表示各种泛型List的父类,可以使用类型通配符 10 类型通配符:<?> 11 L
阅读全文
摘要:1 package day6.lesson3.p4; 2 3 /* 4 3.4 泛型接口 5 6 格式: 7 修饰符 interface 接口名<类型> { } 8 9 */ 10 public class GenericDemo { 11 public static void main(Strin
阅读全文
摘要:1 package day6.lesson3.p3; 2 3 /* 4 3.3 泛型方法 5 6 格式: 7 修饰符 <类型> 返回值类型 方法名(类型 变量名) { } 8 9 */ 10 public class GenericDemo { 11 public static void main(
阅读全文
摘要:1 package day6.lesson3.p2; 2 3 /* 4 3.2 泛型类 5 6 格式: 7 修饰符 class 类名<类型> { } 8 9 */ 10 public class GenericDemo { 11 public static void main(String[] ar
阅读全文
摘要:1 package day6.lesson3.p1; 2 3 import java.util.ArrayList; 4 import java.util.Collection; 5 import java.util.Iterator; 6 7 /* 8 3 泛型 9 10 3.1 泛型概述 11
阅读全文
摘要:1 package day6.lesson2.anli2; 2 3 import java.util.HashSet; 4 import java.util.Random; 5 import java.util.Set; 6 import java.util.TreeSet; 7 8 /* 9 2.
阅读全文
摘要:1 package day6.lesson2.anli1; 2 3 import java.util.Comparator; 4 import java.util.TreeSet; 5 6 /* 7 2.4 案例-成绩排序 8 9 用TreeSet集合存储多个学生信息(姓名,语文成绩,数学成绩),并
阅读全文
摘要:1 package day6.lesson2; 2 3 import java.util.Comparator; 4 import java.util.TreeSet; 5 6 /* 7 2.3 比较器排序Comparator的使用 8 9 案例需求 10 存储学生对象并遍历,创建TreeSet集合
阅读全文
摘要:1 package day6.lesson2; 2 3 import java.util.TreeSet; 4 5 /* 6 2.2 自然排序Comparable的使用 7 8 案例: 9 存储学生对象并遍历,创建TreeSet集合使用无参构造方法 10 要求: 11 按照年龄从小到大排序,年龄相同
阅读全文
摘要:1 package day6.lesson2; 2 3 import java.util.Iterator; 4 import java.util.TreeSet; 5 6 /* 7 2 Set集合排序 8 9 2.1 TreeSet集合特点 10 元素有序,可以按照一定的规则进行排序,具体排序方式
阅读全文