网站开发先学什么哪里可以申请免费域名

张小明 2026/1/17 5:56:25
网站开发先学什么,哪里可以申请免费域名,健康东莞app怎么下载,汕头网站快速优化排名3 MyBatis 测试流程与核心原理解析 3.1 测试类整体结构 该UserTest类是基于 JUnit 框架的 MyBatis 测试类#xff0c;主要包含四部分#xff1a;成员变量#xff1a;存储关键对象#xff08;输入流、数据库会话、接口代理#xff09;。Before 方法#xff08;init#…3 MyBatis 测试流程与核心原理解析3.1 测试类整体结构该UserTest类是基于 JUnit 框架的 MyBatis 测试类主要包含四部分成员变量存储关键对象输入流、数据库会话、接口代理。Before 方法init测试前初始化资源构建 MyBatis 运行环境。在每个Test方法执行前自动调用用于初始化资源如加载配置文件、创建数据库连接。After 方法destory测试后释放资源避免内存泄漏。在每个Test方法执行后自动调用用于释放资源如关闭连接、流。Test方法调用接口方法并验证结果。UserTest 类就像一个 “测试实验室”专门用来验证你的代码能不能正确从数据库里查数据。比如你写了个 “查用户” 的功能得在这里试试好不好用。3.1.1 成员变量详解成员变量private InputStream in null; // 配置文件输入流 private SqlSession session null; // MyBatis数据库会话 private UserDao userDao null; // 数据访问接口代理对象作用in读取SqlMapConfig.xml配置文件。session执行 SQL、管理事务的核心对象。userDao通过代理调用UserDao接口的方法映射 XML 中的 SQL。3.1.2 Before 方法Before 方法初始化 MyBatis 环境Before //前置通知, 在方法执行之前执行 public void init() throws IOException { //1. 找配置文件 //加载主配置文件目的是为了构建SqlSessionFactory对象 in Resources.getResourceAsStream(SqlMapConfig.xml); //2. 造一个数据库连接器工厂 //创建SqlSessionFactory对象 SqlSessionFactory factory new SqlSessionFactoryBuilder().build(in); //3. 用工厂造一个数据库连接器 //通过SqlSessionFactory工厂对象创建SqlSesssion对象 session factory.openSession(); // 4. 造一个查数据的工具 //通过Session创建UserDao接口代理对象 userDao session.getMapper(UserDao.class); }加载配置文件Resources.getResourceAsStream(SqlMapConfig.xml)从类路径src/main/resources读取 MyBatis 全局配置文件转换为输入流。注意文件需位于resources目录下且文件名必须与参数一致如SqlMapConfig.xml。白话先找到 MyBatis 的 “使用说明书”SqlMapConfig.xml里面写着怎么连数据库、去哪找 SQL 语句。创建 SqlSessionFactorySqlSessionFactoryBuilder构建器类通过build(InputStream)方法解析配置文件生成SqlSessionFactory。SqlSessionFactory工厂类用于创建SqlSession数据库会话是线程安全的建议在项目中作为单例存在。白话根据说明书造一个 “连接器工厂”专门生产连数据库的工具。获取 SqlSessionfactory.openSession()创建数据库会话默认autoCommitfalse手动提交事务。白话用工厂生产一个 “数据库连接器”session相当于拿到了操作数据库的钥匙。注如果增删改操作后数据库没变化需要在测试方法里加 session.commit()因为MyBatis 默认不自动保存。如果查不到数据可能是 SQL 语句写错了或者数据库连接信息账号密码不对也可能是表名和实体类名对不上。生成接口代理session.getMapper(UserDao.class)通过动态代理生成UserDao接口的实现类对象。本质该对象会将接口方法调用转换为 XML 中对应的 SQL 执行如userDao.findAll()对应UserMapper.xml中的。白话再用连接器造一个 “查数据的工具”userDao这个工具能帮你执行 SQL 语句。3.1.3 After 方法After public void destory() { if (session ! null) session.close(); if (in ! null) in.close(); }用完数据库连接器和说明书后要记得 “关门”关闭连接和文件不然会浪费资源就像用完水龙头不关会漏水一样。3.1.4 Test 方法Test 注解替代 main 方法在 JUnit 测试中Test注解标识的方法如aaa()会被测试框架自动执行相当于程序的入口无需手动编写main方法。若去掉Test方法无法被执行添加后框架会调用该方法进行测试。Test public void aaa() { // 用工具查所有用户 ListUser users userDao.findAll(); // 把查到的用户打印出来看看 for (User user : users) { System.out.println(user); } }白话用 “查数据的工具” 喊一声 “给我查所有用户”userDao.findAll()。工具会偷偷找到说明书里写的 SQL 语句比如 select * from user去数据库把数据查出来。把查到的用户数据存到一个篮子里List然后逐个打印出来看看是不是你想要的结果。3.2 核心概念MyBatis 的定义MyBatis 是一款基于 Java 的持久层框架通过 ORM对象关系映射机制 将数据库操作与 Java 代码解耦。它允许开发者通过 XML 或注解配置 SQL 语句避免直接编写繁琐的 JDBC 原生代码实现 Java 对象与数据库表的映射关系提升数据访问的开发效率。白话帮你省力气的 “数据库翻译官”不用写复杂的连接代码直接用 Java 方法调 SQL 语句。配置文件SqlMapConfig.xml的作用位置src/main/resources作用作为 MyBatis 的全局配置文件包含数据库连接池配置驱动、URL、用户名、密码和映射文件注册mappers标签。白话MyBatis 的 “使用说明书”写着数据库账号密码、SQL 语句在哪找等重要信息。UserDao 接口的定位UserDao 是遵循 DAO数据访问对象模式 定义的接口用于封装用户相关的数据操作。其方法如 findAll()通过 MyBatis 的动态代理机制与映射文件中定义的 SQL 语句绑定。当调用接口方法时MyBatis 会将其转换为对应的 SQL 执行并将结果映射为 Java 对象如 User 实体返回实现 “接口方法到 SQL 语句” 的自动化转换。白话定义的 “查数据接口”比如 findAll() 就是 “查所有用户” 的命令MyBatis 会把它翻译成 SQL 去执行。JUnit 测试的机制JUnit 是 Java 单元测试框架通过注解实现测试流程的自动化管理Before标注的方法在每个测试用例执行前自动调用用于初始化资源如加载 MyBatis 配置、创建数据库会话Test标注具体的测试方法如 aaa()用于验证业务逻辑如查询用户列表After标注的方法在测试用例执行后调用用于释放资源如关闭数据库连接、输入流避免资源泄漏。整个流程遵循 “准备资源 → 执行测试 → 清理资源” 的生命周期管理模式确保测试的可靠性和可重复性。白话自动运行测试的 “机器人”Before 是测试前的准备Test 是真正的测试任务After 是测试后的打扫。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

