1、先在数据库中创建数据表student,并向student中插入三条数据,用于测试写好的java程序是否实现了order by的功能。student表的结构和数据如图。
2、接着打开eclipse,创建一个java工程,并创建类Student。该工程目录如图。
3、由于排序会用到Arrays中的sort,所以Student类要实现Comparable接口。Student类拥有的变量如图所示。
4、接着为Student类添加两个构造函数,还有私有参数的set和get方法。
5、为了方便打印数据,还重载了toString方法。
6、接下来编写用于排序的compareTo方法。劐聂赞陶根据排序的字段名(sortParName)来选择对应的函数。各函数内容如图。
7、接着编写orderBy方法,该函数用来模拟数据库中使用order by。当字段名有误时会抛出异常。
8、整个Student类的内容如下组图。
9、最后就是编写main函数来测试程序是否正确。先测试抛出异常的情况。如图,当使用snamee作为排序的字段时,java程序和mysql均抛出异常。
10、接着测试使用sname作为排序的字段进行升序排序(ASC)。如图,java程序和mysql输出相同的结果。
11、然后测试使用sname作为排序的字段进行降序排序(DESC)。如图,java程序和mysql也是输出相同的结果。
12、最后再测试使用age作为排序的字段进行降序排序(DESC)。如图,java程序和mysql还是输出相同的结果。
13、这样就用java实现了order by。