Web
文章平均质量分 96
抠脚的大灰狼
这个作者很懒,什么都没留下…
展开
-
Spring系列开篇 — 核心功能IoC和AOP 知识点总结
文章目录IoC配置注册beanXML注解装配bean高级装配环境与Profile条件化bean处理歧义性AOP配置术语使用XML注解事务支持使用XML注解本文是对Spring的2大核心功能——IoC和AOP 的总结提炼,并增加了【环境profile】和【条件化bean】的内容。篇幅较短,更像是一个大纲,或者思维导图。若有不完善或纰漏的地方,请各位大佬斧正。主要参考资料为:《Spring实战》(第四版)IoC配置注册beanXML<bean>标签属性idclassinit原创 2021-04-11 19:21:17 · 799 阅读 · 3 评论 -
Spring系列开篇 — 核心功能 IoC, AOP (附事务管理,spring与mybatis整合等)
文章目录概述重要概念快速入门基本使用纯XMLIoC配置DI配置构造函数注入set方法注入c命名空间和p命名空间XML+注解IoC配置DI配置纯注解IoC配置Spring整合JUnit4SpringAop术语介绍JDK动态代理示例CGLib动态代理示例使用快速上手切入点指示器AOP参数传递事务支持XML方式XML+注解纯注解小结附录IoCAOPbean的生命周期这篇文章是Spring系列笔记的开篇,介绍了Spring的两大核心功能:IoC和AOP。以及基于AOP的事务管理,Spring与mybatis的整合原创 2021-04-09 00:32:52 · 1042 阅读 · 8 评论 -
Mybatis Plus 看这篇就够了,通俗易懂,一发入魂
文章目录快速入门注解小结mp的默认行为排除非表字段核心功能CRUD接口Mapper CRUD接口Service CRUD 接口条件构造器使用示例其他Condition构造Wrapper时传入实体allEq方法lambda条件构造器其他CRUD接口说明selectMapsselectObjsselectCount自定义SQL原生mybatisMybatis-plus分页查询更新操作反思删除操作AR模式主键策略主键策略小结配置基本配置进阶配置小结代码生成器Mybatis plus 是一款Mybatis增强工具原创 2021-03-24 23:30:49 · 11507 阅读 · 25 评论 -
重学JavaWeb —— JSP,简单全面一发入魂
文章目录JSP特点由来本质使用JSP指令pageincludetaglibJSP脚本JSP内置对象JSP作用域EL表达式EL内置对象EL取值方式JSP动作元素JSTL标签库配置使用JSPJava Server Page特点是一种动态资源(不要将JSP等同于HTML,jsp实际并不是静态的页面文件)运行在服务端本质是Servlet由来为什么有JSP?在早期的JavaWeb开发时,程序员需要在Servlet中手动拼接HTML标签和动态的数据,如下@WebServlet(urlPatter原创 2021-01-25 11:15:12 · 557 阅读 · 0 评论 -
重学JavaWeb —— Servlet,简单全面一发入魂
文章目录Servlet概述基本使用两个重要对象请求转发会话技术CookieSession对比小结其它相关对象ServletContextServletConfig过滤器概述使用配置参数注意应用场景监听器Servlet概述狭义地说,Servlet就是定义在JavaEE规范中的一个接口,javax.servlet.Servlet,参见JavaEE的API文档package javax.servlet;import java.io.IOException;public interface Serv原创 2021-01-25 11:10:24 · 349 阅读 · 0 评论 -
重学JavaWeb —— HTTP协议与抓包实操,保姆级笔记
a原创 2021-01-07 15:25:22 · 884 阅读 · 3 评论 -
Jdbc笔记 —— 数据库设计范式与案例
文章目录数据库设计多表之间的关系三大范式概念分类第一范式(1NF)第二范式(2NF)第三范式(3NF)案例数据库设计多表之间的关系关系分类一对一如人和身份证。一个人只有一个身份证一对多如学生和院系。一个学生属于一个院系,而一个院系有很多个学生多对多如学生和课程。一个学生可以选择多门课程,一门课程也可以被多个学生选择实现关系一对多在多的一方,建立外键字段,指向一的一方的主键。如在学生表中建立外键字段dep_id,指向院系表中的主键id多对多建立一个中原创 2020-05-17 20:09:56 · 327 阅读 · 0 评论 -
Jdbc笔记 —— SQL基础与数据库约束
文章目录SQLSQL通用语法SQL分类DDLDMLDQL基础查询条件查询排序查询聚合函数分组查询分页查询约束非空约束唯一约束主键约束外键约束SQL定义了一种操作所有关系型数据库的标准规则每一种关系型数据库操作的方式存在一些差异,称为“方言”(Dialect)比如MySQL特有的LIMIT关键字SQL通用语法以分号结尾SQL不区分大小写,建议关键字用大写注释-- 这是注释 :单行注释# 注释 :mysql特有的单行注释/* 多行注释 */SQL分类DDL:用来操作数据库和原创 2020-05-17 20:03:33 · 509 阅读 · 0 评论 -
Jdbc笔记 —— 数据库与MySQL基础
文章目录数据库基本概念MySQL安装MySQL卸载MySQL配置MySQL登录MySQL退出MySQLMySQL的目录结构安装目录数据目录数据库基本概念什么是数据库?用于存储和管理数据的仓库 (Database)数据可以存储在内存中,也可以存储在硬盘中。存储在内存中的数据,电脑一掉电关机,数据就丢失了;而存在硬盘上的数据,则可以持久化的保存。数据库的特点可以持久化存储数据。数据库其实就是一个文件系统。方便存储和管理数据使用了统一的方式来操作数据库 —— 即SQL标准常原创 2020-05-17 19:57:22 · 269 阅读 · 0 评论 -
Jdbc笔记 —— Spring的JdbcTemplate
文章目录JdbcTemplate使用步骤导入Spring的jar包创建JdbcTemplate对象使用JdbcTemplate代码示例JdbcTemplateSpring对Jdbc操作做了封装,提供一个较为简单的实现 —— JdbcTemplate,使得开发人员的Jdbc操作更加简单方便使用步骤导入Spring的jar包<properties> <java.version>1.8</java.version> <spring.versi原创 2020-05-15 00:04:27 · 280 阅读 · 1 评论 -
Jdbc笔记 —— 数据库连接池
文章目录数据库连接池概念好处实现连接池使用方法具体的连接池技术c3p0druiddbcp数据库连接池概念使用基本的Jdbc进行操作时,每次执行Sql后要申请一个Connection对象,执行完毕后又释放掉,这样很消耗性能。所以使用池化技术,每次访问数据库,从连接池中取出一个Connection对象,访问完毕后,将Connection对象归还给连接池好处避免频繁的创建和销毁Connection对象,提高性能方便对Connection对象进行统一的管理实现Jdbc标准中定义了一个接原创 2020-05-14 23:59:34 · 472 阅读 · 0 评论 -
Jdbc笔记 —— 基本概念
文章目录JDBC的基本使用步骤JDBC的各个对象JDBC的基本使用步骤导入驱动jar包加载驱动的Class类文件获取数据库链接对象定义sql语句设置参数,执行sql获取结果释放资源典型的代码示例如下:Class.forName("com.mysql.jdbc.Driver");Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/db1","root","root");String s原创 2020-05-14 23:53:33 · 249 阅读 · 0 评论 -
ThreadLocal在链路追踪中的应用(引子)
最近在公司负责系统的链路追踪问题。公司的部分服务已经有了一个基本的实现,大概的原理是,当一个请求到达系统的最前端模块(一般是API网关)时,通过AOP切面进行拦截,用uuid或者snowflake等技术,生成一个唯一id(为简化书写,后文称之为cid,即correlationId),并将cid设置到request的header中,再放行这个request。而由于各个服务,在收到请求时,都会将请求信息输出到日志文件。如此,一个服务在收到请求,和对请求做出响应时,cid都会伴随着request对象,被输出到日志原创 2020-05-13 22:40:17 · 933 阅读 · 0 评论 -
Servlet笔记 —— JavaWeb三大组件 Servlet,Filter,Listener
文章目录JavaWeb三大组件Servlet(前面已经说过)Filter概念快速入门Filter的细节Filter的案例ListenerJavaWeb三大组件Servlet(前面已经说过)Filter概念当访问服务器资源时,过滤器可以对请求进行拦截,并完成一些特殊的功能。比如可以用过滤器来对请求统一设置编码,进行登录验证,过滤敏感词汇等。过滤器一般用来完成一些通用的功能快速入门编写Filter的步骤定义一个类,实现Filter接口重写接口的方法配置Filter(主要是配置拦截原创 2020-05-13 21:41:20 · 297 阅读 · 0 评论 -
Servlet笔记 —— MVC开发模式与三层架构
文章目录MVC开发模式JSP演变历史MVC优点缺点MVC开发模式JSP演变历史早期只有Servlet,没有JSP,这样只能使用response输出标签数据,得手动拼接HTML和全部数据,非常之痛苦,如下图后来SUN公司推出了jsp,开发者可以直接在HTML页面中编写动态的java代码去获取数据,简化了Servlet的开发(实际把数据和html标签的组装这一工作,交给了jsp自动去做,本质没变,下图是tomcat运行时,访问jsp页面时,在tomcat的work目录下自动生成的jsp对应的java原创 2020-05-12 20:49:49 · 818 阅读 · 0 评论 -
Servlet笔记 —— JSP,EL表达式,JSTL标签
文章目录JSPJSP脚本JSP内置对象(一共有9个)JSP指令EL表达式JSTLJSPJava Server Page一个特殊的页面,等于HTML+java代码运行在服务端,实际不是页面,Tomcat中有一个用于处理url-pattern为 *.jsp的请求,会找到对应的jsp文件,将jsp文件转换成servlet类,在这个servlet中处理数据,并完成数据和html的组装,最后返回给浏览器一个组装完成的静态HTML页面用于简化书写JSP脚本<% code %> : 最原创 2020-05-12 20:42:07 · 323 阅读 · 0 评论 -
Servlet笔记 —— 会话技术(Session和Cookie)
文章目录会话技术Cookie使用步骤实现原理Cookie的细节Cookie的共享问题?Cookie的特点和作用Cookie使用案例:记录上一次的登录时间Session原理细节特点Session使用案例:校验验证码Cookie和session区别会话技术会话:一次会话中包含多次请求和响应一次会话:浏览器第一次给服务器发送请求,会话建立,直到有一方断开为止功能:在一次会话范围内,共享数据。由于Http是无状态的,每次请求之间是相互独立的。若要在多次请求之间,进行数据共享,就只能使用会原创 2020-05-12 20:37:46 · 436 阅读 · 0 评论 -
Servlet 笔记 —— ServletContext与文件下载
文章目录ServletContext案例:文件下载ServletContext概念:代表整个web应用的上下文功能获取MIME类型MIME:互联网通信过程中定义的文件数据类型格式:大类型/小类型比如 text/html image/jpeg获取:String getMimeType(String file)作为域对象,共享数据getAttribute(String name,Object value)setAttribute(String nam原创 2020-05-12 20:23:42 · 280 阅读 · 0 评论 -
Http协议与中文乱码
文章目录HTTP协议特点历史版本请求消息的数据格式响应消息的数据格式中文乱码问题HTTP协议特点基于TCP/IP是应用层的协议,定义了服务端和客户端通信时,发送的数据的格式默认端口是80是基于请求/响应模型:一个请求对应一个响应无状态:每个请求之间相互独立历史版本1.0 :每次请求i昂应都会建立新的连接1.1:可以复用连接请求消息的数据格式请求行请求方式:HTTP协议中有7种请求方式,常用的有2种GET:请求参数在请求行中,在url后面请求的url长度有限制原创 2020-05-12 20:03:37 · 530 阅读 · 0 评论 -
Servlet笔记(持续更新)
Tomcat只实现了Servlet/JSP,它被称为轻量级容器,JBoss,WebLogic等实现了JavaEE的全部13种规范,被称为重量级容器。可以在server.xml中将Tomcat的端口设为80,这是Http协议的默认端口。如以来,访问Tomcat中的web服务,可以不用输入端口号。在Tomcat中部署项目的几种方式直接将项目文件夹放到webapps目录下,项目文件夹的访问路径,就是虚拟目录=> 简化部署:可以将项目文件夹压缩打包成war,将war放到webapps下,tomca原创 2020-05-09 12:56:53 · 225 阅读 · 0 评论 -
JavaWeb基石之——Servlet
最近一段时间,老是觉得学不爽,焦虑而急躁。归根到底,是没有一个较好的学习路径。像是还没学会走,就想飞一样。学习,还是要按照一定的路径,一步一步来。才能学的扎实,走的稳重。以实践为指导,输出倒逼输入,才能学的更有意义,也让知识消化的更彻底。而不是一味地为了学习而学习。就像很多人一上来就想着如何去阅读Spring源码,为什么呢?因为这样能在面试时让面试官高看自己一眼呀,很多公司现在招聘都会要求面试者阅读过什么什么源码。源码阅读没有错,也是一个想要在技术上深耕的人的必经之路。只是它应该往后放,学习不应该这么浮原创 2020-05-09 11:56:10 · 478 阅读 · 1 评论