java 页面输出一个页面_java学习之:一个完整页面输出信息的过程(以输出Doctor表中信息为例)...

最近在练习java程序,总结一下从数据库查询信息并输出到jsp页面的过程。主要数据处理在src.cn.javatest包下面

366dc15c6ff3

项目预览

1,配置项目根目录src目录下的druid.properties数据库信息(相当于一个数据库配置文件)

里面的信息可以在下载druid中获得,只需要连接到数据库并填写数据库表,

username=账号;password=密码

366dc15c6ff3

2,在相应的包中,新建utils/JDBCUtils.java文件,该文件是加载数据库信息,并连接数据库。

public class JDBCUtils {

//定义成员变量

private static DataSource ds;

static {

try {

//1.加载配置文件

Properties pro = new Properties();

//使用ClassLoader加载配置文件,获取字节输入流

InputStream is = JDBCUtils.class.getClassLoader().getResourceAsStream("druid.properties");

pro.load(is);

//2.初始化连接池对象

ds = DruidDataSourceFactory.createDataSource(pro);

} catch (IOException e) {

e.printStackTrace();

} catch (Exception e) {

e.printStackTrace();

}

}

//获取连接

public static Connection getConnection() throws SQLException {

return ds.getConnection();

}

/**

* 获取连接池的方法

*/

public static DataSource getDataSource() {

return ds;

}

}

3,以上基础已做好,再新增页面就无需再重复1,2步骤,以下目录都和utils目录同级

4,在domain/Doctor.java下创建表的信息,包括表字段,set,get方法。

