
JavaSE&JavaWeb
#入门必备
CRUD_CODER_LIN
编程需要摆正态度、明确心态,多看多敲多思考多交流,才有所为!
展开
-
javaWeb之文件上传与下载基础学习与总结(功能已实现)
1.文件上传1.1.表单 表单的method属性必须为post; 表单的enctype(底层的编码格式)属性必须为multipart/form-data; 上传文件的控件是input,type属性为file。1.2.导包 commons-fileupload是Apache开发的一款专门用来处理上传的工具,它的作用就是可以从request对象中解析出,用户发送的请求参数...原创 2019-08-27 21:12:31 · 674 阅读 · 0 评论 -
Ajax校验用户名存在报错“ Uncaught RangeError: Maximum call stack size exceeded at Number.toString (<anonymous>
应用场景:在注册页面,输入用户名,判断用户名是否存在,正常用Ajax的异步处理,测试时输入“存在的用户名”,鼠标移出且改变文本,但是页面没有反应!!!!,在浏览器F12进入控制台查看报错信息“ Uncaught RangeError: Maximum call stack size exceeded”中文意思“未捕获范围错误:最大栈超过了最大值”,可是这种错误一般出现在逻辑递归函数中!那怎么回...原创 2019-08-27 11:58:14 · 1712 阅读 · 0 评论 -
学习AJAX必须掌握的JSON(JavaScript Object Notation)知识(上手案例)
笔记大纲JSON简介/font> JSON基本语法 JS中JSON转换问题/font> Java中JSON转换问题/font>JSON对象转字符串案例JSON字符串转对象案例JAVA对象、JSON字符串转换案例(重点是Java集合类型)/font>1.JSON简介 AJAX在开始使用XML的数据格式,XML的数据格式非常简单清晰,容易编写,但是由于...原创 2019-08-26 22:36:36 · 318 阅读 · 0 评论 -
JavaWeb之AJAX(Asynchronous JavaScript And XML )基础学习与总结
同步处理: AJAX出现之前,我们访问互联网时一般都是同步请求,也就是当我们通过一个页面向服务器发送一个请求时,在服务器响应结束之前,我们的整个页面是不能操作的,也就是直观上来看他是卡主不动的。 这就带来了非常糟糕的用户体验。首先,同步请求时,用户只能等待服务器的响应,而不能做任何操作。其次,如果请求时间过长可能会给用户一个卡死的感觉。最后,同步请求的最大缺点就是即使整个页面中只有一小部...原创 2019-08-26 20:07:22 · 791 阅读 · 0 评论 -
Web项目注册时使用Google插件kaptcha进行5位验证码的生成!
Kaptcha是Google插件库中一个非常实用的验证码生成工具,我们可以在web.xml中通过配置验证码的各种属性(颜色、大小等等),它以图片的形式展示出来,5位数的字符随机生成的,为前端传统生成验证码操作,代码量就省了不少!1.引入到web工程WEB-INF下lib中的Jar包2.kaptcha的Jar的结构分析4.查看KaptchaServlet的源码public class...原创 2019-08-25 10:09:42 · 786 阅读 · 0 评论 -
JavaWeb之过滤器(Filter)基础学习与总结
Web的三大组件:Servlet(服务小程序)、Filter(过滤器)、Listener(监听器)。☞共同的特点:都实现了某个接口,都需要在web.xml进行 注册!笔记大纲Filter简介 Filter的生命周期 工作原理(执行流程) Url配置规则HttpFilter的使用(重点–解决乱码问题)Filter相关接口1.Filter简介 生活中常见的过滤器,比如...原创 2019-08-24 12:36:10 · 455 阅读 · 0 评论 -
JavaWeb之会话(Cookie&Session)控制基础学习与总结
笔记大纲会话控制Cookie会话简介Cookie的运行原理(非常重要)Cookie的创建、获取、修改键值时效性、有效路径Cookie缺点 Session会话简介Session的创建、获取、修改Session的运行原理(非常重要)钝化与活化回顾《Session的钝化与活化,Java序列化与反序列化,原来是这么回事!》表单重复提交回顾《会话Sessio...原创 2019-08-23 21:30:28 · 462 阅读 · 0 评论 -
Session的钝化与活化,Java序列化与反序列化,原来是这么回事!
在JavaWeb开发中,服务器可以为每个用户浏览器创建一个会话对象(session对象),Session信息保存在服务器中,而Cookie信息保存在客户端浏览器中,显然Session比Cookie更安全。 Session机制其实在很大程度上优化了Cookie的性能,当访问web应用的用户过多时,服务器就会创建非常多的Session对象,如果不对这些Session对象进行处理,Sessi...原创 2019-08-21 21:25:01 · 618 阅读 · 0 评论 -
会话Session应用场景#用UUID作为token,3步解决表单重读提交问题!
往期回顾☛会话Cookie应用场景#登录实现用户名与密码持久化操作,有效期5day!UUID定义UUID 是 通用唯一识别码(Universally Unique Identifier)的缩写,是一种软件建构的标准,亦为开放软件基金会组织在分布式计算环境领域的一部分。其目的,是让分布式系统中的所有元素,都能有唯一的辨识信息,而不需要通过中央控制端来做辨识信息的指定。百度•百科-UUID定...原创 2019-08-21 19:21:02 · 1585 阅读 · 0 评论 -
会话Cookie应用场景#登录实现用户名与密码持久化操作,有效期5day!
实现思路: 1.输入用户名和密码,点击登录表单按钮,发出请求 2.跳转到对应的Servlet,获取用户名和密码值 3.判断复选框是否选中 如果选中,则将用户名、密码存放到Cookie中,持久化day5,再将Cookie响应浏览器端; 如果不选中,则将用户名、密码不存放到Cookie中 4.在浏览器端,获取两个Cookie,显示用户名、密码到指定的位置。 持...原创 2019-08-21 12:40:47 · 799 阅读 · 0 评论 -
JavaWeb之JSTL(JSP Standrd Tag Library)基础学习与总结
笔记大纲JSTL简介 五大标签库(核心库是重点) JSTL使用 STL常用标签(通用、流程、循环)1.JSTL简介 (1)全称:JSP Standrd Tag Library(jsp标准标签库); (2)JSTL主要以html形式,表达java的语义; (3)JSTL一共有五大功能:常用核心功能、格式化、函数、数据库、XML。2.五大标签库JSTL由五个不同功能...原创 2019-08-18 23:39:24 · 394 阅读 · 1 评论 -
JavaWeb之EL表达式(Expression Language)基础学习与总结
笔记大纲EL简介 EL基本使用 EL的11个隐含对象 EL逻辑运算 EL代码示例1.EL简介Expression Language,定义JSP内置的表达式语言。(1)作用 用以访问页面的上下文以及不同作用域中的对象,取得对象属性的值,或执行简单的运算或判断操作; EL表达式用于代替JSP表达式<%= %>在页面中的输出操作。(2)特点 EL在得到...原创 2019-08-18 12:13:53 · 475 阅读 · 0 评论 -
JavaWeb之JSP(Java Server Pages)基础学习与总结
笔记大纲JSP简介 JSP工作原理JSP基本语法(6个)指令 、模板元素、脚本元素、表达式、声明、注释常用指令page、include、taglibJSP动作标签动态包含 、转发 JSP九大隐式(隐含/内置)对象pageContext、request、session、applictionpage、response、config、out、exception...原创 2019-08-16 21:28:57 · 849 阅读 · 0 评论 -
Web请求的转发&重定向区别【图文分析】
总所周知:请求的转发与重定向是Servlet控制页面跳转的主要方法,在Web应用中使用的非常广泛,也是面试中问到servlet技术高频点。图解请求方式请求转发一个Web资源收到客户端的请求后,通知服务器去调用另一个Web资源进行处理,称之为请求转发。分析: (1)Servlet接收到浏览器端的请求后,进行了一定的处理。一开始不会进行响应,而是在服务器端内部“转发”给其它的S...原创 2019-08-15 14:24:48 · 352 阅读 · 0 评论 -
JavaWeb应用程序中为什么要采用绝对路径(“/”)?
我们在使用转发跳转页面时,地址栏不变,如果使用使用相对路径,以自身为基准,会导致浏览器URL地址解析错误,显然相对路径(…/)就不可靠,可能会出现“HTTP Statu 404”错误,所以使用绝对路径来解决此问题。*回顾:[06]JavaWeb之Servlet基础学习与总结–8.3转发与重定向区别了解URL地址的构成(1)首先根据主机地址找到一个具体的服务器(如Tomcat、JB...原创 2019-08-15 10:58:19 · 929 阅读 · 0 评论 -
3行代码轻松搞定JavaWeb中的的乱码问题,浏览器端、服务器端统一UTF-8字符集!
Web应用中的乱码问题主要对于请求乱码和响应乱码而言。核心代码☟//设置服务器编码<Connector URIEncoding="UTF-8" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/> //设置服务器解码request.setCharacterEncod...原创 2019-08-15 00:38:18 · 1044 阅读 · 0 评论 -
Web应用中常见"HTTP Statu 404"、“Several ports (8005, 8080, 8009) ...”、“Server Tomcat v7.0 ....“总结
改不完的Bug,写不完的需求,就JavaWeb应用常见的问题我进行了总结。1.诡异的“HTTP Statu 404”message后面的资源找不到!分析一:名称不一致分析二:路径有误 已声明所有连接有默认地址,是自己的工程名! 你却在action多加了“/”!以上就是常见的两种。2.启动服务器出现异常 2.1出现“8005,8080,8009” 证明8080...原创 2019-08-14 20:59:01 · 374 阅读 · 0 评论 -
JavaWeb之Servlet(Server Applet)基础学习与总结
1.Servlet作用 因为客户端(html/jsp)无法直接访问java文件。我们需要客户端请求java文件。所以需要特殊的java文件即Servlet。2.Servlet简介 (1)Servlet:即是Server Applet(服务器端小程序)。 (2)狭义&广义 ①狭义:javax.servlet.Servlet接口及其子接口 ②广义:指实现了Serv...原创 2019-08-14 18:54:46 · 491 阅读 · 0 评论 -
JavaWeb之HTTP(HTTP-Hypertext transfer protocol)基础学习与总结
1.HTTP协议简介 HTTP:超文本传输协议(HTTP-Hypertext transfer protocol),属于应用层的面向对象的协议,它是一种详细规定了浏览器和万维网服务器之间互相通信的规则。2.HTTP会话方式 浏览器与服务器之间的通信过程要经历四个步骤: 建立连接–发送请求–做出响应–关闭连接 说明:浏览器与web服务器的连接过程是比较短暂的,每一次连接只处理一个...原创 2019-08-13 23:33:57 · 320 阅读 · 0 评论 -
JavaWeb之环境搭建#Tomcat7.0下载、安装、配置、启动
1.Web服务器1.1.应用Web服务器作用 Web服务器主要用来接收客户端发送的请求和响应客户端请求。1.2.常见Web服务器 ①Tomcat(Apache):当前应用最广的JavaWeb服务器; ②JBoss(Redhat红帽):支持JavaEE,应用比较广EJB容器 (SSH轻量级的框架代替); ③ GlassFish(Orcale):Oracle开发JavaWeb服务器...原创 2019-08-13 20:22:40 · 1621 阅读 · 0 评论 -
JavaWeb之XML(eXtensible Markup Lanuage)基础学习与总结
1.XML简介1.1.定义 XML即可扩展标记语言(eXtensible Markup Lanuage),由W3C组织发布,目前推荐遵守的是W3C组织于2000年发布的XML1.0规范。1.2.XML与HTML区别序号XMLHTML1用来传输和存储数据用来显示数据2无预定义标签,均自定义标签均为预定义标签,无自定义标签3严格区分大小写不区分大...原创 2019-08-13 15:12:15 · 325 阅读 · 0 评论 -
jQuery之常见正则表达式整理与归纳【非常重要】
1.什么是正则表达式?正则表达式是对字符串操作的一种逻辑公式,就是事先定义好的一些特定字符以及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则表达式(Regular Expression)又称规则表达式。2.基本语法<font size=3 color=red>var reg = /^[规则字符]{n,m}$/;</font...原创 2019-08-12 20:21:59 · 2181 阅读 · 0 评论 -
jQuery常用事件#mouseover与mouseout应用案例
mouseover([[data],fn]) 在每一个匹配元素的mouseover事件中绑定一个处理函数。 mouseover事件会在鼠标移入对象时触发mouseout([[data],fn]) 在每一个匹配元素的mouseout事件中绑定一个处理函数。 mouseout事件在鼠标从元素上离开后会触发场景应用: 新建一个“导航栏“,鼠标移入“导航栏”,背景色改变,鼠标移...原创 2019-08-12 19:12:32 · 1753 阅读 · 0 评论 -
jQuery事件冒泡#change(fn)事件结合应用案例--校验用户名是否存在
事件冒泡即当触发内部节点元素时,同时会触发外部与之关联的节点事件。取消事件冒泡:return false; blur(fn):blur()与change()区别: (1)blur(fn):失去焦点,触发每一个匹配元素的blur事件; (2)change(fn):文本改变且失去焦点,触发每个匹配元素的change事件。应用场景: 在一个用户注册登录页面,输入用户名,如果已经存在...原创 2019-08-12 18:48:53 · 2774 阅读 · 0 评论 -
JavaWeb之jQuery基础学习与总结
jQuery是一个兼容多浏览器的、轻量级的JavaScript库。jQuery是继prototype之后又一个优秀的JavaScript库,如今,jQuery已经成为最流行的JavaScript库jQuery,顾名思义,也就是JavaScript和查询(Query),其宗旨是 ——WRITE LESS,DO MORE(...原创 2019-08-11 13:08:52 · 451 阅读 · 0 评论 -
JS如何校验表单用户名、密码是否为空,"return false;"语句又有什么作用?
在系统登录页面,我们常常会用JS去进行校验用户名、密码等信息是否为空的操作,一般就是在校验的文本框中添加id属性,在script标签中申明函数,然后去关联事件,起到一个触发的效果,最后在函数中进行判断条件的书写。逻辑没有多大问题,但是一个细节不到位,就达不到我们理想的效果。比如明明在页面判断条件一旦满足(为空条件)就会有弹窗【警告弹窗】,按理浏览器就会阻止事件继续触发,但却继续跳转了… 其...原创 2019-08-10 00:19:34 · 5318 阅读 · 1 评论 -
JavaWeb之JavaScript基础学习与总结
JavaScipt简介 1995年由Netscape公司在网景导航者浏览器上首次设计而成。Netscape在最初将其脚本语言命名为LiveScript 。后来因为Netscape与Sun合作,网景公司管理层希望它外观看起来像Java,因此取名为JavaScript。 JavaScript是一门客户端脚本语言,主要运行在浏览器中,浏览器中负责运行JavaScript脚本代码的程序叫...原创 2019-08-09 20:45:58 · 602 阅读 · 0 评论 -
JavaWeb之HTML与CSS基础学习与总结
对于一名合格Java开发工程师来说,我们不仅要扎实后端技术,而且还要学习与掌握前端的基础知识,这样在工作开发中,我们才能更好的配合前端人员迅速完成开发任务(解决Bug效率高),这也是我们走向全栈、架构师的必备技能,所以从基础做起、从总结做起,基础学习打卡走起来!1.网页的组成 业界认为“HTMT是名词,CSS是形容词、JS是动词”,我觉得非常形象,日常拿图: HTML:是网页内容的...原创 2019-08-09 00:23:46 · 488 阅读 · 0 评论 -
Java基础&框架核心应用之反射- -类加载【必会必学】
我们在JavaSE时阶段时写java程序,第一步编写类(.java文件)、第二步编译类(.class文件,要么在硬盘上要么在内存中)、第三步运行类(执行.class文件),此时字节码文件加载到JVM内存中,所以此时有类的加载过程。类在内存中生命的周期是加载–>使用–>卸载。1.类什么时候加载? ①当我们主动使用这个类时(比较隐秘); ②当我们通过类加载对象,主动加载某个类...原创 2019-08-08 09:04:31 · 330 阅读 · 0 评论 -
Java基础&框架核心应用之反射-- 类加载器的双亲委托模式
在开发的过程中,我们一定遇到过java.lang.ClassNotFoundException或java.lang.NoClassDefError,为了解决这类问题,或者面对特殊的应用场景,比如需要支持类的动态加载或需要对编译后的字节码文件进行加密解密操作,那么需要我们来自定义类加载器(反编译操作),因此了解类加载器及其类加载机制也就成了每一个Java开发人员的必备技能之一。1.类加载器的作...原创 2019-08-08 09:04:11 · 256 阅读 · 0 评论 -
Map集合之实现类HashMap&Hashtable&TreeMap&LinkedHashMap&Properties浅析
在我们生活中,集合的概念就已经不陌生,比如身份证号对应的就一个人、电脑IP地址对应的就是主机名、学号对应就是一个学生等,其实就是一种一一对应的关系,我们可以认为这就是映射.在Java中就提供了专门的集合类用来存放这种对象(映射)关系的对象,即java.util.Map<K,V>接口>。面向对象大多的思想其实很生活化,只是转成计算机的语言、思想,这需要我们细细琢磨、研究!1....原创 2019-08-05 15:56:11 · 656 阅读 · 0 评论 -
全面瓦解#Java中char型变量到底能不能存储一个汉字问题?
在很多面试题中,都会频率出现一道简答题“在Java中,char型变量中能不能存储一个汉字?”,我们条件反射就会想到Java#8种基本数据类型,常规思维就是char占内存(2个字节),在utf-8中汉字占3个字节,明显不够!有刷题的朋友,显然就知道是可以的!但是大部分人还是知其然而不知其所以然,其实这种习惯不是很好。具体什么情况,我查阅了部分的资料,对常见编码进行了详细的分析,对上述的问题也进行了...原创 2019-08-03 10:55:15 · 1559 阅读 · 0 评论 -
Java8最具革命性新特性之StreamAPI
上一篇总结了Lambda表达式,本篇主要对StreamAPI进行总结归纳,这是Java8中两大最为重要的改变。StreamAPI(java.util.stream)是真正的函数式编程风格引入到Java中。是目前为止对Java类库最好的补充,因为Stream API可以极大提高Java程序员的生产力,让程序员写出高效率、干净、简洁的代码。Stream API 对集合数据进行操作,就类似于使用 S...原创 2019-07-30 09:26:52 · 305 阅读 · 0 评论 -
Java8最具革命性新特性之Lambda表达式
Java8的新特征有很多,在涉及接口的时,我们就接触了接口的静态方法和默认方法,在使用常用类时,我们应用了新版的日期时间API。其实Java8最具革命性的两个新特性:Lambda表达式和StreamAPI。其次就是Optioanl类成功解决最令人头疼的空指针异常的问题。1.什么是函数式编程思想? 在数学中,我们接触到了函数,函数就是有输入量、输出量的一套计算方案,就是“拿什么东西做什么...原创 2019-07-30 00:34:26 · 377 阅读 · 0 评论 -
#使用Arrays调用asList(),add()元素报错“java.lang.UnsupportedOperationException”怎么回事?
JavaSE-集合&Bug篇#使用Arrays调用asList(),添加元素报错“java.lang.UnsupportedOperationException”怎么回事?☟看下面代码,写出打印结果,如果代码有误,找出错误public class ArraysTest { public static void main(String[] args) { List<Strin...原创 2019-07-25 14:58:52 · 525 阅读 · 0 评论 -
收藏|Collection&Map等系列#结构关系图解
收藏|简要介绍集合是Java中提供的一种容器,可以用来存储多个数据。☛Collection 层次结构中的根接口。Collection 表示一组对象,这些对象也称为 collection 的元素。一些 collection 允许有重复的元素,而另一些则不允许。一些 collection 是有序的,而另一些则是无序的。JDK 不提供此接口的任何直接实现:它提供更具体的子接口(如 Set 和 Li...原创 2019-07-24 18:58:08 · 522 阅读 · 0 评论 -
Set<E>之实现类HashSet&TreeSet&LinkedHashSet浅析
参考JDK1.6API(中文版)public interface Set<E> extends Collection<E>一个不包含重复元素的 collection。更确切地讲,set 不包含满足 e1.equals(e2) 的元素对 e1 和 e2,并且最多包含一个 null 元素。正如其名称所暗示的,此接口模仿了数学上的 set 抽象。在所有构造方法以及 a...原创 2019-07-24 00:15:31 · 404 阅读 · 0 评论 -
List<E>之实现类ArrayList&Vector&LinedList&Stack浅析
1.参照JDK1.6API(中文版)我们可以看到List的已知实现类很多,在我们的学习、工作中,常见的、常用的有ArrayList、Vector、LinedList、Stack这四个类。似乎在开发过程,我们大多时候就是用到List,就会想到ArrayList,大家有没有这种感想,源码不熟练,就会只知其然不知所以然,接下来我会从上面说的四个实现List接口的常用类浅谈下它们的区别,希望这次分享能够...原创 2019-07-23 10:20:45 · 399 阅读 · 0 评论 -
迭代器-foreach&Iterator的联系与区别
Java集合遍历|foreach与Iterator的联系与区别在程序开发中,经常需要遍历集合中的所有元素。针对这种需求,JDK专门提供了一个接口java.util.Iterator。Iterator接口也是Java集合中的一员,但它与Collection、Map接口有所不同,Collection接口与Map接口主要用于存储元素,而Iterator主要用于迭代访问(即遍历)Collection中...原创 2019-07-22 22:16:22 · 1418 阅读 · 1 评论 -
多线程入门基础#Thread类的构造方法与常用方法
JavaSE高级应用- -【你了解?】Thread类的构造方法与常用方法基础概念线程 是程序中的执行线程。Java 虚拟机允许应用程序并发地运行多个执行线程。每个线程都有一个优先级,高优先级线程的执行优先于低优先级线程。每个线程都可以或不可以标记为一个守护程序。当某个线程中运行的代码创建一个新 Thread 对象时,该新线程的初始优先级被设定为创建线程的优先级,并且当且仅当创建线程是守护...原创 2019-07-21 10:54:29 · 1263 阅读 · 0 评论