自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JAVAWEB复习知识十一:列表查询(三层架构的使用)

需求:用户信息的CRUD操作设计:1.技术选型:Servlet+JSP+Mysql+JDBCTemplate+Druid+BeanUtils+tomcat2.数据库设计3.开发:1.环境搭建1.创建数据库环境2.创建项目,导入需要的jar包2.编码4.测试5.部署运维...

2020-10-26 18:03:42 372

原创 JAVAWEB复习知识十:记住上一次访问时间(cookie的使用)

package cn.itcast.CookieDemo1;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.Cookie;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.h

2020-10-25 11:17:23 170

原创 JAVAWEB复习知识九:文件下载

文件下载需求:1.页面显示超链接2.点击超链接后弹出下载提示框3.完成图片文件分析:1.超链接指向的资源如果能够被浏览器解析,则在浏览器中展示,如果不能解析,则弹出下载提示2.任何资源都必须弹出下载提示框3.使用响应头设置资源的打开方式*content-disposition:attachment;filename-xxx步骤:1.定义页面。编辑超链接href属性,指向Servlet,传递资源名称filename。2.定义Servlet1.获取文件名称2.使用字节输入流加载文件进内

2020-10-23 16:39:28 156

原创 JAVAWEB复习知识八:切换验证码

1.checkCodeServlet类package cn.itcast.Servlet;import javax.imageio.ImageIO;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import jav

2020-10-23 15:25:48 130

原创 JAVAWEB复习知识七:用户登录案例(Request请求、Dao、JDBC连接综合)