public class Doctor {

private int id;//数据库javatest 中doctor表字段id

private String name;//数据库javatest 中doctor表字段name

private String hospital;//数据库javatest 中doctor表字段hospital

private String phone;//数据库javatest 中doctor表字段phone

private String salary;//数据库javatest 中doctor表字段salary

private String province;//数据库javatest 中doctor表字段province

public int getId() {    //get方法

return id;

}

public void setId(int id) {    //set方法

this.id = id;

}

......        //其他字段也要做get/set方法

5,在dao/DoctorDao.java页面创建接口,并创建实现方法。

public interface DoctorDao {    //创建接口

public List findAll();    //方法

}

在dao/impl/DoctorDaoImpl.java页面实现DoctorDao.java中的方法。

public class DoctorDaoImpl implements DoctorDao{

private JdbcTemplate template = new JdbcTemplate(JDBCUtils.getDataSource());

@Override

public List findAll() {    //重写接口中的方法

// 使用JDBC操作数据库

String sqlString = "select * from doctor";

List doctors = template.query(sqlString, new BeanPropertyRowMapper(Doctor.class));

return doctors;

}

}

6,在service/DoctorService.java创建接口,并创建获取所有用户列表的方法

public interface DoctorService {    //DoctorService接口

//获取所有用户列表

public List findAll();    //DoctorService方法

}

在service/impl/DoctorServiceImpl.java中实现DoctorService.java中的方法

public class DoctorServiceImpl implements DoctorService {

private DoctorDao dao = new DoctorDaoImpl();

@Override

public List findAll() {        //实现接口类

// 调用Dao层获取数据

List doctorServiceImpl = dao.findAll();

return doctorServiceImpl;

}

}

7,在web/servlet/DoctorListServlet.java中获取doctor信息,并保存到request中。并使用request.getRequestDispatcher("/javatest/list.jsp").forward(request, response);转发到页面

@WebServlet("/doctorListServlet")

public class DoctorListServlet extends HttpServlet {

private static final long serialVersionUID = 1L;

public DoctorListServlet() {

super();

}

/**

* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)

*/

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

DoctorService service = new DoctorServiceImpl();

List doctors = service.findAll();//获取doctor信息

request.setAttribute("doctors", doctors);//将结果写到request域中

//转发到list.jsp页面

request.getRequestDispatcher("/javatest/list.jsp").forward(request, response);

}

8,创建/WebContent/javatest/index.jsp页面,做个点击跳转

href="${pageContext.request.contextPath}/doctorListServlet" style="text-decoration:none;font-size:33px">查询所有用户信息

创建/WebContent/javatest/list.jsp页面,并将想要的信息输出到页面

用户信息列表

编号姓名服务医院电话号码薪水省份操作
${s.count}${doctor.name}${doctor.hospital}${doctor.phone}${doctor.salary}${doctor.province}修改 删除

所有的代码均完成,在浏览器中访问,就可以获取到doctor表中数据并展示在页面。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/431831.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[xsd学习]xsd介绍

一直以来项目中对xml格式的判断使用的都是dtd格式,直到最近才发现,不知何时都已经转为xsd来进行判断和校验,于是今天专门找资料看下,不得不说,对于这类资料的入门,w3cschool真是个不错的资料库,…

教学目标四个维度_【深度好文】体育教案中的教学目标与学习目标应如何表述...

体育教师大本营教学/训练/职业/成长强 烈 建 议 大 家 星 标 我 们教 学 路 上 ☆ 不 离 不 弃在以往看到的体育课的教案上,目标部分不是用教学目标就是用学习目标来表述,然而,这两种目标表达形式有没有本质区别?分别该如何表述…

java中检查性异常类_Java异常处理、java语言推崇使用检查类型异常

异常处理是java语言的重要特性之一,《Three Rules for effective Exception Handling》一文中是这么解释的:它主要帮助我们在debug的过程中解决下面的三个问题。什么出错了哪里出错了为什么出错java语言可以说是提供了过于完善的异常处理机制&#xff0c…

nodejs readfilesync 路径_Linux 磁盘多路径聚合multipath

在日常工作中我们经常遇到配置存储的多路径聚合。多路径的目的是,当主机HBA卡、线缆、交换机或者存储设备的控制器故障等原因造成一条物理路径失效时,服务器可以将通过此物理路径的I/O转移到其他正常的物理路径上面,应用程序不会觉察到这种改变,从而提高…

u 20ubuntu 安装 postfix_极力推荐和田咨询问题U型钢托盘厂家

12极力推荐和田咨询问题U型钢托盘厂家泊头市毅伽属制品有限公司坐落于河北省泊头市龙华街北4公里,濒临京沪、石黄高速公路以及104、307国道,另有廊泊路贯穿南北交通十分便利。本公司设计生产各种冷弯型钢,产品包括C型钢、Z型钢、U型钢、M型钢…

HTML5中lineCap端点样式遇到closePath()

定义和用法 lineCap 属性设置或返回线条末端线帽的样式。 注释:"round" 和 "square" 会使线条略微变长。 默认值:buttJavaScript 语法:context.lineCap"butt|round|square";属性值 值描述butt默认。向线条的每…

php鼠标悬停显示图片,鼠标滑过出现预览的大图提示效果

当鼠标滑过图片时,图片会出现预览的大图,大图下面还会有介绍文字。.aa{width:88px;height :100px;}$(function () {var x 10;var y 20;$("a.tooltip").mouseover(function (e) {this.myTitle this.title;this.title "";var imgT…

405 not allowed什么意思_二驴质问散打:为什么不救天道!面临一个亿赔款?次惑小仙女宣布与可乐分手!...

次惑小仙女发作品表示:对不起让你们失望了,慢慢也学着长大了,懂得了很多,以前每天就知道天真傻笑的玩,后来懂得了努力和加油,但是很多东西并不是大家看到的那样背后的事情谁又能知道。都认为他对我很好,只有自己知道,呵呵。有些时…

hdu.1254.推箱子(bfs + 优先队列)

推箱子 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 6021 Accepted Submission(s): 1718 Problem Description推箱子是一个很经典的游戏.今天我们来玩一个简单版本.在一个M*N的房间里有一个箱子和一个搬运…

ae合成设置快捷键_怎么在ae中剪切视频?怎么在ae里裁剪视频?

ae剪切裁剪视频教程:零基础学AE软件影视后期必修课程-AE新建合成-羽兔网​www.yutu.cn1、启动After Effects并导入视频第一个任务是打开一个新项目,并将视频加载到其中。首先从主菜单中选择新的构图。然后打开构图菜单,选择所需的分辨率等&am…

php js获取元素id,javascript通过中文id和class获取元素的方法

以前以为html元素中的id和class等只能通过字母数字或者下划线等特殊字符命名,如果单存使用中文浏览器不会报错,但是js是获取不到的,但是今天逛论坛的时候发现不是这样的。代码如下:运行结果:论坛来源是这个&#xff1a…

delphi random 六位_《蒙面唱将猜猜猜》第五季将播,六位唱将率先登场

原标题:《蒙面唱将猜猜猜》第五季将播,六位唱将率先登场新京报讯(记者 刘玮)《蒙面唱将猜猜猜》第五季将于11月1日21:10在江苏卫视首播,优酷视频全网独播。第五季中,猜评团不仅“觊觎”各路唱将的真实身份,…

java中sql之count,SQL COUNT() 函数--编程学习网

COUNT() 函数返回匹配指定条件的行数。SQL COUNT(column_name) 语法COUNT(column_name) 函数返回指定列的值的数目(NULL 不计入):SELECT COUNT(column_name) FROM table_name;SQL COUNT(*) 语法COUNT(*) 函数返回表中的记录数:SELECT COUNT(*) FROM tabl…

苹果笔记本双系统怎么切换_2020年你该怎么选择苹果笔记本,资深用户带你讲透MacBook Air MacBook Pro...

作为一名曾经的苹果生态开发者我2012年10月份购入自己的第一台苹果笔记本:MacBook Pro 13寸,那时候还很厚重,机械硬盘的配置,为了省钱,在官网翻新机渠道购买的,记得当初新机的原价是8000多,翻新…

苹果6s怎么导出照片_怎么恢复苹果手机删除的照片?今天教你三种找回方法

怎么恢复苹果手机删除的照片?手机的出现虽然带给我们很大便利,同时却也带来了一些小的麻烦。在手机上很多操作步骤都很简单,因此,难免会遇到手滑误操作的情况。拿照片这项内容来说,我们可能误删除一些本来不需要删除的…

iptables 开放远程_远程FX正式上市 指导价11.99万-12.99万元_搜狐汽车

本文车型速览除了文章作者的主观观点外,我们正尝试基于全网可查的客观数据,为您提供中立、客观的参考依据:本文部分车型速览:畅销车型质量排行top10展开微信扫码,直接一次看完附近所有城市低价(附近城市均有经销商可售…

matlab项目实例教程,matlab简明实例教程.doc

matlab简明实例教程.doc 南京航空航天大学王正盛1MATLAB数学工具软件实例简明教程王正盛编写南京航空航天大学南京航空航天大学王正盛2第一章MATLAB简介MALAB译于矩阵实验室MATrixLABoratory是用来提供通往LINPACK和EISPACK矩阵软件包接口的后来它渐渐发展成了通用科技计算图视…

pointcut 排除_宁河天津玻璃门地弹簧玻璃门故障排除

宁河天津玻璃门地弹簧玻璃门故障排除门扇玻璃应用钢丝卡固定。安装完毕要做好安装后的清洁工作.相关概念钢化玻璃钢化玻璃(Temperedglass/Reinforcedglass)属于安全玻璃。钢化玻璃其实是一种预应力玻璃,为提高玻璃的强度,通常使用化学或物理的方法&#…

四则运算心得

#include<stdio.h>#include<math.h>#include<windows.h>int right0;int wrong0;void add(){int a,b,c;arand()%100;brand()%100;printf("请回答&#xff1a;\n\t\t %d %d ",a,b);scanf("%d",c);if(abc){printf("回答正确!\n"…

php中一级标题和二级标题,什么是一级标题,一二三标题格式举例

什么是一级标题什么是一流的标题&#xff0c;第一级标题是讨论的第一个内容&#xff0c;如序言&#xff1b;一级标题通常指序号为[I&#xff0c;]的标题&#xff0c;也是最大的标题它是4号黑体&#xff0c;单行无标点符号&#xff1b;二级标题是指序号为[(1)]的标题&#xff0c…