下面将演示前端下拉列表显示后台数据库中class表的说有班级的名称

环境:

  Tomcat-8.5.40

  mysql-8.0.13

  eclipse-4.9.0

  springmvc框架

一、从mysql中获取数据

  ①编写Class实体类

    略。。。

  ②编写ClassDao用于操作Class表

 public class ClassDao {
public List<Class> getAllClassInfo(){
/*
* 存储对象数据的list
*/
List<Class> classlist = new ArrayList<Class>();
Class cla = new Class(); // 对象模型 /*
* 开始查询数据库
*/
Connection con = null; // 用于数据库的连接
PreparedStatement psta = null; // 用于操作数据库
ResultSet res = null; // 查询结果集 /*
* 建立连接
*/
con = DBUtil.getConnection();
/*
* 编写sql查询语句
*/
String sql = "select * from class"; try { /*
* 预编译
*/
psta = con.prepareStatement(sql); /*
* 执行查询语句,返回查询结果
*/
res = psta.executeQuery();
while (res.next()) {
cla = new Class(); // 初始化对象
cla.setClass_id(res.getString("class_id"));
cla.setClass_name(res.getString("class_name"));
cla.setOwner_id(res.getString("owner_id"));
classlist.add(cla); // 添加到list的末尾
} } catch (SQLException e) {
e.printStackTrace();
} finally {
/*
* 关闭数据库
*/
DBUtil.closeConnection(con, psta, res);
}
/*
* 返回结果
*/
return classlist;
}
}

ClassDao

  注:查询数据库的代码可以可按照自己的风格编写,本人小白所以代码略繁琐。注意导包,我略去了连接数据库的工具类的代码,直接调用自己写好的。

二、在控制器中调用ClassDao,获取数据返回给视图

@Controller
public class IndexController { @RequestMapping("register.jch")
public ModelAndView registerindex() {
// TODO Auto-generated method stub
/*
* 存储对象数据的list
*/
List<Class> classlist = new ArrayList<Class>();
/*
* 用于操作class表
*/
ClassDao classdao = new ClassDao();
/*
* 获取class表的所有信息
*/
classlist = classdao.getAllClassInfo();
/*
* 返回数据给视图
*/
ModelAndView mv = new ModelAndView();
mv.addObject("classlist", classlist);
mv.setViewName("home/register/register"); return mv;
} }

IndexControlle

  注:setViewName一定要是自己的视图路径才能将视图返回给用户界面。

三、编写前端jsp代码,获取控制器返回的数据

  

 <label for="cla">班 级:</label>
<select style="width:240px;" class="cla" id="cla" name="cla">
<option value="">请选择:</option>
4 <c:forEach items="${classlist}" var="cla">
<option value="${cla.class_id}">${cla.class_name}</option>
</c:forEach>
</select>

    注:要想正确执行上述代码还需要导jar包和在jsp页面编写一段声明才能够正确解析

    在jsp首部添加一行代码

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

    jstl-1.2.jar和taglibs-standard-impl-1.2.5-javadoc.jar

    导入这两个jar包。

四、刷新页面查看效果,祝成功!