一、基本步骤 1.编写login.html登录页面 2.使用Druid数据库连接技术。操作mysql,数据库中的user表。 3.使用JdbcTemplate技术封装JDBC 4.登录成功跳转到SuccessServlet展示:登录成功!用户名,欢迎您 5登录失败跳转到FailServlet展示:登录失败,用户名或者密码错误。二、代码实现1.user类package cn.itcast.domain;/** * 用户的实体类 */public class User {

2020-10-23 10:39:14 172

原创 JAVAWEB复习知识六:根据Bootstrap框架做网站首页

案例:旅游网站首页几个要点:1、利用class=“row”属性进行分行2、利用标签进行分块3、若最外层的div可以分为12个格子,可以两块div,则第一块div占4个格子,第二个div占8个格子;且第二个div分为两行,则每行又可分为12个格子,每张图片可以占3个格子.<!DOCTYPE html><html lang="zh-CN"><head> <meta charset="utf-8"> <meta http-equi

2020-10-16 16:24:45 329

原创 JAVAWEB复习知识五:JAVASCRIPT案例-99乘法表、电灯开关、轮播图、自动跳转首页、动态表格、表格全选、表单检验

一、99乘法表<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>99乘法表</title> <style> td{ border: 1px solid; } </style> <script> doc

2020-10-16 10:24:19 205

原创 JAVAWEB复习知识四:CSS与HTML页面的结合

案例:注册页面<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <style> *{ margin: 0px; padding: 0px; box-sizing: border-box;

2020-10-14 15:20:24 169

原创 JAVAWEB知识复习三:html页面的应用

案例:旅游项目首页<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>黑马旅游网</title></head><body> <table width="100%" align="center"> <!--第一行-->

2020-10-14 10:25:47 109

原创 JavaWeb复习知识二:JDBC高级应用

一、JDBC连接池基本使用C3P01.导入三个jar包2.导入配置文件(必须放到src根目录下)3.修改配置文件4.创建JAVA文件4.1创建数据库连接池对象4.2获取连接4.3打印package cn.itcast.test01.c3p0;import com.mchange.v2.c3p0.ComboPooledDataSource;import javax.sql.DataSource;import java.sql.Connection;import java.sql.S

2020-10-13 16:35:04 94

原创 JavaWeb复习知识一:JDBC基础

一、 Jdbc快速入门(七个个基本步骤)package cn.itcast.jdbc;import java.util.*;import java.sql.*;public class JdbcDemo1 { public static void main(String[] args) throws Exception{ //1.抛出类找不到的异常,注册数据库驱动 Class.forName("com.mysql.jdbc.Driver");

2020-10-12 16:43:33 106

原创 Java线程练习一:继承Thread类、实现Runnable接口

一、继承Thread类/*创建一个线程有两种方式:继承Thread和实现Runnable接口。*/ class ThreadDemo extends Thread //1.创建Thread类的子类{ private Thread t; private String threadName; public ThreadDemo(String name) { threadName = name; System.out.println("创建线程名称,名称为:"+threadName)

2020-08-22 10:44:18 347

原创 小白学Java核心知识(IO流)十七:管道流(结合多线程)

import java.io.*;class Read implements Runnable{ private PipedInputStream in; Read(PipedInputStream in) { this.in = in; } public void run() { try { byte[] buf = new byte[1024]; System.out.println("读取前。。没有数据阻塞"); int len = in.read(.

2020-08-21 21:04:53 101

原创 小白学Java核心知识(IO流)十六:对象的序列化

两个文件:ObjectStreamDemo与personObjectStreamDemo.javaimport java.io.*;class ObjectStreamDemo { public static void main(String[] args) throws Exception { //writeObj(); readObj(); } public static void readObj()throws Exception { ObjectInputStrea

2020-08-21 20:46:25 114

原创 小白学Java核心知识(IO流)十五:Properties的应用、练习、合并流与切割流

1、Properties的应用/*Properties是hashtable的子类。也就是说它具备map集合的特点。而且它里面存储的键值对都是字符串。是集合中和IO技术相结合的集合容器。该对象的特点:可以用于键值对形式的配置文件。那么在加载数据时,需要数据有固定格式:键=值。练习:限制程序运行次数。当运行次数到达5次时,给出,请您注册的提示。并不再让该程序执行。*/import java.io.*;import java.util.*;class Properties

2020-08-21 20:43:02 111

原创 小白学Java核心知识(IO流)十四:删除文件目录、创建Java文件列表

1、删除文件目录/*删除一个带内容的目录。删除原理:在window中,删除目录从里面往外删除的。既然是从里往外删除。就需要用到递归。*/import java.io.*;class RemoveDir{ public static void main(String[] args) { File dir = new File("d:\\testdir"); removeDir(dir); } public static void removeDir(F

2020-08-21 09:49:13 126

原创 小白学Java核心知识(IO流)十三:File文件基本的处理、文件列表、递归(带层次)

import java.io.*;/*File类常见方法:1,创建。 boolean createNewFile():在指定位置创建文件,如果该文件已经存在,则不创建,返回false。 和输出流不一样,输出流对象一建立创建文件。而且文件已经存在,会覆盖。 boolean mkdir():创建文件夹。 boolean mkdirs():创建多级文件夹。2,删除。 boolean delete():删除失败返回false。如果文件正在被使用,则删除不了返回falsel。 voi

2020-08-20 22:30:30 127

原创 小白学Java核心知识(IO流)十二:异常的日志信息、系统信息

1、异常的日志信息(可以选择log4j工具)import java.io.*;import java.util.*;import java.text.*;class ExceptionInfo{ public static void main(String[] args)throws IOException { try { int[] arr = new int[2]; System.out.println(arr[3]); } catch (Exceptio

2020-08-18 23:01:26 68

原创 小白学Java核心知识(IO流)十一:流操作规律、转换流的应用方式、改变标准输入输出设备

import java.io.*;/*1,源:键盘录入。目的:控制台。2,需求:想把键盘录入的数据存储到一个文件中。源:键盘。目的:文件。3,需求:想要将一个文件的数据打印在控制台上。源:文件。目的:控制台。流操作的基本规律:最痛苦的就是流对象有很多,不知道该用哪一个。通过三个明确来完成。1,明确源和目的。 源:输入流。InputStream Reader 目的:输出流。OutputStream Writer。2,操作的数据是否是纯文本。 是:字符流。.

2020-08-18 21:47:00 97

转载 小白学Java核心知识(IO流)十:InputStreamReader与OutputStreamWriter之间的对比

https://www.cnblogs.com/niujifei/p/11497666.htmlhttps://www.cnblogs.com/niujifei/p/11497692.html

2020-08-18 17:29:28 71

原创 小白学Java核心知识(IO流)九:读取键盘录入、读取转换流操作

1、读取键盘录入/*读取键盘录入。System.out:对应的是标准输出设备,控制台。System.in:对应的标准输入设备:键盘。需求:通过键盘录入数据。当录入一行数据后,就将该行数据进行打印。如果录入的数据是over,那么停止录入。*/import java.io.*;class ReadIn{ public static void main(String[] args) throws IOException { InputStream in = System.

2020-08-18 16:44:31 176

原创 小白学Java核心知识(IO流)八:拷贝图片、通过缓冲区拷贝MP3文件、自定义缓冲区

1、拷贝图片/*复制一个图片思路:1,用字节读取流对象和图片关联。2,用字节写入流对象创建一个图片文件。用于存储获取到的图片数据。3,通过循环读写,完成数据的存储。4,关闭资源。*/import java.io.*;class CopyPic{ public static void main(String[] args) { FileOutputStream fos = null; FileInputStream fis = null; try { f

2020-08-18 15:13:40 199

原创 小白学Java核心知识(IO流)七:自定义装饰类、行号LineNumberReader类、自定义行号LineNumber类

1、自定义装饰类需要注意:一:Reader代替Filereader装饰一组类.缓冲区MyBufferedReader接收Reader对象r,加强r的方法.二:覆盖Reader类中的抽象方法。因为 MyBufferedReader缓冲区继承了Reader类,所以要覆盖Reader的抽象方法,不然会编译失败。三:String line = null;//line作为一个变量容器,记录住读取的数据内容。/*明白了BufferedReader类中特有方法readLine的原理后,可以自定义一个类中包含

2020-08-17 22:55:54 717

原创 小白学Java核心知识(IO流)六:装饰设计模式、装饰与继承的区别

1、装饰设计模式/*装饰设计模式:当想要对已有的对象进行功能增强时,可以定义类,将已有对象传入,基于已有的功能,并提供加强功能。那么自定义的该类称为装饰类。装饰类通常会通过构造方法接收被装饰的对象。并基于被装饰的对象的功能,提供更强的功能。*/class Person{ public void chifan() { System.out.println("吃饭"); }}class SuperPerson { private Person p ; SuperP

2020-08-17 19:31:45 102

原创 小白学Java核心知识(IO流)五:通过缓冲区复制文本文件、readline原理图、自定义缓冲区

1、通过缓冲区复制文本文件/*通过缓冲区复制一个.java文件。*/import java.io.*;class CopyTextByBuf{ public static void main(String[] args) { BufferedReader bufr = null; BufferedWriter bufw = null; try { bufr = new BufferedReader(new FileReader("BufferedWriter

2020-08-17 18:56:14 166

原创 小白学Java核心知识(IO流)四:BufferedWriter、BufferedReader

1、BufferedWriter/*缓冲区的出现是为了提高流的操作效率而出现的。所以在创建缓冲区之前,必须要先有流对象。该缓冲区中提供了一个跨平台的换行符。newLine();*/import java.io.*;class BufferedWriterDemo{ public static void main(String[] args) throws IOException { //创建一个字符写入流对象。 FileWriter fw = new FileWr

2020-08-16 22:14:11 84

原创 小白学Java核心知识(IO流)三:文件的续写、文本文件读取方式及练习、拷贝文本文件

1、文件的续写/*演示对已有文件的数据续写。*/import java.io.*;class FileWriterDemo3{ public static void main(String[] args) throws IOException { //传递一个true参数,代表不覆盖已有的文件。并在已有文件的末尾处进行数据续写。 FileWriter fw = new FileWriter("demo.txt",true); fw.write("nihao\r\nxiexi

2020-08-16 21:12:16 137

原创 小白学Java核心知识(IO流)二:IO异常处理

需要注意:一、FileWriter fw = null;建立引用,让fw成为全局变量。否则若FileWriter fw = new FileWriter(“demo.txt”);在try代码块内,则fw变量只在try代码块内有效,只是一个局部变量。二、fw.close(); 也会发生异常需要单独try catch。三、对于fw = new FileWriter(“k:\demo.txt”);初始化过程,用try语句会抛出异常,一旦抛出异常就代表对象初始化失败,对象就不存在,只能为null。对于引用为

2020-08-16 16:38:29 169

原创 小白学Java核心知识(IO流)一:FileWrite的应用

/*字符流和字节流:字节流两个基类:InputStream OutputStream字符流两个基类:Reader Writer先学习一下字符流的特点。既然IO流是用于操作数据的,那么数据的最常见体现形式是:文件。那么先以操作文件为主来演示。需求:在硬盘上,创建一个文件并写入一些文字数据。找到一个专门用于操作文件的Writer子类对象。FileWriter。 后缀名是父类名。 前缀名是该流对象的功能。*/import java.io.*;class Fi

2020-08-16 16:23:54 111

原创 小白学Java核心知识(其他对象)三:Date的应用、Calender的应用、Math-Random的应用

1、Date的应用import java.util.*;import java.text.*;class DateDemo { public static void main(String[] args) { Date d = new Date(); System.out.println(d);//打印的时间看不懂,希望有些格式。 //将模式封装到SimpleDateformat对象中。 SimpleDateFormat sdf = new SimpleDateFormat

2020-08-16 16:22:26 81

原创 小白学java核心知识(其他对象)二:Runtime类以及exec()方法的应用

/*Runtime对象该类并没有提供构造函数。说明不可以new对象。那么会直接想到该类中的方法都是静态的。发现该类中还有非静态方法。说明该类肯定会提供了方法获取本类对象。而且该方法是静态的,并返回值类型是本类类型。由这个特点可以看出该类使用了单例设计模式完成。该方式是static Runtime getRuntime();*/class RuntimeDemo{ public static void main(String[] args) throws Exception

2020-08-16 16:17:07 127

原创 小白学Java核心知识(其他对象)一:System以及Properties的应用

/*System:类中的方法和属性都是静态的。out:标准输出,默认是控制台。in:标准输入,默认是键盘。描述系统一些信息。获取系统属性信息:Properties getProperties();*/import java.util.*;class SystemDemo { public static void main(String[] args) { Properties prop = System.getProperties(); //因为Properti

2020-08-14 21:27:10 95

原创 小白学Java核心知识(集合框架)十二:扩展知识高级for循环、静态导入、可变参数、binarysearch、synlist、array、reverse、reverseorder等

1、collections/*集合框架的工具类。Collections:集合框架的工具类。里面定义的都是静态方法。Collections和Collection有什么区别?Collection是集合框架中的一个顶层接口,它里面定义了单列集合的共性方法。 它有两个常用的子接口, List:对元素都有定义索引。有序的。可以重复元素。 Set:不可以重复元素。无序。Collections是集合框架中的一个工具类。该类中的方法都是静态的 提供的方法中有可以对list集合进行排序,二分查

2020-08-14 19:32:50 99

原创 小白学Java核心知识(集合框架)十一:一对多映射关系练习、利用List集合解决一对多映射关系

/*map扩展知识。map集合被使用是因为具备映射关系。"yureban" Student("01" "zhangsan");"yureban" Student("02" "lisi");"jiuyeban" "01" "wangwu";"jiuyeban" "02" "zhaoliu";一个学校有多个教室。每一个教室都有名称。*/import java.util.*;class Student{ private String id; private Strin

2020-08-13 23:02:55 229

原创 小白学Java核心知识(集合框架)十: TreeMap练习-字母出现的次数

/*练习:"sdfgzxcvasdfxcvdf"获取该字符串中的字母出现的次数。希望打印结果:a(1)c(2).....通过结果发现,每一个字母都有对应的次数。说明字母和次数之间都有映射关系。注意了,当发现有映射关系时,可以选择map集合。因为map集合中存放就是映射关系。什么使用map集合呢?当数据之间存在这映射关系时,就要先想map集合。思路:1,将字符串转换成字符数组。因为要对每一个字母进行操作。2,定义一个map集合,因为打印结果的字母有顺序,所以使用treem

2020-08-13 22:20:53 226

原创 小白学java核心知识(集合框架)九:Map子类对象的特点、keyset、entryset、Map练习、TreeMap练习

1、Map子类对象的特点/*Map集合:该集合存储键值对。一对一对往里存。而且要保证键的唯一性。 1,添加。 put(K key, V value) putAll(Map<? extends K,? extends V> m) 2,删除。 clear() remove(Object key) 3,判断。 containsValue(Object value) containsKey(Object key) isEmpty() 4,获取

2020-08-13 21:07:57 108

原创 小白学Java核心知识(集合框架)八:map集合概述、子类对象的概述、共性方法

map集合概述、子类对象的概述、共性方法/*Map集合:该集合存储键值对。一对一对往里存。而且要保证键的唯一性。 1,添加。 put(K key, V value) putAll(Map<? extends K,? extends V> m) 2,删除。 clear() remove(Object key) 3,判断。 containsValue(Object value) containsKey(Object key) isEmpty()

2020-08-13 14:24:51 66

原创 小白学Java核心知识(集合框架)七:泛型概述、使用、泛型类、泛型方法、静态泛型方法、泛型接口、泛型限定

1、泛型概述import java.util.*;/*泛型:JDK1.5版本以后出现新特性。用于解决安全问题,是一个类型安全机制。好处1.将运行时期出现问题ClassCastException,转移到了编译时期。,方便于程序员解决问题。让运行时问题减少,安全。,2,避免了强制转换麻烦。泛型格式:通过<>来定义要操作的引用数据类型。在使用java提供的对象时,什么时候写泛型呢?通常在集合框架中很常见,只要见到<>就要定义泛型。其实<> 就是用来接收类

2020-08-13 14:23:42 111

原创 小白学Java核心知识(集合框架)六:Treeset集合、实现Compartor比较器(接口)、练习

1、TreeSet概述、存储自定义对象import java.util.*;/*Set:无序,不可以重复元素。 |--HashSet:数据结构是哈希表。线程是非同步的。 保证元素唯一性的原理:判断元素的hashCode值是否相同。 如果相同,还会继续判断元素的equals方法,是否为true。 |--TreeSet:可以对Set集合中的元素进行排序。 底层数据结构是二叉树。 保证元素唯一性的依据: compareTo方法return 0. Tr

2020-08-12 15:30:38 128

原创 小白学Java核心知识(集合框架)五:Hashset框架、练习

1、Hashet框架import java.util.*;/*|--Set:元素是无序(存入和取出的顺序不一定一致),元素不可以重复。、 |--HashSet:底层数据结构是哈希表。是线程不安全的。不同步。 HashSet是如何保证元素唯一性的呢? 是通过元素的两个方法,hashCode和equals来完成。 如果元素的HashCode值相同,才会判断equals是否为true。 如果元素的hashcode值不同,不会调用equals。 注意,对于判断元素是否存在,以

2020-08-12 11:45:45 83

空空如也

空空如也

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

TA关注的人

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