![](https://img-blog.csdnimg.cn/20210808174841596.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
java
关于java的学习之路和一些小demo和项目
小小的香辛料
天落九重影,君便晓黎明炫目。
展开
-
JDBC Template报错:java.lang.ClassNotFoundException: org.springframework.jdbc.core.RowMapper
写Servlet时,打开网页遇到这情况。上网查了一下,他们都说要把lib目录放到WEB-INF目录下,但我看了一下我的,确实是在WEB-INF目录下啊,咋还错?于是我开始考虑其他方面的错误,捣鼓了半天也没调好,最后杀个回马枪,难道是因为我的命名问题?我此时的命名为 libs ,将其该为lib,项目果然成功跑起来了。没想到这东西要求如此之严格。错误最可能的原因: 没有将lib文...原创 2020-03-20 12:15:40 · 1493 阅读 · 2 评论 -
我发现了一个黑马旅游网旅游线路查询的bug
项目背景有三种方式展示数据:只通过category的cid属性来显示数据,也即是点击分类显示相应数据。 只通过查询(他对应变量为rname)来显示数据,也即是在首页直接搜索关键词查询显示相应数据 既通过cid属性,又通过rname来查询并显示数据,也即是点击分类并在搜索框搜索关键词rname来源:给搜索按钮绑定单机事件Bug分析现在 后两种方式都是没问...原创 2020-05-05 17:59:48 · 1942 阅读 · 13 评论 -
request.getParameter(“参数名”) 中文乱码解决方法
request.getParameter(“参数名”) 中文乱码做JabaWeb项目时遇到request.getParameter(“参数名”) 中文乱码的问题原因:Http请求传输时将url以ISO-8859-1编码,服务器收到字节流后默认会以ISO-8859-1编码来解码成字符流(造成中文乱码)解决办法:我们需要把request.getParameter(“参数名”...原创 2020-05-05 15:08:56 · 670 阅读 · 0 评论 -
史上最翔细的【ajax与json】
今日内容1. AJAX:2. JSONAJAX:1. 概念: ASynchronous JavaScript And XML 异步的JavaScript 和 XML 1. 异步和同步:客户端和服务器端相互通信的基础上 * 客户端必须等待服务器端的响应。在等待的期间客户端不能做其他操作。 * 客户端不需要等待服务器端的响应。在服务器处理请求的过程中,客户端可以进行其他的操作。...原创 2020-04-05 21:10:03 · 246 阅读 · 0 评论 -
我竟然用java造了个史上最丑的验证码!
想要这样一个验证码吗?其实不难,用java很快就可以写出来!用Servlet编写,当然你用普通的类应该也可以(应该涉及到JFrame、JPanel的知识,在面板上显示验证码),逻辑差不多的。分析一下思路:1.首先创建...原创 2020-03-21 18:55:46 · 277 阅读 · 0 评论 -
java报错:java.lang.IllegalArgumentException: An invalid character [32] was present in the Cookie value
一. 错误分析在Servlet中使用cookie发生错误如下:根据错误提示:在cookie值中有【32】这个非法字符。查一下ASCII值表发现32是空格,也就是说我们这个Cookie不能存空格等一些特殊字符 。二. 解决方法1.删除非法字符设置cookie里面相关的值时别用特殊字符。那我就想存怎么办?往下看!2.给特殊字符所在的字符串编码//使...原创 2020-03-23 14:36:19 · 1145 阅读 · 0 评论 -
彻底解决java向mysql插入中文出现?的乱码
一. 一壶茶,一碗面,一个bug改一天! ໒( ◑ w ◑ )७ 今天做一个后台的时候遇到了中文乱码的bug,我心想,这个好解决啊,毕竟遇见那么多这种中文字符乱码的问题了,不用想都知道99%是字符集不一致的问题。我三下五除二就把java代码和mysql的字符集给设置好了,要是那么简单我也不至于改这么长时间,我去网上搜,大多说的都是把java代码和编译器以及mysql的字...原创 2020-03-28 18:35:17 · 952 阅读 · 4 评论 -
java通过jdbc-odbc桥连方式操作数据库
演示使用jdbc-odbc桥连方式操作数据库test(student)大体模式是这样的:1.加载驱动(作用是把需要的驱动程序加入内存)Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");2.得到连接[指定连接到哪个数据源,用户名和密码]如果配置数据源时选择的时Windows nt验证,则不需要用户名和密码ct = DriverMa...原创 2019-05-04 00:53:17 · 1708 阅读 · 0 评论 -
maven引入本地jar包的方法
maven作为包管理工具,好处不必多说但是有些情况,比如需要引入第三方包,如快递鸟,支付宝,微信等jar包(当然有可能直接提供maven依赖)如果直接下载到本地之后,怎么整合到自己的maven工程呢?方式挺多的,下面列举四种方式1. 上传到maven中心仓库https://oss.sonatype.org/愿意折腾可也搞搞,可以参考如何发布Jar包到Maven中央仓库(确...转载 2020-04-16 10:05:59 · 1326 阅读 · 0 评论 -
Java发送邮件工具类
Java发送邮件工具类package cn.itcast.travel.util;import javax.mail.*;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeMessage;import java.util.Properties;/** * 发邮件工具类 */...原创 2020-04-26 20:25:37 · 1015 阅读 · 0 评论 -
maven项目报错:org.apache.jasper.JasperException: Unable to compile class for JSP:
一. 错误信息和错误分析进行maven学习时,遇到了这个坑。下面介绍一下我要干嘛:创建一个最简单的maven工程,写一个servlet跳转到hello.jsp页面。但是,我servlet也写完了,依赖也调好了,就是无法运行,别人的项目和我一样的操作都可以跑起来的。下面是Servlet:下面是依赖(已经正确添加jsp依赖了,所以肯定也不是她的原因):并...原创 2020-04-11 21:47:04 · 623 阅读 · 0 评论 -
用这个方法,maven更新还慢我把电脑吃了!
前言最近在学习项目管理工具---maven,他的教程还是比较简单的,但是有一点究极难受好不好!maven仓库更新太慢了,因为她是从外网下载这些开源jar包(依赖包)的,所以龟速也是很正常的,1k/s都是家常便饭。为了解决这个令人头大的问题,百度姬搞一手,大佬们不愧是大佬,反手就给出了一个阿里云通道来加速下载,这速度我只能说一句,我lbw没有开挂!开始加速加速...原创 2020-04-11 20:00:47 · 301 阅读 · 0 评论 -
踩坑:Failed to create a Maven project: 'xxx/pom.xml' already exists in VFS
踩坑:Failed to create a Maven project: 'xxx/pom.xml' already exists in VFS最近看hadoop,maven下载依赖包各种问题,无奈之下我只有频繁重新创建项目,不免有重名。以上为背景。根据错误提示,我琢磨着,应该把这个VFS里面的内容清理一下,因为毕竟我已经在文件中将project删除了。但是我不知道VFS是啥遂上s...转载 2020-04-11 19:04:18 · 343 阅读 · 0 评论 -
居然是她!让我揩得一手【代理模式】的好油
前言 最近遇到了一个代码朋友 ——>【代理模式】 虽然我以前接触过她,但是这是第一次实践,所以想总结一下,加深一下对她的理解。可能你们不知道她是啥玩意儿,但你们一定听过23种设计模式。而代理模式就是就是其中的一种设计模式。她在Spring等框架处运用广泛,这里 重点讲解一下动态代理模式。如果你能很好的理解她,那么你学习框架应该会轻松很多~ (干巴代 ...原创 2020-04-03 14:04:01 · 277 阅读 · 0 评论 -
这是什么神仙【过滤器和监听器】知识
今日内容1. Filter:过滤器2. Listener:监听器Filter:过滤器1. 概念: * 生活中的过滤器:净水器,空气净化器,土匪、 * web中的过滤器:当访问服务器的资源时,过滤器可以将请求拦截下来,完成一些特殊的功能。 * 过滤器的作用: * 一般用于完成通用的操作。如:登录验证、统一编码处理、敏感字符过滤...2. 快速入门: 1. 步骤: 1. ...原创 2020-04-02 22:15:29 · 224 阅读 · 0 评论 -
图解三层架构和MVC开发模式
MVC模式:三层架构:原创 2020-03-29 20:23:26 · 768 阅读 · 0 评论 -
两句话让你从此不再搞混相对路径和绝对路径!
1. 相对路径:通过相对路径不可以确定唯一资源 * 如:./index.html * 不以/开头,以.开头路径 * 规则:找到当前资源和目标资源之间的相对位置关系 * ./:当前目录...原创 2020-03-29 13:03:20 · 207 阅读 · 0 评论 -
一个例子教你看源码!深入浅出教你理解Template中的query和queryForObject的区别!
一. 前言最近在搞一个servlet+jsp+el表达式+jstl+mysql+mvc的综合性小项目。遇到了一个问题:Template中的query和queryForObject到底有什么区别呢?因为有时候用query,有时候用queryForObject,实在是玄乎。搜索大量的资料,并没有我想要的答案。我想知道:是不是 queryForObject(String sql, Ro...原创 2020-03-28 21:12:31 · 6493 阅读 · 13 评论 -
史上最翔细的【EL表达式和JSTL标签】
今日内容1. JSP: 1. 指令 2. 注释 3. 内置对象2. MVC开发模式3. EL表达式4. JSTL标签5. 三层架构JSP:1. 指令 * 作用:用于配置JSP页面,导入资源文件 * 格式: <%@ 指令名称 属性名1=属性值1 属性名2=属性值2 ... %> * 分类: 1. page : 配置JSP页面的 * conte...原创 2020-03-28 14:39:41 · 252 阅读 · 0 评论 -
史上最翔细的Cookie和Session知识
概述 * 会话技术 1. Cookie 2. Session会话技术1. 会话:一次会话中包含多次请求和响应。 * 一次会话:浏览器第一次给服务器资源发送请求,会话建立,直到有一方断开为止2. 功能:在一次会话的范围内的多次请求间,共享数据3. 方式: 1. 客户端会话技术:Cookie 2. 服务器端会话技术:SessionCookie:1. 概念:客户端会话技术,将...原创 2020-03-24 20:43:22 · 150 阅读 · 0 评论 -
你细品【Session和Cookie的实现原理】
一. 概念想清楚一个东西的原理,首先你要知道他是啥。 想实现服务器和客户端的交互需要建立一种连接,而连接就是一种技术,叫会话技术。 1. 会话:一次会话中包含多次请求和响应。 * 一次会话:浏览器第一次给服务器资源发送请求,会话建立,直到有一方断开为止 2. 功...原创 2020-03-24 20:32:42 · 404 阅读 · 0 评论 -
5分钟教你用java做最简单的登录系统
目录 前言一. 项目需求和分析二.准备工作资源三. 编写逻辑代码四. 测试及运行五. 反思总结前言JavaWeb学了有一段时间了,学到了很多东西,但学归学,它是不是真正成为自己的了还真不好说。俗话说得好,如果你能用自己的语言给别人把一个晦涩难懂的东西讲清楚,那你就真的会了。故作此文,教大家搭建一个非常基础的登录系统,顺便巩固一下这段时间学的...原创 2020-03-23 19:52:14 · 13495 阅读 · 4 评论 -
原来java实现文件下载功能那么简单!
有时候我们想点击一张图片的超链接就进行下载而不是跳转到这张图片进行显示该怎么做呢?用java实现下载功能呗,并且只要设置Http响应的响应头就可以让他无论何时以何种方式点击超链接就进行下载。一起看看如何用java实现文件下载功能吧。分析思路:1. 让下载界面传参的时候指定文件名:方法是修改href,我们不光要指定跳转路径,还要在后面加上响应的参数 ...原创 2020-03-22 19:01:27 · 3308 阅读 · 2 评论 -
教你完全理解IO流里的 read(),read(byte[]),read(byte[],int off,int len)以及write
好的我们先来讲它们的作用,然后再用代码来实现给大家看 read(): 1.从读取流读取的是一个一个字节 2.返回的是字节的(0-255)内的字节值 3.读一个下次就自动到下一个,如果碰到-1说明没有值了. read(byte[] bytes) 1.从读取流读取一定数量的字节,如果比如文件总共是102个字节 2.我们定义的数组长度是10,那么默认前面10次都是读...转载 2020-03-22 18:13:46 · 2080 阅读 · 0 评论 -
java获取文件的服务器(真实)路径
一. 什么是真实路径真实路径也叫服务器路径。为什么叫服务器路径就是真实路径呢?举个例子,你在本地工作空间里存储着一份你的项目,同时你在你的服务器上也存储着同样的项目。那么你访问的时候是访问本地空间里的项目呢,还是访问服务器上的项目。显然是服务器上的路径。所以 真实路径也叫服务器路径。二. 如何获取真实路径在java中,我们使用servlet时,访问一个servlet代码,只...原创 2020-03-22 09:46:46 · 4438 阅读 · 3 评论 -
一句话弄懂【转发】和【重定向】的区别和适用场景!
这是一道常考的面试题,其实他就是想问Servlet中转发和重定向的区别。转发的特点:Forward:1. 转发地址栏路径不变2. 转发只能访问当前服务器下的资源3. 转发只有一次请求,所以他可以通过request对象来共享数据重定向的特点:Redirect:1. 重定向地址栏路径发生改变2. 重定向可以访问其他站点(服务器)下的资源3. 重定向是两次请求。不能使用...原创 2020-03-21 15:36:47 · 427 阅读 · 0 评论 -
使用Template操作Mysql
使用Template操作MysqlSpring JDBC * Spring框架对JDBC的简单封装。提供了一个JDBCTemplate对象简化JDBC的开发 * 步骤: 1. 导入jar包 2. 创建JdbcTemplate对象。依赖于数据源DataSource ...原创 2020-03-20 09:13:29 · 761 阅读 · 0 评论 -
Java与Mysql的爱恨情仇
前言学了这么久的java,我发现一个很严重的问题,我大部分java重要知识点尤其是不会的知识都有记一些笔记,但唯独到了java连接数据库的时候,发现一点痕迹都木得。可能以前学的时候学会了,就没记吧。但是时间长了,代码也忘得差不多了,是时候重新梳理一下java和Mysql的连接知识了,这会是一个大内容,我挑一部分极其重要和常用的来记录,姑且把它称作 java与Mysql 的爱恨情仇!...原创 2020-03-19 12:03:16 · 1273 阅读 · 0 评论 -
静态代码块是什么?有什么用?
一. 什么是静态代码块在java中使用static关键字声明的代码块叫静态代码块。比如:package cn.itcast.utils; import com.alibaba.druid.pool.DruidDataSourceFactory; import javax.sql.DataSource; import java....原创 2020-03-19 10:00:43 · 7384 阅读 · 2 评论 -
add as library是什么?有什么用?如何打开?
在很多地方看见add as library,但就是不知道这是干啥的。上网搜,发现并没有直接介绍这个的,经过一段时间的信息搜集,总结出以下几个知识点,希望给一些和我一样的小小白经验学习,希望每个小白都能成为自己心中向往的大佬。一. add as library是什么?add as library是IntelliJ IDEA里面的一个功能,当然eclipse里面也有,多用于java开发和A...原创 2020-03-18 16:54:31 · 20412 阅读 · 4 评论 -
Servlet获取请求参数通用方式
1. 获取请求参数通用方式:不论get还是post请求方式都可以使用下列方法来获取请求参数 1. String getParameter(String name):根据参数名称获取参数值 username=zs&password=123 2. String[] getParameterValues(String name...原创 2020-03-13 15:40:25 · 2603 阅读 · 0 评论 -
解决Tomcat(Servlet)接收客户端发送来的数据乱码问题
用java做项目时,我们可能会遇到这样的问题。写了个表单,把表单数据发送给Servlet接收后打印,发现中文字符会是乱码如下图所示。事实上,从tomcat 8开始,已经将get方式传送表单数据中文乱码的问题解决了,但是我们用post方式传送表单数据有中文时还是会乱码,解决方法也很简单,在获取参数前,设置request的编码request.setCharacterEncoding...原创 2020-03-13 15:12:54 · 705 阅读 · 0 评论 -
我劝你最好别偷看我的HTTP总结
一.概念:Hyper Text Transfer Protrol(超文本传输协议)传输协议:定义了客户端和服务器端通信时发送数据的格式 特点: 1. 基于TCP/IP的高级协议 2. 默认端口号:80 3. 基于请求响应模型:一次请求对应一次响应 4. 无状态的:每次请求之间相互独立,不能交互数据 历史版本: 1. 1.0:每次请求响应都要建立新的连接 2. ...原创 2020-03-07 17:28:42 · 351 阅读 · 0 评论 -
千万别看这个Request!
1. request对象和response对象的原理 1. request和response对象是由服务器创建的。我们来使用它们 2. request对象是来获取请求消息,response对象是来设置响应消息2. request对象继承体系结构: ServletRequest -- 接口 ...原创 2020-03-11 09:13:30 · 427 阅读 · 0 评论 -
千万别看这个Servlet的体系结构!
Servlet -- 接口Servlet:创建Servlet类时,要继承Servlet接口,并实现其所有方法。 我们通常用到的是其中的 service() 方法,当我们只用到一个 service() 方法而不需要该接口的其他方法时,这样写时比较麻烦的,我们可以通过继承下面的两个抽象类来简化。GenericServlet -- 抽象类GenericServ...原创 2020-03-07 17:51:19 · 232 阅读 · 0 评论 -
Servlet的注解
1.前言当我们创建一个新的Servlet项目时,要选择WebApplication,往常我们都是勾选web.xml,并在其中配置Servlet的一些信息,比如:<servlet></servlet>、<servlet-mapping></servlet-mapping> 等等。关于这个布吉岛的请点右边 ——>Servlet的执行原...原创 2020-02-26 12:01:05 · 3055 阅读 · 0 评论 -
我就没见过这么菜的servlet的生命周期!
package it.web.servlet;import javax.servlet.*;import java.io.IOException;public class ServletDemo2 implements Servlet { //Servlet创建时执行,只执行一次 @Override public void init(ServletConfig ...原创 2020-02-26 09:38:11 · 175 阅读 · 0 评论 -
Servlet的执行原理
Servlet的执行原理当Tomcat服务器接收到客户端浏览器的请求后,会解析URL路径,获取访问的Servlet的资源路径。 查找web.xml文件,看是否有对应的<url-pattern>标签体内容。 如果有,则再找到对应的<servlet-class>全类名。 tomcat会利用反射机制,先将字节码...原创 2020-02-17 11:35:10 · 494 阅读 · 0 评论 -
java导入声音文件(.wav)
package com.test12;import javax.sound.sampled.*;import java.io.File;import java.io.IOException;public class AudioTest { public static void main(String[] args){ AePlayWave apw = new ...原创 2019-02-26 22:31:12 · 3293 阅读 · 3 评论 -
韩顺平循序渐进学java坦克大战爆炸图
找了很久,很不容易弄到了,本来没抠,我还帮你们抠了一下,给没有的分享一下,不用谢了。。原创 2019-02-15 21:03:46 · 8005 阅读 · 50 评论