Javaweb项目-下拉列表显示后台数据库的数据的更多相关文章

  1. AngularJS + Java---前台网页与后台数据库传递数据 基本结构

    第一个关于这两种语言的项目,以下只是我自己的理解,欢迎指教:) 基本对应关系 1. controller .jsp(.html)  ng-controller="controllerTest ...

  2. jasperReports 通过java导出各种格式报表,及javaweb项目整合显示各种报表

    注意:编写此项目时,请先手动编写**.jrxml  或者用IReport生成**.jrxml或**.jasper 注:java导出报表与web项目显示报表方法其实是相同的,只不过有一句代码不同,如下 ...

  3. java web 入门实例servlet篇(显示后台数据库列表,删除某一条记录并显示)

    编写过程中需要注意的问题: 1.建立eclipse动态web工程时,需要改写编译后class文件的位置,通常情况下是这个位置:/WebContent/WEB-INF/classes 2.配置的页面链接 ...

  4. SpringMVC——项目启动时从数据库查询数据

    SpringMVC项目中遇到这样的问题: 1.很多数据字典需要从数据库中查询: 2.懒得修改SQL语句: 3.想在项目中声明静态变量存储数据字典,但是希望这个字典可以在项目启动时进行加载. 当遇到这样 ...

  5. Javaweb项目中修改表单时数据回显方法

    1.前言 先来说下什么是数据回显,比如我要修改我的个人信息,点击修改按钮后进入修改界面,在这个界面中直接将原来的信息显示在表单中,而不是空表单,这就是数据回显 2.思路 当点击修改的时候,从数据库中查 ...

  6. zabbix 后台数据库清除数据

    alerts 表 problem 表 escalations 表 events 表  event_recovery表 对 这些表进行清除 防止不停发送邮件 -- alerts table rebuil ...

  7. Decoration2:引入Angularjs显示前台一条数据

    SpringMVC内置的RestFul API格式采用的是最复杂最全面的HATEOAS规范,对于简单应用来说,前台解析起来不方便,我们下面主要想办法重新定义一种简单的RestFulAPI. (1)先是 ...

  8. mysql 关于数据库和数据表的基本操作

    -- 备注: -- .每一条mysql语句后面都需要加上半角分号 -- .可以用``符号(1键旁边的那个键)将字段名称引用起来,如`Name` -- .mysql在windows下不区分大小写,在li ...

  9. 用struts2标签如何从数据库获取数据并在查询页面显示。最近做一个小项目,需要用到struts2标签从数据库查询数据,并且用迭代器iterator标签在查询页面显示,可是一开始,怎么也获取不到数据,想了许久,最后发现,是自己少定义了一个变量,也就是var变量。

    最近做一个小项目,需要用到struts2标签从数据库查询数据,并且用迭代器iterator标签在查询页面显示,可是一开始,怎么也获取不到数据,想了许久,最后发现,是自己少定义了一个变量,也就是var变 ...

随机推荐

  1. 线程queue、线程进程池,协程

    线程queue import queue q = queue.Queue() #先进先出 q = queue.LifoQueue() #先进后出 t = queue.PriorityQueue() # ...

  2. 【oracle】去重

    基本去重: SELECT DISTINCT * FROM TABLE; 其他去重: 待添加

  3. 虚拟机中Windows激活「很抱歉,程序无法在非MBR引导分区上进行激活」

    虚拟机激活 Windows 出现如下错误提示: 很抱歉,程序无法在非MBR引导分区上进行激活 没错,是小马Oem7F7激活工具. 最后使用 KMS 激活成功,下载链接: 链接:https://pan. ...

  4. vb.net 以读文本文件的方式对XML文件进行遍历

    '    对XML文件按照文本文件的方式进行遍历 Private Sub checkFile_establishEntity(strFile As String) Dim reader AsTextR ...

  5. 第08组 Beta冲刺(2/5)

    队名:955 组长博客:点这里! 作业博客:点这里! 组员情况 组员1(组长):庄锡荣 过去两天完成了哪些任务 文字/口头描述 ?按照时间进度的安排进行相应的检查 展示GitHub当日代码/文档签入记 ...

  6. 基于 SpringBoot2.0+优雅整合 SpringBoot+Mybatis

    SpringBoot 整合 Mybatis 有两种常用的方式,一种就是我们常见的 xml 的方式 ,还有一种是全注解的方式.我觉得这两者没有谁比谁好,在 SQL 语句不太长的情况下,我觉得全注解的方式 ...

  7. 让sentinel-dashboard支持nacos

    以sentinel-1.7.0为例 下载源码,idea打开. 找到sentinel-dashboard这个项目 在该项目下的pom.xml文件中找到: <!-- for Nacos rule p ...

  8. ShowDoc 软件开发团队接口文档管理利器

    ShowDoc是一个非常适合IT团队的在线API文档.技术文档工具.你可以使用Showdoc来编写在线API文档.技术文档.数据字典.在线手册. 这里介绍 Showdoc 这款开源(免费)文档管理系统 ...

  9. golang gRPC(持续更新)

    如何开启 gRPC 日志 设置 GRPC_GO_LOG_SEVERITY_LEVEL 环境变量, 可选项:["info", "warning", "e ...

  10. 关于linux 执行权限的理解

    关于linux 执行权限的理解他这个执行权限不是 执行什么命令的 是这个文件 是否能被执行的权限 比方说<pre>shell_exec('/home/crontabtest12.sh'); ...