Javaweb项目-下拉列表显示后台数据库的数据
下面将演示前端下拉列表显示后台数据库中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项目-下拉列表显示后台数据库的数据的更多相关文章
- AngularJS + Java---前台网页与后台数据库传递数据 基本结构
第一个关于这两种语言的项目,以下只是我自己的理解,欢迎指教:) 基本对应关系 1. controller .jsp(.html) ng-controller="controllerTest ...
- jasperReports 通过java导出各种格式报表,及javaweb项目整合显示各种报表
注意:编写此项目时,请先手动编写**.jrxml 或者用IReport生成**.jrxml或**.jasper 注:java导出报表与web项目显示报表方法其实是相同的,只不过有一句代码不同,如下 ...
- java web 入门实例servlet篇(显示后台数据库列表,删除某一条记录并显示)
编写过程中需要注意的问题: 1.建立eclipse动态web工程时,需要改写编译后class文件的位置,通常情况下是这个位置:/WebContent/WEB-INF/classes 2.配置的页面链接 ...
- SpringMVC——项目启动时从数据库查询数据
SpringMVC项目中遇到这样的问题: 1.很多数据字典需要从数据库中查询: 2.懒得修改SQL语句: 3.想在项目中声明静态变量存储数据字典,但是希望这个字典可以在项目启动时进行加载. 当遇到这样 ...
- Javaweb项目中修改表单时数据回显方法
1.前言 先来说下什么是数据回显,比如我要修改我的个人信息,点击修改按钮后进入修改界面,在这个界面中直接将原来的信息显示在表单中,而不是空表单,这就是数据回显 2.思路 当点击修改的时候,从数据库中查 ...
- zabbix 后台数据库清除数据
alerts 表 problem 表 escalations 表 events 表 event_recovery表 对 这些表进行清除 防止不停发送邮件 -- alerts table rebuil ...
- Decoration2:引入Angularjs显示前台一条数据
SpringMVC内置的RestFul API格式采用的是最复杂最全面的HATEOAS规范,对于简单应用来说,前台解析起来不方便,我们下面主要想办法重新定义一种简单的RestFulAPI. (1)先是 ...
- mysql 关于数据库和数据表的基本操作
-- 备注: -- .每一条mysql语句后面都需要加上半角分号 -- .可以用``符号(1键旁边的那个键)将字段名称引用起来,如`Name` -- .mysql在windows下不区分大小写,在li ...
- 用struts2标签如何从数据库获取数据并在查询页面显示。最近做一个小项目,需要用到struts2标签从数据库查询数据,并且用迭代器iterator标签在查询页面显示,可是一开始,怎么也获取不到数据,想了许久,最后发现,是自己少定义了一个变量,也就是var变量。
最近做一个小项目,需要用到struts2标签从数据库查询数据,并且用迭代器iterator标签在查询页面显示,可是一开始,怎么也获取不到数据,想了许久,最后发现,是自己少定义了一个变量,也就是var变 ...
随机推荐
- mybatis框架的分页功能
需求说明:为用户管理之查询用户列表功能增加分页实现 列表结果按照创建时间降序排列 /** * 需求说明:为用户管理之查询用户列表功能增加分页实现 列表结果按照创建时间降序排列 * @para ...
- 【C#】身份证号正确性验证及正则表达式格式验证
身份证前两位各省对应的编号是: 1.华北地区:北京市|11,天津市|12,河北省|13,山西省|14,内蒙古自治区|15: 2.东北地区: 辽宁省|21,吉林省|22,黑龙江省|23: 3.华东地区: ...
- Checking Types Against the Real World in TypeScript
转自:https://www.olioapps.com/blog/checking-types-real-world-typescript/ This is a follow-up to Type-D ...
- ESP8266 LUA脚本语言开发: 准备工作-动手编译LUA固件
前言 这节咱自己编译LUA固件 准备一台linux的机子 我把固件放到了git上,方便电脑用http下载 我先用这个连接linux 大家随意哈,只要是一台linux的机子就可以,不管是图形页面还是命令 ...
- Linux下进程间通信方式——pipe(管道)
每个进程各自有不同的用户地址空间,任何一个进程的全局变量在另一个进程中都看不到,所以进程之间要交换数据必须通过内核,在内核中开辟一块缓冲区,进程A把数据从用户空间拷到内核缓冲区,进程B再从内核缓冲区把 ...
- ZROI 暑期高端峰会 A班 Day6 离线问题
FBI Warning:本文含有大量人类本质之一. 动态联通问题 允许离线. 模板,不讲了. 归并排序 %@)(#&%)++%($@)%!#(&%)(&@))) 主定理 U^( ...
- ZROI 暑期高端峰会 A班 Day6 DP
[THUPC2018]城市地铁规划 (日常讲题之前 YY--) 一眼出 \(O(n^3+nk)\) 做法. \(dp[i][j]\) 表示前 \(i\) 个点,前 \(i\) 个点度数和为 \(j\) ...
- Mikrotik: Setup SSTP Server for Windows 10 Client
原文: http://www.dr0u.com/mikrotik-setup-sstp-server-for-windows-10-client/ Basic how-to on SSTP for a ...
- 详解手把手Maven搭建SpringMVC+Spring+MyBatis框架(超级详细版)
转载(https://www.jb51.net/article/130560.htm) SSM(Spring+SpringMVC+Mybatis),目前较为主流的企业级架构方案.标准的MVC设计模式, ...
- highcharts实现组织机构的点击选中和取消选中事件
代码 Highcharts.chart('container', { chart: { height: 600, inverted: true }, title: { text: 'Highsof ...