(JAVA) servlet下拉框绑定

(JAVA) servlet下拉框绑定

下拉框在做项目的过程中是非常的普遍的,当然方法也有很多种。下拉框里的数据其实就是我们要查询的数据。

JAVA初上手,在C#中绑定下拉框是直接一个框一个查询一个绑定。但是这要是用到servlet中就变得非常繁琐过于重复了,所以就想着通过不同的值,下拉框名来执行同一个查询方法,这样就节省了不必要的一些重复查询,减少代码量。

一、JSP:在jsp中写一个HTML样式,设置id和name值

二、Dao:写一个方法,因为是下拉框那么就包含着多条数据,所以设置返回值为List一个集合类,并且在这获取了从servlet传过来的值。然后声明一个String类存放sql查询数据库语句,然后通过con,ps,rs三个参数连接数据库进行查询,最后使用迭代器进行变量循环,再把值添加到集合中。

注:在这里是查询数据,所以使用到的是executeQuery()方法,增删改使用executeUpdate()方法

在这步需要在vo写一个返回值对象类, DropSelect类实现了Serializable接口(为什么要实现?1、将对象的状态保存在存储媒体中以便可以在以后重新创建出完全相同的副本;2、按值将对象从一个应用程序域发送至另一个应用程序域),同时声明两个变量id与name用来接收需要用于绑定下拉框的选中值与显示值。最后的toString是为了编码转码,不然会乱码,页面识别不出,就会没有效果.

三、service:这里需要通过service把dao层和servlet层连接起来,这样做数据比较严谨安全。

Servlet调用dao  创建ReMaDao  声明Dao接口,实例化接口的实现类

四、servlet:写一个方法,把要绑定的下拉框id,name,表名直接传过dao中进行查询,设置一个list装查询返回来的数据 ,然后把集合转成JSONArray对象,然后再把数据传输到jsp页面中绑定显示。

五、JSP:使用post提交,在这里需要用到两个参数,id和url.id是在JSP中绑定下拉框用的select标签的id,url是用于请求servlet的链接。把参数通过链接提交到servlet层,执行该方法,servlet层执行完后返回data数据,把data数据转为JSON解析,然后通过循环绑定到相对应的文本上。

最后注意乱码的问题:

代码效果:

数据库:

总的来说,下拉框绑定分为三个步骤:

从servlet层获取值,到dao层查询,分有(单表查询/多表查询)。单表就是你是要查询单单这一张表里的数据,而多表就是许多表,有的多表是兄弟关系,有的是父子关系。

将dao中查询的数据返回到servlet中

servlet层把数据通过Json解析,传到jsp页面上显示

主要组成部分:一个servlet、一个Jsp、一个vo类、一个dao、一个dao实现类、一个service、一个service实现类;(如果只是用来做效果的话,service和service实现类可以不写)

(JAVA) servlet下拉框绑定相关教程