news 2026/8/21 19:02:53

IDEA+mybatis实现学生信息查询系统

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
IDEA+mybatis实现学生信息查询系统

查看全文:https://www.longkui.site/program/java/ideamybatis3/7179/


本文主要实现本文主要实现《Java EE企业级应用开发教程(Spring+SpringMVC+Mybatis)》第2版中的第3章课后习题:学生信息管理系统。

(1)多条件查询
当用户输入的学生姓名不为空时,则只根据学生姓名进行学生信息的查询
当用户输入的学生姓名为空而学生专业不为空时,则只根据学生专业进行学生信息的查询
当用户输入的学生姓名和专业都为空,则要求查询出所有的学号不为空的学生信息
(2)单条件查询出所有id值小于5的学生的信息
前面的搭建过程参考第一章代码:IDEA(2020版)实现MyBatis入门程序 – 每天进步一点点

本文源代码(访问密码: 1542):

MyBatis03.zip: https://url47.ctfile.com/f/64055047-1502053786-268115?p=1542

可能遇到的报错:

java.io.IOException: Could not find resource mybatis-config.xml

IDEA 连接数据库报错Public Key Retrieval is not allowed

1.数据库部分

使用mybatis数据库

USE mybatis;

创建一个名称为dm_student的表

CREATE TABLE dm_student(
id int(32) PRIMARY KEY AUTO_INCREMENT,
name varchar(50),
major varchar(50),
sno varchar(16)
);

插入7条数据

INSERT INTO dm_student VALUES (‘1’, ‘张三’, ‘数学’, ‘10001’);
INSERT INTO dm_student VALUES (‘2’, ‘李四’, ‘英语’, ‘10002’);
INSERT INTO dm_student VALUES (‘3’, ‘王五’, ‘计算机’, ‘10003’);
INSERT INTO dm_student VALUES (‘4’, ‘王刚’, ‘化学’, ‘10004’);
INSERT INTO dm_student VALUES (‘5’, ‘李华’, ‘物理’, ‘10005’);
INSERT INTO dm_student VALUES (‘6’, ‘李雷’, ‘中文’, ‘10006’);
INSERT INTO dm_student VALUES (‘7’, ‘张飞’, ‘英语’, ‘10007’);

执行结果如下:

2.创建实体类
右击pojo文件夹,New—>Java Class,名字写Student

参考代码如下:

packagecom.itheima.pojo;/** * 学生持久化类 */publicclassStudent{privateIntegerid;//主键idprivateStringname;// 姓名privateStringmajor;// 专业privateStringsno;// 学号publicIntegergetId(){returnid;}publicvoidsetId(Integerid){this.id=id;}publicStringgetName(){returnname;}publicvoidsetName(Stringname){this.name=name;}publicStringgetMajor(){returnmajor;}publicvoidsetMajor(Stringmajor){this.major=major;}publicStringgetSno(){returnsno;}publicvoidsetSno(Stringsno){this.sno=sno;}@OverridepublicStringtoString(){return"Student{"+"id="+id+", name='"+name+", major="+major+", sno="+sno+'}';}}

创建完后如下:


下面要创建工具类;

因为要做增删改查操作,所以可以把第1章sqlSession部分封装一下,封装成工具类

右击“itheima—>New—>Package”

文件夹名称选择“utils”,然后回车

然后右击刚才创建的 utils文件夹,选择“New—>Java Class”

文件名称输入 MyBatisUtils,然后点击回车

代码参考如下:

package com.itheima.utils;importjava.io.Reader;importorg.apache.ibatis.io.Resources;importorg.apache.ibatis.session.SqlSession;importorg.apache.ibatis.session.SqlSessionFactory;importorg.apache.ibatis.session.SqlSessionFactoryBuilder;/** * 工具类 */ public class MyBatisUtils{private static SqlSessionFactory sqlSessionFactory=null;// 初始化SqlSessionFactory对象 static{try{// 使用MyBatis提供的Resources类加载MyBatis的配置文件 Reader reader=Resources.getResourceAsReader("mybatis-config.xml");// 构建SqlSessionFactory工厂 sqlSessionFactory=new SqlSessionFactoryBuilder().build(reader);}catch(Exception e){e.printStackTrace();}}// 获取SqlSession对象的静态方法 public static SqlSessiongetSession(){returnsqlSessionFactory.openSession();}}

3.创建mapper文件


查看全文:https://www.longkui.site/program/java/ideamybatis3/7179/

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/21 21:05:52

Seed-Coder-8B-Base支持多语言开发:Java、C#、Rust全面覆盖

Seed-Coder-8B-Base:多语言智能编码的轻量级基石 在现代软件开发日益复杂的背景下,一个熟悉的场景反复上演:开发者面对庞大的代码库和繁杂的API文档,迟迟无法下手;新人加入项目后,光是搞懂内部SDK的调用方式…

作者头像 李华
网站建设 2026/8/22 2:54:27

学校培训系统与企业培训软件是什么?主要有何区别?

学校培训系统与企业培训软件在功能和目标上各具特色,分别适应不同的受众需求。学校培训系统主要聚焦于教育机构,通过结构化的课程管理和学员评估,提升教学质量与效率。而企业培训软件则专注于员工职业发展,提供个性化学习路径和实…

作者头像 李华
网站建设 2026/8/21 21:03:59

Ollama模型量化技术对PyTorch-GPU内存占用的影响

Ollama模型量化技术对PyTorch-GPU内存占用的影响 在一台搭载RTX 3060(12GB显存)的普通工作站上,运行一个70亿参数的大语言模型听起来像是天方夜谭?但如今,这已成为现实。关键就在于——模型量化与高效的GPU运行环境协同…

作者头像 李华
网站建设 2026/8/21 3:55:00

细胞与基因治疗(CGT)核心干货科普

细胞与基因治疗(CGT) 细胞与基因治疗(CGT)是生物医药领域针对癌症、遗传病等难治性疾病的前沿技术,和传统药物 “对症缓解” 的逻辑不同,它从细胞和基因层面实现根源性干预。 一、CGT 的基础定义与技术分…

作者头像 李华
网站建设 2026/8/21 13:40:53

Pytorch安装踩坑总结:适配Qwen3-VL-8B的CUDA版本选择

PyTorch安装踩坑总结:适配Qwen3-VL-8B的CUDA版本选择 在部署多模态模型时,一个看似简单却频频绊倒开发者的问题浮出水面——PyTorch 与 CUDA 的版本兼容性。尤其是当你准备运行像 Qwen3-VL-8B 这类轻量级但功能强大的视觉-语言模型时,哪怕只…

作者头像 李华
网站建设 2026/8/21 21:40:10

面试官说了,不懂Python装饰器的人直接Pass

01 装饰器 Python的装饰器是面试常被问到的问题之一,如果你的简历里描述会Python,那么大概率会被问到那么我们应该怎么回答这个问题呢?这里我从几个角度来解释装饰器的作用,大家可以挑选符合自己的说法 1.python装饰器原理基础 …

作者头像 李华