news 2026/4/23 13:13:04

IDEA+mybatis实现基于MyBatis注解的学生管理程序

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
IDEA+mybatis实现基于MyBatis注解的学生管理程序

查看全文:https://www.longkui.site/program/java/ideamybatismybatis2/7183/


本文主要实现《Java EE企业级应用开发教程(Spring+SpringMVC+Mybatis)》第2版中的第5章课后习题:

要求:

(1)MyBatis注解实现查询操作

(2)MyBatis注解实现修改操作(将id为4的学生修改为李雷,年龄修改为21)

(3)MyBatis注解实现一对多查询(查询出二班所有学生的信息)

前面的搭建过程参考第一章代码:IDEA(2020版)实现MyBatis入门程序 – 每天进步一点点

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

MyBatis5.zip: https://url47.ctfile.com/f/64055047-1502040463-75d08d?p=4728

可能遇到的报错:

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

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

1.数据库部分

USE mybatis;# 创建一个名称为c_class的表CREATE TABLE c_class(idint(32)PRIMARY KEY AUTO_INCREMENT, classname varchar(40));# 插入2条数据INSERT INTO c_class VALUES(1,'一班');INSERT INTO c_class VALUES(2,'二班');# 创建一个名称为s_student的表CREATE TABLE s_student(idint(32)PRIMARY KEY AUTO_INCREMENT, name varchar(40), age int, cid int(32)NOT NULL, FOREIGN KEY(cid)REFERENCES c_class(id));# 插入4条数据INSERT INTO s_student VALUES(1,'张三',18,1);INSERT INTO s_student VALUES(2,'李四',18,2);INSERT INTO s_student VALUES(3,'王五',19,2);INSERT INTO s_student VALUES(4,'赵六',20,1);

执行结果如下:

2.创建实体类

右击“pojo”文件夹,选择 “New—>Java Class”,名字叫 IStudent


IStudent实体类代码参考如下:

package com.itheima.pojo;/** * 学生持久化类 */ public class IStudent{private Integerid;// 主键id private String name;// 姓名 private int age;// 年龄 public IntegergetId(){returnid;}public void setId(Integerid){this.id=id;}public StringgetName(){returnname;}public void setName(String name){this.name=name;}public intgetAge(){returnage;}public void setAge(int age){this.age=age;}@Override public StringtoString(){return"Student{"+"id="+id+", name='"+ name +", age="+ age +'}';}}

然后再创建一个IClass实体类

代码参考如下:

package com.itheima.pojo;importjava.util.List;/** * 班级持久化类 */ public class IClass{private Integerid;// 主键id private String classname;// 班级名称 private List<IStudent>studentList;// 学生集合 public IntegergetId(){returnid;}public void setId(Integerid){this.id=id;}public StringgetClassname(){returnclassname;}public void setClassname(String classname){this.classname=classname;}public List<IStudent>getStudentList(){returnstudentList;}public void setStudentList(List<IStudent>studentList){this.studentList=studentList;}@Override public StringtoString(){return"IClass{"+"id="+id+", classname='"+ classname +", studentList="+ studentList +'}';}}

3.创建dao层
右击“itheima”,然后选择“New—>Package”,名称选择 “dao”


查看全文:https://www.longkui.site/program/java/ideamybatismybatis2/7183/

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

Requirement Change

Change Control Process Requirement Change 需求变更 1&#xff09;首先定义需求&#xff0c;大多数指定就是内容基准&#xff08;合同、原型&#xff09;&#xff0c;版本 【Version 1】&#xff0c;定义变更规范 2&#xff09;参考原型【Version 1】&#xff0c;哪怕修改一…

作者头像 李华
网站建设 2026/4/23 8:45:41

回溯算法专题(十):二维递归的完全体——暴力破解「解数独」

哈喽各位&#xff0c;我是前端小L。 欢迎来到我们的回溯算法专题第十篇&#xff01;数独游戏大家应该都玩过&#xff0c;规则极其“简单粗暴”&#xff1a; 数字 1-9 在每一行只能出现一次。 数字 1-9 在每一列只能出现一次。 数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能…

作者头像 李华
网站建设 2026/4/23 8:45:40

java基础-Java Queue 接口

Queue 是 Java 集合框架中的一个重要接口&#xff0c;位于 java.util 包中&#xff0c;它表示一个先进先出&#xff08;FIFO&#xff09;的队列数据结构。Queue 接口继承了 Collection 接口&#xff0c;并定义了一组专门用于队列操作的方法。Queue 接口的主要特点先进先出(FIFO…

作者头像 李华
网站建设 2026/4/23 8:44:53

基于Java+ vue校园快递代取系统(源码+数据库+文档)​

校园快递代取 目录 基于springboot vue校园快递代取系统 一、前言 二、系统功能演示 详细视频演示 三、技术选型 四、其他项目参考 五、代码参考 六、测试参考 七、最新计算机毕设选题推荐 八、源码获取&#xff1a; 基于springboot vue校园快递代取系统 一、前言…

作者头像 李华
网站建设 2026/4/23 8:45:05

BrowserUse10-源码-FileSystem模块-整理

BrowserUse10-源码-FileSystem模块-整理FileSystem模块-整理 1-源代码部分import asyncio import base64 import os import re import shutil from abc import ABC, abstractmethod from concurrent.futures import ThreadPoolExecutor from pathlib import Path from typing i…

作者头像 李华
网站建设 2026/4/23 11:26:40

把钱交给理财专家 —— 基金:普通人的财富增值捷径

把钱交给理财专家 —— 基金&#xff1a;普通人的财富增值捷径很多人都有这样的困惑&#xff1a;想理财却没时间研究股票、看不懂债券条款、怕踩雷不敢买理财&#xff0c;眼睁睁看着钱躺在活期账户里 “缩水”。其实&#xff0c;解决这个问题的答案很简单 ——基金。它就像 “大…

作者头像 李华