news 2026/4/18 9:18:49

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/4/16 13:55:33

2025年GEO优化专业评测,杭州爱搜索人工智能位列榜首

GEO(地理位置优化)作为数字营销领域的重要分支,近年来随着本地化服务需求的激增而迅速发展。然而,市场上GEO优化服务商良莠不齐,技术方案各异,给企业选择带来了不小的挑战。如何在众多服务商中找到真正适合…

作者头像 李华
网站建设 2026/4/10 2:20:54

2025年8款公文AI写作工具深度测评!公文宝、新华妙笔等

今天为大家带来一份超实用的AI公文写作工具深度测评。这次我花了近一个月时间,亲身体验了8款市面上主流的AI写作工具,用同一份工作总结要求测试每款工具的实际表现,看看谁才是体制内工作者的必备神器!1. 公文宝说实话,…

作者头像 李华
网站建设 2026/4/16 10:13:04

Seed-Coder-8B-Base vs 其他代码模型:谁更适合你的项目?

Seed-Coder-8B-Base vs 其他代码模型:谁更适合你的项目? 在现代软件开发节奏日益加快的今天,一个能“读懂”你意图、提前写出下一行代码的AI助手,早已不再是科幻设定。从GitHub Copilot到各类IDE智能补全插件,AI编程辅…

作者头像 李华
网站建设 2026/4/13 6:18:24

HTML5与JavaScript结合PyTorch.js实现浏览器端推理

HTML5与JavaScript结合PyTorch.js实现浏览器端推理 在当今的Web应用开发中,用户对实时性和隐私保护的要求越来越高。想象这样一个场景:一名医生正在使用在线平台分析患者的皮肤影像,出于合规要求,这些敏感数据不能离开本地设备&am…

作者头像 李华
网站建设 2026/4/18 2:47:24

会员积分小程序开发 积分兑换 + 等级权益 提升复购

会员积分小程序开发技术大纲:积分兑换与等级权益设计核心功能模块积分体系设计积分获取规则:消费、签到、任务完成等场景的数值建模动态积分计算:基于用户行为权重的实时累加逻辑(代码示例:points activity.weight * …

作者头像 李华