好看网站峰峰信息港

抖音视频解析与无水印下载技术实现指南 【免费下载链接】douyin_downloader 抖音短视频无水印下载 win编译版本下载:https://www.lanzous.com/i9za5od 项目地址: https://gitcode.com/gh_mirrors/dou/douyin_downloader douyin_downloader 是一款专为抖音视频…

张小明 2026/1/9 3:32:11 网站建设

网站建设全部代码郑州网站建设报价

网络管理协议SNMP与帧缓冲设备驱动安装全解析 1. SNMP协议基础 SNMP(简单网络管理协议)用于在被管理系统和管理应用程序之间交换信息。被管理系统运行一个名为代理(通常是 snmpd )的守护进程,它能从一个或多个MIB(管理信息库)中读取或写入信息。SNMP定义了一些基本的…

张小明 2026/1/10 18:54:11 网站建设

网站代码怎么放设计网站登录框ps怎么做

文章目录前言详细视频演示具体实现截图技术栈后端框架SpringBoot前端框架Vue持久层框架MyBaitsPlus系统测试系统测试目的系统功能测试系统测试结论为什么选择我代码参考数据库参考源码获取前言 🌞博主介绍:✌全网粉丝15W,CSDN特邀作者、211毕业、高级全…

张小明 2026/1/10 18:13:31 网站建设

自己做的网站很慢成都网站排名提升

💕💕作者: 米罗学长 💕💕个人简介:混迹java圈十余年,精通Java、小程序、数据库等。 💕💕各类成品Java毕设 。javaweb,ssm,springboot等项目&#…

张小明 2026/1/9 4:50:57 网站建设

洛阳网站建设培训学校建网站的书籍

考虑到早期写的PE教程1是自己所有教程中最糟糕的一篇,此番决心彻底重写一篇以飨读者。PE 的意思就是 Portable Executable(可移植的执行体)。它是 Win32环境自身所带的执行体文件格式。它的一些特性继承自 Unix的 Coff (common object file f…

张小明 2026/1/9 4:50:53 网站建设