学生管理系统实现-查询操作| 学习笔记

简介: 快速学习学生管理系统实现-查询操作。

开发者学堂课程【XML入门 :学生管理系统实现-查询操作】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/37/detail/874


学生管理系统实现-查询操作

 

1、//查询根据 id 查询学生信息,

思想是得到这个 id,id 是属于哪一个标签,先获取所有的 id,判断 id 所在的标签里面的内容都可以得到。但是注意现在要返回一个值,返回学生信息,直接返回 student 对象,直接根据 id 查询。

public static Student getStu(String id) {

return null;

}

2、前两步都是一样的,直接复制即可。

id 值获取到,通过 stu 可以得到 name 值。

/*

* 1、 创建解析器

* 2、得到 document

*

* 3、获取到所有的 id

* 4、返回的是 list 集合,遍历 list 集合

* 5、得到每一个 id 的节点

* 6、id 节点的值

* 7、判断 id 的值和传递的 id 值是否相同

* 8、如果相同,先获取到 id 的父节点 stu

* 9、通过 stu 获取到 name age 值

*

**/

这里面不需要回写,因为是做查询操作,没有对内容进行修改。

3、前两步操作直接复制即可,有异常抛出去。

/ /创建解析器

SAXReader saxReader = new SAXReader();

/ / 得到 document

Document document = saxReader . read("src/ student. xml") ;

//获取所有的 id

List<Node> list = document . selectNodes("//id");

//遍历 list

for (Node node : list) { / /node 是每一个 id 节点

//得到 id 节点的值

String idv = node . getText() ;

//判断 id 是否相同

if(idv. equals(id)) {

id 相同就利用 id 获取父节点 stu

//得到 id 的父节点 stu

Element stu = node . getParent();

/ /通过 stu 获取 name 和 age

stu. element("name") getText();

这句话表示获取 name 的值,stu. element("name") 表示获取 name 的元素,getText(); 表示获取那么的值

String namev = stu. element ( " name").getText();

String agev = stu. element("age"). getText();

现在要访问一个对象,把 String namev = stu. element ( " name").getText(); 这个直接设置到对象里面去,首先先要创建一个对象,不能创建在 idv 里面,不能返回,范围不行,创建在外面。

//创建 student 对象

Student student = new Student();

在里面设置它的值

/ /通过 stu 获取 name 和 age

String namev = stu. element ( " name").getText();

String agev = stu. element("age"). getText();

student. setid(idv);

student . setName( namev) ;

student. setAge(agev);

}

}

Return student ;

返回值不能写在里面,注意里面有一个循环,写在里面会出问题。所以通常在外面创建一个对象进行返回,这样返回的就是一个 student 对象。

4、调用一下。异常抛出去。

/ /测试查询方法

public static void testSelect() throws Exception {

Student stu = StuService . getStu("100");

这就可以依次获取 stu 里的值。

这里有一个方法,点击 source-Generate tostring()-select all。

image.png

就可以把值依次打印出来

@Override

public String toString() {

return "Student [id=" + id + ", name=" + name +age="+ age + "]";

}

运行一下,

/ /测试查询方法

public static void testSelect() throws Exception {

Student stu = StuService. getStu("100");

System. out. println(stu. toString()) ;

}

就可以得到以下这种格式,以此显示出来。

[id=" + id + ", name=" + name +age="+ age + "]

5、testSelect();

执行看结果

Student[ id=100, name=zhangsan, age=20]

这就是查询的操作。

相关文章
|
6月前
|
SQL 存储 数据库
数据库开发表操作案例的详细解析
数据库开发表操作案例的详细解析
39 0
|
Python
十八、通讯录管理系统Python版(对学生的增加,删除,修改,查询,遍历所有学员信息,退出系统,六个功能的实现)
十八、通讯录管理系统Python版(对学生的增加,删除,修改,查询,遍历所有学员信息,退出系统,六个功能的实现)
十八、通讯录管理系统Python版(对学生的增加,删除,修改,查询,遍历所有学员信息,退出系统,六个功能的实现)
|
2月前
|
SQL 关系型数据库 MySQL
学成在线笔记+踩坑(3)——【内容模块】课程分类查询、课程增改删、课程计划增删改查,统一异常处理+JSR303校验
课程分类查询、课程新增、统一异常处理、统一封装结果类、JSR303校验、修改课程、查询课程计划、新增/修改课程计划
学成在线笔记+踩坑(3)——【内容模块】课程分类查询、课程增改删、课程计划增删改查,统一异常处理+JSR303校验
|
5月前
学生管理系统-登录操作设计
学生管理系统-登录操作设计
40 1
|
数据安全/隐私保护
学生管理系统优化
学生管理系统优化
|
SQL 数据库
53-学生选课系统数据库-课程信息数据操作
53-学生选课系统数据库-课程信息数据操作
606 0
|
JSON 前端开发 数据库
JdbcTemplate实操查询数据库表中所有记录信息(十六课)
JdbcTemplate实操查询数据库表中所有记录信息(十六课)
79 0
|
前端开发 数据库 开发者
课程管理-添加和删除小节 | 学习笔记
简介:快速学习课程管理-添加和删除小节
144 0
课程管理-添加和删除小节 | 学习笔记
|
前端开发 Java Nacos
课程管理-删除课程删除视频(最终测试) | 学习笔记
简介:快速学习课程管理-删除课程删除视频(最终测试)
115 0
课程管理-删除课程删除视频(最终测试) | 学习笔记
|
Java 数据库连接
JavaWeb课程复习资料(七)——select服务查询所有功能编写
JavaWeb课程复习资料(七)——select服务查询所有功能编写
164 0
JavaWeb课程复习资料(七)——select服务查询所有功能编写