- 博客(47)
- 收藏
- 关注
原创 MyBatis之测试添加功能
每当我们去调用mapper接口中的方法,他就根据我们的mapper接口找到映射文件,然后根据当前调用的方法找到我们的sql语句增删改受影响的是行数。当sql语句执行成功后,但在数据库中没有添加数据。这里是(transactionManager)事务管理器,type=JDBC表示用u最原始的JDBC方式来管理事务,所以说现在事务的提交或者回滚都需要手动处理,即造成在数据库中没有添加数据。
2025-06-05 19:20:42
915
原创 Mybatis--创建mapper接口
MyBatis中的mapper接口相当于以前的dao(原来的dao是有dao的接口以及dao的实现类)。但是区别在于,mapper仅仅是接口,我们不需要提供实现类。因为我们的mybatis里面有面向接口编程,只需要创建mapper接口,当我们通过mybatis中的方式去创建mapper接口的对象,然后调用这个接口中的方法,就会自动对应某个sql语句,并且执行。接下来创建mapper接口,表,实体类1.
2025-06-03 18:45:48
871
原创 mvc-review
如果这句话出现在servlet类中,也就是说fruitService是一个成员变量,那么这个fruitService的作用域(生命周期)应该就是这个servlet实例级别。1)之前在Servlet中,我们创建Service对象,FruitService fruitService = new FruitServiceImpl();1)之前我们在控制层出现代码是这样写FruitService fruitService = new FruitServiceImpl();模型有很多种类:数据访问模型(DAO);
2025-05-19 00:29:40
1018
原创 mvc-ioc实现
层内部的组成应该是高度聚合的,而层与层之间的关系应该是低耦合的,最理想的状态是0耦合。就比如上诉的Controller层必须依赖于Service层,Service层依赖于Dao。下一步我们准备在项目启动的时候,系统就会把三个组件准备好(放在一个容器里面)然后在当前的配置文件中配置了三个bean:这三个bean其实就对应三个组件。接下来最简单的要求就是Service删掉了,Controller不报错。在软件系统中,层与层之间存在依赖。我们系统架构或者设计的一个原则是:高内聚低耦合。谁想要的时候就主动给谁。
2025-05-19 00:10:20
414
原创 mvc-service引入
4、像系统消息表新增一条新记录,新用户注册,根据新用户通讯录向他的联系人推送消息--Dao中的insert操作。3、像用户积分表添加一条新记录,用户默认初始化积分为100--Dao中的insert操作。模型层:模型分为很多种:有比较简单的pojo/vo(value object),业务模型组件,有数据访问层组件。比如注册功能:内部包含了多个Dao方法,注册这个功能需要多个Dao方法的组合调用,从而完成功能。2)BO中的方法属于业务方法,也实际的业务是比较复杂的,因此业务方法的粒度是比较粗的。
2025-05-15 18:09:18
595
原创 servlet-api
1、再次学习Servlet的初始化方法2、学习Servlet中的ServletContext和<context-param>3、什么是业务层4、IOC5、过滤器。
2025-05-13 10:16:58
681
原创 mvc-review
另外,我们需要考虑参数的类型问题,需要做类型转化的工作。3、在上一个版本中,Servlet中充斥着大量switch-case,试想以下,随着项目业务规模扩大,那么会有大量switch-case冗余。因此,我们在servlet中使用了反射技术,我们规定operate的值和方法名一致,那么接收到operate的值是什么就表明我们需要。3) 根据获取到的operate的值定位到FruiteController中需要调用的方法。1.最初的做法:一个请求对应一个servlet,这样存在的问题是servlet太多了。
2025-05-06 21:22:56
455
原创 servlet-优化
在服务器端有很多的serlvet组件,用户会发送请求,而servlet又会访问DAO组件,DAO组件又去调用数据库DB,从数据库查询的数据再依次返回给Servlet,然后Servlet经过Thymeleaf等进行渲染响应给客户端。但这种基础的请求方式会显得服务器端繁琐,下列进行初步修改。
2025-04-24 22:10:31
492
原创 servlet-保存作用域
page(一般不用了) 、request(一般请求响应范围)、session(一次会话范围)、application(整个应用程序范围)3)application:整个应用程序范围。1)request:一般请求响应范围。2)session(一次会话范围)
2025-04-21 16:12:49
259
原创 servlet-thymeleaf略写
进而(Index)servlet(发请求)会去调用下面的FruitDaoImpl组件,而FruitDaoImpl组件内部又会去调用BaseDAO(组件)方法。案例: 当客户端第一次发请求给服务器端的index,服务器端有一个组件叫IndexServlet中的service()-->doGet()会进行响应,---->流程总结:第一次用户发请求index,IndexSrevlet这个组件会响应,然后他会去调用DAO里面的方法,thymeleaf--->(render);2)在web.xml文件中配置。
2025-04-21 14:36:47
423
原创 servlet-服务器内部转发和客户端重定向
张医生拿着刀过来一看,我是脑壳医生做不了这个--->于是张医生立即向李医生求组,让李医生完成这台手术。对于小明而言,他的手术完成了,但是内部谁完成的,对于小明而言他不知道,他只知道是张医生给他做的手术。--- 一次请求响应的过程,对于客户端而言,内部转发多少次,客户端是不知道的。小明腿疼,需要开刀 ---> 跑到医院,躺在手术台上准备动手术。小明腿疼,需要开刀 ---> 跑到医院,躺在手术台上准备动手术。--- 两次请求响应的过程,客户端肯定知道请求URL有变化。--- 浏览器地址栏没有变化。
2025-04-19 10:42:51
412
原创 servlet-session
session会话1)Http是无状态的- HTTP 无状态 :服务器无法判断这两次请求是同一个客户端发过来的,还是不同客户端发过来的- 无状态带来的现实问题:第一次请求是添加商品到购物车,第二次请求是结账;如果两次请求服务器无法区分是同一个用户,那么就会导致混乱第一次请求session是在response Heads当中的,再次请求后session跑到了request Heads(补充;Cookie将数据存储在客户端,session则存储在服务器端)2)会话跟踪技术。
2025-04-19 09:09:21
581
原创 servlet-HTTP协议
3)响应体:响应的实际内容(比如请求add.html页面时,响应的内容就是<html><head><body><form>..)2)请求头(key:value)包含客户端告诉服务器的信息,比如:我的浏览器版本、我能接受的内容类型、内容的长度等。1)请求行--》展示当前请求的最基本信息:1.请求的方式,2.请求的URL(路径),3.请求的协议。1)响应行包含三个信息:1.协议,2.响应状态码(200),3.响应状态(OK)响应也有三部分:1.响应行;3)Http请求响应包含两个部分:请求和响应。
2025-04-18 17:08:31
288
原创 javaweb-servlet-继承关系以及service方法、servlet生命周期
1.Servlet的继承关系1.继承关系 三者可以根据ctrl+鼠标左键进入javax.servlet.Servlet接口:(下面有个抽象类)javax.servlet.GenericServlet抽象类(这个抽象类又包含了)javax.servlet.Http.HttpServlet抽象子类(也是个抽象子类)2.相关方法javax.servlet.Servlet接口:void init(config)--初始化方法。
2025-04-18 16:48:19
750
原创 JavaWeb-CS和BS的异同点
(一部分要去不高的计算任务存储任务放在客户端执行,不需要把所有的计算和存储都在服务器端执行,从而减轻服务器端的压力,也能减轻网络负荷。缺点:所有的计算任务存储任务都是放在服务器端,它的负荷较重;在服务器端计算完成后把结果再传输给客户端,因此客户端与服务器端会进行非常频繁的数据通信,从而网络负荷较重。优点:充分利用客户端机器的资源,减轻服务器端的负荷。升级维护成本较高(简单的);优点:客户端不需要安装;CS:客户端服务器架构模式。BS:浏览器服务器架构模式。
2025-03-05 09:19:59
306
原创 java全栈day16--Web后端实战(数据库)
安装好了进行Mysql连接连接语法:win+r输入cmd,在命令行中再输入mysql -uroot -p密码方法二:win+r输入cmd,在命令行中再输入mysql -uroot -p回车之后再输入密码,这样就不会暴露密码,更安全Mysql企业版的说明连接远程的数据库:mysql -hxx.xx.xxx.xx -P3306 -uroot -p(需要额外添加两个参数)-h指定连接哪台数据库,-P指定连接数据库的端口号是多少。
2024-12-16 18:49:28
502
原创 java全栈day14-后端Web实战3
现在介绍一下解耦解耦的思想:咱们这里有一个实现DeptServicelmpl1,咱们编写的程序当中controller层去调用Service层,-旦new这个对象:contrlger层就和Seryice层耦合了。势必会用到Service层的对象,要什么对象直接new一个对象(DeptServicelmpl1),
2024-12-11 17:39:10
558
原创 开启第二阶段---蓝桥杯
的范围,就会发生溢出错误。为了避免这个问题,可以将数字表示为。(我一开始看了半天不知道为啥出错,明明很简单哈哈)对于这道题我想要记录的是Java中的整数默认是。类型,方法是在数字后面加上。今天是刚开始,一天一道题。类型,如果数值超出了。怎么转化的我也记录一下。
2024-12-10 21:34:13
416
原创 java全栈day11--后端Web基础(基础知识)之SpringBootWeb入门
请求过来先到DispatcherServlet,但它并不负责处理请求,它会将这次请求交给我们编写的程序Conreoller处理,Conreoller处理完后再给浏览器响应数据。
2024-12-02 20:09:58
565
原创 java全栈day10--后端Web基础(基础知识)之续集
一、Servlet执行流程二、Http协议(相对Tomcat和servlet重要一点)2.1Http-概叙2.2Http-请求协议2.2.3请求数据格式
2024-11-28 00:32:51
513
原创 java全栈day08-后端Web基础-Maven基础之测试
测试:是一种用来促进鉴定软件的正确性、完整性、安全性和质量的过程。阶段划分:单元测试、集成测试、系统测试、验收测试。测试方法:白盒测试、黑盒测试 及 灰盒测试。
2024-11-04 12:30:00
497
原创 java全栈day07-后端Web基础-Maven基础
Maven 是一款用于管理和构建 Java 项目的工具。作用:(提供jar包,跨平台,不同软件使用(IDEA、Eclipse等))导入jar包方式不同简单来说:(1)方便的依赖管理(2)统一的项目结构(3)标准的项目构建流程。
2024-11-03 16:57:45
487
原创 java全栈day06-前端Web-Vue-基础2
(1) 数据交换:通过 Ajax 可以给服务器发送请求,并获取服务器响应的数据。(2)异步交互:可以在不重新加载整个页面的情况下,与服务器交换数据并更新部分网页的技术,如:搜索联想、用户名是否可用的校验等等。
2024-10-29 17:51:53
339
原创 java全栈day04-前端Web-javaScript3
一、JS-事件监听-语法内容展示代码展示二、JS-事件监听-常见事件内容展示(click鼠标点击事件用的多,其他前端用的多)代码展示三、JS-事件监听-案例1实现表格隔行换色效果表单校验效果实现
2024-10-17 21:40:24
264
原创 java全栈day03-前端Web-javaScript2
介绍:函数( function )是被设计用来执行特定任务的代码块,方便程序的封装复用。1. 定义: JavaScript 中的函数通过 function 关键字进行定义,语法为:2. 调用:函数名称 ( 实际参数列表 )function functionName( 参数 1, 参数 2 ...){// 要执行的代码由于 JS 是弱类型语言,形参、返回值都不需要指定类型。在调用函数时,实参个数与形参个数可以不一致,但是建议一致。匿名函数。
2024-10-16 17:54:42
288
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人