健鱼APP上的医生排序
- 经过又一个星期的学习和师兄的指导,我终于学会了怎么对医生职位的排序,虽然时间花的有点久,不过感觉又掌握了一个知识点还是感觉非常开心。
下面来看一下代码的实现:
public class DoctorPostComparator implements Comparator {
@Override
public int compare(Object o1, Object o2) {
BeanHospDeptDoctListRespItem bean1 = (BeanHospDeptDoctListRespItem) o1;
BeanHospDeptDoctListRespItem bean2 = (BeanHospDeptDoctListRespItem) o2;
if (bean1.getPRICE() < bean2.getPRICE()) {//当返回1时大于小于号分别表示升序和降序,当返回-1时反之,需要配合才能决定排序方向
return 1;
} else if (bean1.getPRICE() == bean2.getPRICE()) {
if (bean1.getREISTER_NAME().substring(0, 1).equals("副")) {
return 1;
} else {
return -1;
}
} else {
return -1;
}
}
}
首先新建一个类DoctorPostComparator,在这个类里面写上排序的实现代码,一样是使用Comparator 排序方法,BeanHospDeptDoctListRespItem是我们写的一个bean,里面存放的是从数据库那边去获取的各项数据,其中就包括了我们排序所需要的职称和挂号费。
首先我们是这样去判断的,比较医生的挂号费PRICE,如果不相等,就用升序或者降序排序显示,当返回1时,用的是小于号是表示降序显示,大于号则反之。而如果返回-1的话,则需要配合才能决定方向,这里的配合指的就是如果挂号费相等时的处理方法。当挂号费相等时,我们就比较他的职称名字,如果有“副”字的则排在后面。排序的判断方法其实也不难。
这里有几个比较好的Comparator的用法和介绍:http://blog.csdn.net/u012250875/article/details/55126531
http://blog.csdn.net/happylifex/article/details/44678341
Collections.sort(DeptDoctList,new DoctorPostComparator());
判断方法解决完之后我们就到了最重要的一步,在显示医生的各项介信息的代码上加上上述的那一句代码,这一句代码是最关键的,它的意思是去调用刚才我们写的 DoctorPostComparator中的排序方法进行排序后显示。没有这一句就不可能显示出排序的结果,前两周我在这个知识点上遇到的问题就是没有去调用这个排序类才无法进行排序的。
创建数据库的准备。
- 首先我们需要一个java 的编写软件,就我个人而言,我感觉myeclipse是不错的。这是myeclipse的下载官网: http://www.myeclipsecn.com/。但是my eclipse的使用是付费的,所以也可以去下载破解版的。
- 其次我们要安装一个服务器,我们选择tomcat,这是tomcat的下载官网:http://tomcat.apache.org/。tomcat的使用是不需要付费的。
下载了 tomcat之后我们需要去配置他的环境变量。相信大家对于环境变量的配置不是很陌生。配置完环境变量之后我们可以点击tomcat的文件夹 。
我们会看到bin这个文件夹。点击之后会看到以下文件。
其中shutdown.bat是关掉服务器的选项,startup.bat是开启服务器的选项。点击 startup.bat之后会跳出这个页面,就表示你已经打开了tomcat。
接着就可以去浏览器中输入本机服务器的地址:http://127.0.0.1:8080/。如果出现下面的网页就说明你的tomcat 已经可以使用。
最后我们需要去下载一个数据库mysql,这是官方的下载地址: https://www.mysql.com/ 也是免费的。
根据相应的提示去下载和安装就好了,mysql的安装时间可能会比较久,所以请耐心等待。在安装mysql的过程中会需要你设置密码,这个密码就是以后你打开数据库所需要的,所以务必牢记。
之后我们就可以打开 mysql,输入刚才我们设置的密码,就可以对数据库进行相对应的操作了。这个博客:http://blog.csdn.net/chinacodec/article/details/5797127/里面有比较详细的mysql的使用方法,可以参考一下。