自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小邹的博客

学如不及,犹恐失之。

  • 博客(81)
  • 收藏
  • 关注

转载 SpringMVC的文件上传与下载。

文件上传和下载转载于https://mp.weixin.qq.com/s/NWJoYiirbkSDz6x01Jji3g前言:文件上传是项目开发中最常见的功能之一 ,springMVC 可以很好的支持文件上传,但是SpringMVC上下文中默认没有装配MultipartResolver,因此默认情况下其不能处理文件上传工作。如果想使用Spring的文件上传功能,则需要在上下文中配置MultipartResolver。前端表单要求:为了能上传文件,必须将表单的method设置为POST,并将enctyp

2020-12-08 21:53:03 111

原创 Spring5学习·笔记·

1、Spring2002,首次推出了Spring框架的雏形:interface21框架Spring框架以 interface21 框架为基础,于2004年3月24日发布1.0正式版Spring理念:使现有的技术更加容易使用,本身是一个大杂烩,整合了现有的技术框架SSH:Struct2 + Spring + Hibernate!SSM:SpringMvc + Spring + MyBatis官网:https://spring.io/projects/spring-fram

2020-12-08 18:35:40 141

原创 SpringMVC的学习笔记

1、SpringMVC重点:SpringMVC的执行流程1.1、什么是SpringMVCMVC是模型(Model)、视图(View)、控制器(Controller)的简写,是一种设计规范。与Spring兼容性好,无缝结合高效,基于请求响应的MVC框架约定大于配置功能强大:RESTful、数据验证、格式化、本地化、主题等2、回顾Servlet导包,建maven项目编写servlet继承自HttpServlet的类。编写web页面。配置Tomcat,运行测试。3、SpringM

2020-12-08 18:31:07 158

原创 利用ssm框架开发的准备工作及步骤。

SSM框架整合开发步骤:1、创建数据库CREATE DATABASE ssmbuild;USE ssmbuild;CREATE TABLE `books`(`bookID` INT NOT NULL AUTO_INCREMENT COMMENT '书id',`bookName` VARCHAR(100) NOT NULL COMMENT '书名',`bookCounts` INT NOT NULL COMMENT '数量',`detail` VARCHAR(200) NOT NULL C

2020-12-08 18:26:53 570

原创 java后端学习jQuery中Ajax的笔记,如何写出一个Ajax并逐步完成前后端异步请求的路程。

jQuery与Ajax技术1、先谈谈Ajax有什么用。ajax 可以在网页交互时异步通信。就是能在不重新加载网页的情况下,去和后台进行数据交互。如:注册账号时,在不提交的情形下,可以先行判断要注册的账号是否已经存在更改密码时先行判断原密码是否正确。上面两种情况可以增加用户体验,所以这也是Ajax能备受青睐的原因。2、再谈谈后端人员怎么用。因为Ajax的内容作为后端人员不需要全部掌握,只需要掌握其中一部分就能够满足日常开发这里就不讲原生js实现Ajax的用法,直接使用 js

2020-12-08 03:39:52 470

原创 idea写javaweb项目时,明明代码没问题,但是用Tomcat启动后却出现错误,可能是依赖没有随着项目打包,在Tomcat中

有时候在用idea写javaweb项目时,用Tomcat发布后,明明感觉自己代码没问题,但是就是会出现错误那么有可能是Tomcat发布时项目需要的依赖没有打包进去。虽然依赖在maven中配置了!解决步骤:点击箭头第一步:点击Artifacts,第二步:选中相应的项目名第三步:看WEB-INF文件夹中是否有lib目录,且目录下有项目需要的依赖,如果没有。第四步:新建lib目录点击+号并选中第一个然后选中全部!点击ok并应用。重启Tomcat,测试!...

2020-12-02 21:48:24 764

原创 浅谈HashCode()与equals()在HashMap集合中是如何运作致使集合中元素不重复。

先谈谈如何让元素不重复:利用equals()将要存储的与已有的逐个进行比较。缺点:效率会大大降低。再谈谈HashMap集合中使用的不重复判定方式:先清楚一个概念,HashMap集合的K值只能是以对象形式传入,例如:String,Integer,等等包装类的形式。为什么呢?因为包装类都重写了HashCode方法和equals方法。而这两个方法与不重复有着密切联系。再谈谈HashMap集合的结构:底层是哈希表,由,一条数组+链表/红黑树组成。数组名字叫:table,它用做存储K值的哈希值。

2020-11-29 15:57:26 301

原创 Mybatis 学习笔记

Mybatis环境:JDK1.8Mysql 5.7maven 3.6.1IDEA回顾:JDBCMysqlJava基础MavenJunitSSM框架:配置文件的,最好的方式:看官方文档1、简介1.1、什么是MybstisMyBatis 是一款优秀的持久层框架它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java P

2020-11-28 17:42:22 271

原创 MyBatis在设置log4j日志实现时出错情况。

出现了这个警告log4j:WARN No appenders could be found for logger (org.apache.ibatis.logging.LogFactory).log4j:WARN Please initialize the log4j system properly.log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.原因:1.没有配置依赖: &

2020-11-26 18:54:14 586

原创 利用java实现发送邮件至QQ邮箱,以及利用javaweb实现注册网站时,网站自动发送包含注册信息的邮件至注册人的QQ邮箱

准备工作不利用javaweb进行编写邮件内容事先在类中定义不需要获取前端代码,有两个方法:picture()是发送图片和文本的,attachment)()可以发送图片,文本,附件import com.sun.mail.util.MailSSLSocketFactory;import javax.activation.DataHandler;import javax.activation.FileDataSource;import javax.mail.*;import javax.mail

