前言
本篇博客是Java开发的合集文章,内容涵盖了Java基础相关的博客,JavaWeb开发相关的博客,并且给出了小项目的案例。
目录
- 前言
- 引出
- Java基础
- 1、基本数据类型
- 2、数组和集合List
- 3、运算符
- 4、逻辑控制
- 5、IO流
- 6、面向对象初步
- 7、数据库入门
- 8、JDBC
- 9、Java中的异常
- 10、匿名内部类到函数式编程
- Java控制台项目
- JavaWeb开发
- 1、Maven入门
- 2、web基础知识
- 3、Tomcat入门
- 4、session和cookie
- 5、转发和重定向
- 6、同步登录注册+分页+增删改查
- 7、异步登录注册+分页+增删改查
- 8、请求和响应+网页状态码
- Spring框架入门
- 前端相关知识
- JavaWeb项目
- 总结
引出
1.Java基础,从入门到深入,基本数据类型到JDBC,函数式编程… ;
2.JavaWeb开发,从Maven到Tomcat到Spring;
Java基础
1、基本数据类型
Java基础(1)——数据类型&包装类,引用类型String&StringBuilder,正则表达式,定点数,日期类
内容摘要:
-
1.数据类型在Java/c/c++等语言中有,在python中没有,用来分配一定大小的数据空间,从而达到优化运行速度的目的。
思考:python慢是不是有这个原因? -
2.String的是怎么创建的,为什么==不能用来比较比较字符串相等。
-
3.包装数据类型Integer,商业项目的BigDecimal。
-
4.正则表达式
2、数组和集合List
Java基础(2)——数组[] & 集合List,函数式编程Lamda表达式
内容摘要:
- 用来存储多个元素,是一个容器;
- List可以使用lamda表达式;
3、运算符
Java基础(3)——算术 | 逻辑 | 位运算符,三元运算符 & Scanner使用
编程语言用于处理数据,有算术运算符,逻辑运算符,位运算符,还有一种三元运算符
- 数学运算符:要进行数学运算(+,-,*,/,%【取余】,++,—),先乘除后加减,有()先算(),++和—看位置和是否赋值
- 赋值运算符:将结果或者值赋值给变量(=,+=,-+,*=,/=,%=)
- 比较运算符:比较内容(>,<,>=,<=,!=,==)结果都是boolean,如果比较的是字符串,用equals比较
- 逻辑运算符:连接比较运算符的(&&,||,!),短路效应【&和|可以为一个符号,一个符号代表相同含义,但是不具备短路效应】
- 三元运算符:根据结果执行不同的内容(?:),?前表示要判定的条件,:前是结果为true时得到的结果,:后是结果为false时得到的结果
4、逻辑控制
Java基础(4)——逻辑控制 分支,循环,try…catch,递归 & break, continue, return
条件,循环,异常获取try-catch,递归,逻辑控制语句
5、IO流
Java基础(5)——IO流+输入和输出 & Java中的IO流 & 项目应用初步
内容摘要:
- 1.JAVA的IO流用于文件的交互,输入输出的概念;
- 2.绝对路径,相对路径,主要API;
- 3.如何找一个文件夹下的所有文件,递归的思想;
- 4.IO流在项目中的应用
6、面向对象初步
Java基础(6)——架构迭代–从面向过程到面向对象,到IO流再到数据库
内容摘要:
- 1.为什么要从面向过程到面向对象;
- 2.为什么要从IO流要到数据库;
7、数据库入门
SQL学习(1)——数据库概念+单表SQL查询+多表SQL查询
SQL进阶(2)——SQL语句类型 & 增删改查CRUD & 事务初步 & 表关联关系 & 视图 +索引
内容摘要:
- 1.SQL语句的类型,数据操作语句,数据查询语句;
- 2.MySQL的运算符,常用函数,增删改查CRUD语法;
- 3.数据操作的事务:原子性,一致性,隔离性,持久性;
- 4.数据库表关联关系,一对一,一对多,多对多;
- 5.视图,索引;
8、JDBC
Java基础(7)——java连接SQL数据库 & 单例封装数据库
内容摘要:
- 1.Java如何连接数据库;
- 2.注入漏洞的问题,以及防止;
- 3.单例封装数据库的三种方法;
9、Java中的异常
Java基础(8)——java的异常机制初步 & 异常的捕获和处理 & 自定义异常
java异常机制初步
10、匿名内部类到函数式编程
Java基础(9)——从匿名内部类 到 函数式编程Lamda表达式 & List的函数式编程案例
从匿名内部类到函数式编程的进化
Java控制台项目
Java基础(项目1)——项目设计分层 & dao + service + test +ui + exception + log + util
Java基础(项目2)——项目案例:控制台的一个云就业平台项目【应聘+招聘】
Java基础(项目3)——【源码】控制台的类似BOSS招聘的一个应聘者用户和公司用户的就业项目【应聘+招聘】
JavaWeb开发
1、Maven入门
Java基础(maven)——maven新建项目 & 常用IO工具 & Durid数据库工具 & 案例
【配置】Maven的配置 & Tomcat的配置 & 在IDEA中新建Tomcat web项目
内容摘要:
- 1.maven的作用,及其配置,新建maven项目方法;
- 2.常用的IO工具,读取文件的方法,读取到成字符串行;
- 3.durid数据库连接工具,查询的方法,query;
2、web基础知识
Java网络开发(Tomcat)—— Servlet学习 & Web相关背景知识 + 网页状态码(304) & JavaWeb项目初步
内容摘要:
- 1.tomcat搭建web项目初步,xml配置文件设置;
- 2.JavaWeb项目静态、动态文件存放,及其访问链接分析;
- 3.Servlet的创建和访问,访问路径分析,@WebServlet实现;
- 4.servlet启动异常原因分析;
- 5.网页状态码解析;
3、Tomcat入门
Java网络开发(Tomcat)—— web的 请求request (post和get请求)和 响应response + 【案例】表格显示在网页
内容摘要:
- 1.请求request,两种请求方式get和post;
- 2.响应,重定向,值不同享,地址变化;
- 3.转发,共享值,地址不变,内部转发,无需上下文;
- 4.jsp显示表格,本质是servlet,转发;
- 5.请求和响应的路径梳理,前端路径;
- 6.请求和响应分析,了解完整的请求和响应;
Java网络开发(Tomcat)——遇到的 bug 汇总(持续更新)
4、session和cookie
Java网络开发(Session)—— 从http请求 到 cookie 到 session & 用 session控制 删改数据的权限
内容摘要:
- 1.http请求是无状态的,因此出现了cookie;
- 2.cookie不安全,里面的值可以被随便改;
- 3.用cookie里的JESSIONID值对应服务的session存储空间;
- 4.在服务器的这个空间里保存信息,记录登陆成功的user;
- 5.在删改时,每次浏览器请求,cookie也会发给服务器,服务器用cookie里的JESSIONID找到对应的session区域,然后再找到这个session中的用户信息,就能控制删改权限;
5、过滤器
Java网络开发(Filter过滤器)—— tomcat的过滤器 & 编码控制 + 网页权限控制
内容摘要:
- 1.过滤器可以拦截浏览器的请求,让请求不能进入服务器,或者经过过滤器的doFilter后放行;
- 2.过滤器实现全局编码控制,记得放行;
- 3.过滤器进行权限控制,(1)不登录就可以访问的资源直接放行;(2)登陆后才能访问:如果没登录,去登陆页面;如果登陆了,就放行;
5、异步请求Ajax
Java网络开发(Asynchronous异步)—— 从 Jsp 到 Ajax 的 axios 到 vue & 同步请求 到 异步请求
内容摘要:
- 1.之前用jsp请求存在的问题,同步请求;
- 2.异步请求Ajax是啥;
- 3.axios的get和post方法,用axios实现异步请求;
- 4.vue框架的出现和入门
5、转发和重定向
Java网络开发(servlet思考)——什么时候用转发,什么时候用重定向 & 请求request,响应response
内容摘要:
- 0.异步请求axios为例—响应必须是response
- 1.转发用request,记得加上.forward(req, resp);
- 2.重定向用response,记得加上上下文,req.getContextPath();
- 3.转发和重定向的选择本质是和业务有关;
- 4.如果要共享值,就得使用request的转发;
- 5.用户相关的操作大部分用重定向;
- 6.图书相关的操作,需要共享值,用转发,不需要共享就可以用重定向;
6、同步登录注册+分页+增删改查
Java网络开发(Tomcat同步登陆+注册)—— 登陆 和 注册功能 的实现 & 从html 到 jsp 迭代升级 & session保存登陆信息
内容摘要:
- 1.验证用户名密码正确:通过username查一条信息出来,对比密码;
- 2.用jsp文件代替html文件实现共享msg的提醒,比如用户名|密码不正确;
- 3.用验证码的方式防止不断注册,点击图片自动更细;
- 4.注册成功后再跳转到登陆页面—重定向;
- 4.用session空间保存登陆成功的用户对象;
Java网络开发(Tomcat同步数据分页)—— 用Jsp语法 到 实现数据的分页展示 到 只看自己的数据 + 模糊查询 & 迭代升级
内容摘要:
- 1.jsp本质是servlet,param.回传,获取session用sessionScope;
- 2.jsp的循环和分支语句,三元表达式,常见报错及解决;
- 3.数据分页显示的解决方案,用PageInfo实体类实现;
- 4.模糊查询,每页条数,页面跳转 要全部回传到后端;
- 5.用session结合sql语句实现只能看自己的数据;
Java网络开发(Tomcat同步数据增删改查)—— 用Jsp语法实现同步请求的 增删改查
内容摘要:
- 1.通过servlet共享值再转发到jsp实现数据的增加和修改;
- 2.增加,删除,修改完成后都要再回到list页面;
- 3.通过session可以控制数据的删改权限;
7、异步登录注册+分页+增删改查
Java网络开发(Tomcat异步登陆+注册)——登陆和注册功能 的 迭代升级 & 从Jsp到JavaScript + axios + vue & 诸多bug & 同步到异步
内容摘要:
- 1.vue+axios前端固定格式,后端必须用resp.getWriter().write() ;
- 2.localStorage的应用,保存登陆成功的用户名;
- 3.登陆和注册功能的异步实现,JavaScript + axios + vue + resp;
- 4.遇到的诸多bug汇总,
Java网络开发(Tomcat异步分页+增删改查)——从同步到异步 & 从jsp 到 js + axios + vue 实现 数据分页显示 & 数据增删改查
从同步到异步 & 从jsp 到 js + axios + vue 实现 数据分页显示 & 数据增删改查
8、请求和响应+网页状态码
JavaWeb【总结】——(请求和响应)浏览器发送请求的方式 & 服务器响应的方式
【总结】网页状态码——200正常、302重定向、304客户端有缓存、400浏览器请求传参异常、404未找到、405方法不允许、415不支持的媒体?、500服务器异常 & 跨域
Spring框架入门
-
Spring基础(核心容器)——从配置文件到注解开发 & 创建对象+成员变量赋值IOC & 增强方法AOP
-
Spring基础(Web-MVC)——在idea中新建springWeb项目 & 浏览器请求 和 服务器响应 & SpringMvc文件相关
-
Spring基础(Data Access数据库)——Spring+SpringMVC & 集成mybatis & 拦截器
前端相关知识
-
前端基础(HTML)——html介绍 & 常用标签 & 几个案例
-
前端基础(CSS)——css介绍 & 常用样式 & 案例—进化到Bootstrap——进化到Element-UI
-
前端基础(JavaScript)——基础语法(变量,分支…)& Json对象【重要】& 函数定义 & 事件
-
前端基础(Vue)——基础语法({{}}, v-model, :src=“imagSrc“, v-for)& 事件@click & 属性和方法(this.add() + this.name)
JavaWeb项目
JavaWeb项目【SpringBoot】——图书项目4.0【源码】:SpringBoot版本 & springboot相关技术 & 项目应用
SpringBoot小项目——简单的小区物业后台管理系统 & 认证鉴权 用户-角色模型 & AOP切面日志 & 全局异常【源码】
总结
1.Java基础,从入门到深入,基本数据类型到JDBC,函数式编程… ;
2.JavaWeb开发,从Maven到Tomcat到Spring;