2020-11-24 22:53:01 597

原创 javaweb上传文件功能

网页上进行文件上传,使用java语言

2020-11-24 20:06:43 533

原创 javaweb,Tomcat,maven下创建的项目,如果用户上传文件,那么上传的文件的位置在Tomcat的webapps文件夹下

编写上传文件的方法:准备把文件存储进/WEB-INF下,因为/WEB-INF下的文件不能直接被访问。部分代码:// 创建上传文件的保存路径,建议在WEB-INF路径下,安全,用户无法直接访问上传的文件; String uploadPath = this.getServletContext().getRealPath("/WEB-INF/upload"); File uploadFile = new File(uploadPath); if (!uploa

2020-11-24 19:52:21 722 2

原创 javaweb中,如果过滤器想使用getAttribute()方法,必须要对request进行强制转换

public class LoginFilter implements Filter { @Override public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain) throws IOException, ServletException { Object attribute = ((HttpServletRequest) request)

2020-11-20 02:35:43 597

转载 Session 会在Cookie中存放当前浏览器Session的独有id,且服务器中也存放此id,以此在服务器中区分不同的Session用户。

转载:https://www.cnblogs.com/zhouhbing/p/4204132.html1.2.6 Session对浏览器的要求虽然Session保存在服务器,对客户端是透明的,它的正常运行仍然需要客户端浏览器的支持。这是因为Session需要使用Cookie作为识别标志。HTTP协议是无状态的,Session不能依据HTTP连接来判断是否为同一客户,因此服务器向客户端浏览器发送一个名为JSESSIONID的Cookie,它的值为该Session的id(也就是HttpSession.ge

2020-11-20 01:16:16 531

转载 【javaweb:Servlet】解决Servlet页面输出中文乱码问题

转载:https://blog.csdn.net/topdandan/article/details/79110812关于设置中文的乱码问题原因:response缓冲区的默认编码是iso8859-1,此码表中没有中文,可以通过response的setCharacterEncoding(String type)设置response的编码。但我们发现客户端还是不能正常显示文字原因:我们将response缓冲区的编码设置成UTF-8,但浏览器的默认编码是本地系统的编码,因为我们都是中文系统,所以客户端浏览

2020-11-17 18:55:50 413

转载 Java时间和时间戳的相互转换

转载:https://www.cnblogs.com/mstk/p/5511057.html

2020-11-17 18:27:36 134

转载 java中response.setHeader()

一秒刷新页面一次 response.setHeader(“refresh”,“1”);二秒跳到其它页面 response.setHeader(“refresh”,“2;URL=otherPagename”);没有缓存:response.setHeader(“Pragma”, “No-cache”);response.setHeader(“Cache-Control”, “no-cache”);设置过期的时间期限response.setDateHeader(“Expires”, System.cu

2020-11-16 22:28:19 1424

原创 java———MySQL 学习

1.初识MySQL1.1数据库分类​ 关系数据库:(SQL)MySQL,Oracle,Sql Server,DB2,SQLlite通过表和表之间,行和列之间的关系进行数据存储非关系型数据库:(NoSQL) Not OnlyRedis,MongDB非关系型数据库,对象存储,一个对象的自身的属性来决定DBMS(数据库管理系统)数据库的管理软件,科学有效的管理我们的数据。维护和获取数据MySQL,数据库管理系统1.2MySQL简介MySQL是一个关系型数据库管理系统由

2020-11-13 23:24:17 2043 1

原创 IDEA 的MySQL数据库连接及一些常用操作

第一步,连接数据库1.1、准备工作一定要事先导入过JDBC驱动的包,在自建的lib目录下

2020-11-13 21:49:09 130

原创 java static的静态代码块加载的时机

先说结论:static静态代码块 是在 类初始化 的时候加载的,比类的构造方法还先加载。再说原因:1、类加载并运行的过程:第一步:类的加载(Load):将类的class文件读入内存,并为之创建一个java.lang,Class对象。此过程由类加载器完成第二步:类的链接(Link):将类的二进制数据合并到 JRE 中第三步:类的初始化:JVM负责对类进行初始化第四步:实例化,在内存中开辟堆空间。2、什么时候 static 加载当运行到第三步初始化时,会执行执行类构造器clinit()方法

2020-11-12 23:45:35 3164

转载 完美解决pyinstaller因为-w打包的exe文件与os.popen和subprocess.Popen都执行失败的问题

转载:https://blog.csdn.net/gogo_hjj/article/details/107738236

2020-10-30 01:57:56 1231

原创 利用java程序将windows系统中的文件属性进行修改:隐藏,只读等等

用到的知识点1.getAbsolutePath():方法作用是获得该文件的绝对路径2.关于cmd中 attrib 命令的用法及作用C:\Users\splaybow>help attrib显示或更改文件属性。ATTRIB [+R | -R] [+A | -A ] [+S | -S] [+H | -H] [+I | -I] [drive:][path][filename] [/S [/D] [/L]] + 设置属性。 - 清除属性。 R 只读文件属性。 A

2020-10-12 19:07:10 906 1

原创 html,css,js笔记

HTMLDOCTYPE:告诉浏览器,我们要使用什么规范head标签代表网页头部meta描述性标签,用来描述我们网站信息, 一般用来做SEOtitle网站标题body标签代表网页主体html:内容写在里面<!-- DOCTYPE:告诉浏览器,我们要使用什么规范 --><!DOCTYPE html><html lang="en"><!-- head标签代表网页头部 --><head><!-- SEO:搜索引擎优化

2020-09-27 20:17:37 2148 1

原创 HTML语法基础

HTMLDOCTYPE:告诉浏览器,我们要使用什么规范head标签代表网页头部meta描述性标签,用来描述我们网站信息, 一般用来做SEOtitle网站标题body标签代表网页主体html:内容写在里面<!-- DOCTYPE:告诉浏览器,我们要使用什么规范 --><!DOCTYPE html><html lang="en"><!-- head标签代表网页头部 --><head><!-- SEO:搜索引擎优化

2020-09-14 21:43:51 203

原创 java注解和反射

注解和反射java.Annotation**什么是注解:**比如重写方法上面会带有@Override标志,作用是检测重写方法名是不是正确的,等等​ 不是程序本身,可以对程序作出解释​ 可以被其他程序(比如:编译器等)读取格式:​ 以”@注释名“在代码中存在的,还可以添加一些参数值,例如: (@SuppressWarnings(value=“unchecked”))使用:​ 可以附加在package,class,method(方法),fiels(属性)等上面,相当于给他们添加了额外的辅助信息,

2020-09-14 21:42:41 321

原创 java多线程知识,线程安全,生产者消费者线程问题,线程池

线程是什么1.一个程序在电脑中执行是会以进程的方式运行,此进程所能调用的资源就是程序能够调用的资源,然后在进程之下,会分化出许多线程,这些线程统一能够调用进程所持有的资源,线程是进程的分化,可以理想化的同时运行某些东西。2.java中main方法是主线程,还会存在垃圾回收的线程,这两个线程是同时进行的,所以这种现象称为多线程。Thread(类)新知:1.使用Thread类(线程同时启动)的步骤​ 1.继承Thread类,​ 重写类中的run方法,​ 方法中写需要和主线程main方法同步运行的

2020-09-09 16:41:19 291

原创 利用java编写网络聊天程序并加密信息

利用java编写网络聊天程序并加密信息所用知识:javaGUI+网络编程+多线程+信息加密**原理:**GUI编写基本的图形化界面,利用UDP传输信息,利用多线程同时接收以及发送信息,利用信息加密,加密,密码以及聊天信息。可能会遇到的问题:​ 2.javaGUI中的重画方法,repaint只能在原有基础上重绘,并不能清除原来痕迹。因为我使用的Swing默认为轻量级则不执行update,awt组件才是重量级。解决方法:removeAll()移除组件,repaint()刷新面板,再添加组

2020-09-06 16:50:57 2920 10

原创 java获取win系统的时间,并输出HH:mm:ss格式

主要方法:Date date = new Date(System.currentTimeMillis());//获取系统当前时间new SimpleDateFormat("HH:mm:ss").format(date)//更改系统时间的格式import java.text.SimpleDateFormat;import java.util.Date;public class MyThreadSleep { public static void main(String[] args)

2020-09-02 10:57:09 745

原创 javaGUI知识点:awt+swing

GUI核心技术:AWT+Swing,需要jre环境AWT只有画笔,Swing能画图AWTFrameawt包下1.Frame类可以定义一个在内存中基础的图形化界面,所以无法在电脑界面显示,需要类中的方法来设置可见性(setVisible(true)),类的构造方法表示图形化界面左上方的名字。2.可以望文生义,比如需要设置颜色,位置,那么就在Frame类中以set开头的方法中寻找。3.基本界面设置代码:import java.awt.*;public class Gui_01 {

2020-08-31 19:58:02 764

原创 java网络编程知识点:IP地址,TCP,UDP

网络编程ip获取类(InetAddress)java.net包下新知:注:此类会抛出异常:UnknownHostException,需要处理。1.InetAddress类,没有构造方法,类中方法都是静态的,可以直接用类名调用方法。2.此类最重要的功能是获取IP地址,无论是本机还是网站的ip。3.获取本机ip的方法有三种:1.getByName("127.0.0.1"):确定主机名称的IP地址。 2.getByName("localhost")3.getLocalHost():返回本地主机

2020-08-31 19:54:49 293

原创 使用FileInputStream类出现文件找不到的问题,thread “main“ java.io.FileNotFoundException: tx.jpg (系统找不到指定的文件。)

出现错误的代码形式:FileInputStream fi=new FileInputStream(new File("tx.jpg"));出错的提示:一定是想用相对路径,导致的出错。解决办法:将图片放在Project的根目录下。比如说:我的目标文件是tx.jpg那么把文件放在如图:我的代码在:总结:文件应该放在Project的根目录下。...

2020-08-30 22:23:38 3725 3

原创 用Java的GUI制作一个按钮式的计算器,实现加减乘除,清屏。

用java的GUI制作简易的计算器import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.util.ArrayList;import java.util.Collections;/*设计一个按钮式计算器--------------------------------1 2 3 + |4 5 6 - |7 8 9 x |清除 0 = ÷

2020-08-19 01:09:06 4885 3

原创 javaIO流知识点清单,字节流,字符流,缓冲流,转换流,序列化,反序列化

IO流(细处待补充)1.概述:​ 输入:从硬盘中写入程序到内存中。​ 输出:从内存中输出程序。​ 分为:字节流和字符流。​ 有四个顶级父类:字节:InputStream,OutputStream。字符:Reader,Writer。​ 1字符=2字节=16个二进制位字节输出流:OutputStream(byte)1.抽象类,是所以输出字节流的超类。2.包含的成员方法:public void close():关闭输出流并释放与此流相关联的任何系统资源。 public vo

2020-08-14 22:10:41 293

原创 Map集合:常用方法:put,remove,get,containsKey,keySet,entrySet,HashMap接口(使用自定义类型)和LinkedHashMap接口

Map集合(接口)特点:1.双列集合:两个泛型Map:K:键,V:值K唯一,V可重复,两个的类型可以相同或者不同。可以通过键找到值如果K重复,则新的K对应的V值会替换旧的V值常用方法public V put(K key,V value):把指定的键与指定的值添加到Map集合中,如果有重复的k值想录入,会将新的k值对应的v值替换旧的v值并返回旧v值public V remove(Object key):把指定的键,所对应的键值对元素在Map集合中删除,并返回被删除的元素pub

2020-08-01 17:59:04 349

原创 Conllection中List:ArrayList,LinkedList,Vector。Set接口:HashSet,哈希表结构,LinkedHashSet集合,Collections工具类

集合_数据结构Collection集合数据结构——栈(待代码实现…)1.先进后出(出入口在同一地方,一次出一个,所以先进去的只能后出来)数据结构——队列1.一边是出口一边是入口,所以先进先出。数据结构——数组1.连续空间,有索引,查询快,增删慢。2.有索引,所以查询快。3.删除,增加时,只能重新定义数组将删除后的值存放在新的数组中(原数组无法增加或者删除数据,因为数组长度固定,不可能一直增加,只能让变量重新指向其他地址(即数组首地址)来达到增加或者删除目的),还要销毁原数组。4.在堆内存

2020-08-01 17:55:51 150

原创 利用集合(ArrayList),数组,泛型,增强for循环知识,写一个案例:斗地主小游戏,实现建牌,洗牌,发牌功能。

步骤:第一步:创建牌,用三个集合来装,数据类型是String,集合用Arr…的,第一个数组装花色,第二个数组装牌值(除去大小王),第三个集合装整副牌(将花色和牌值结合)。第二步:洗牌,使用Collections工具类中的方法:static void shuffle(List<?> list):使用指定的随机源对指定列表进行置换,即打乱牌序。第三步:发牌,玩家三名,底牌三张。定义四个集合,三个存储玩家牌,一个存储底牌,用for循环与if语句实现。代码:import java.util.A

2020-07-24 23:42:43 223

原创 java集合:Collection常用功能,Iterator接口(迭代器),增强for,泛型

集合概述:1.API:类和接口2.包含了六种集合(类):1.Vector集合 2.ArrayList集合,3.LinkedList集合4.TreeSet集合(无序),5.HashSet集合(无序),6.LinkedHashSet集合(有序)3.前三种属于List接口:三个的共性:1.有序的集合(存储与取出元素顺序相同),2.允许有重复元素,3.也索引,可以使用普通的for循环遍历4.后三种属于Set接口:共性:1.不允许有重复元素,2.没有索引(不能用普通的for循环遍历)5.他们两个接

2020-07-23 22:10:16 229

原创 java常用类:getClass,hashCode,toString,equals,clone,notify,wait,包装类,Math,Random,File,Data,String/Builder

java常用类1.Object类1.基类,所以类默认继承此类1.getClass()方法作用:判断类的对象是不是同一类型。public class Foundation02 { public static void main(String[] args){ GetClass01 g1=new GetClass01(); GetClass01 g2=new GetClass01(); //调用getClass方法,并用Class类型的变量接收

2020-07-22 20:56:51 305

原创 JavaSE语法大全

JavaSE语法大全1.注释####1.单行注释:“//”2.多行注释:“/…/”。3.文档注释:“/**…*/”。2.标识符1.只能以字母,$,_,开头2.大小写敏感3.类型1.整数类型:byte,short, int,long(long使用时值末尾加L以区分)​ 拓展:表示二进制时首部加“0b”,八进制:”0“,十六进制:“0x”2.浮点数类型:1.float(变量值后加“F”)​ 2.double(不用加,默认是)拓

2020-07-18 21:01:15 424

原创 MarkDown语法

MarkDown语法标题一级标题方法:“#”+“ 空格”,二级为两个#,以此类推,最多为六级。字体加粗:字两边加“**”。斜体:字两边加“*”。加粗+斜体:字两边加“***”。废弃:字两边加“~~”。引用字前加“>”即可。分割线三个“—”+“回车”三个“***”+“回车”图片1.英文“!”+"[]"中括号里填写图片名字+“()”英文括号里面填地址:超链接示例:百度列表直接插入,手动复杂。代码前面加三个顿号“···”(tab键上面的符

2020-07-15 17:03:50 74

空空如也

空空如也

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

TA关注的人

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