servlet+jsp+jdbc实现从数据库查询用户信息到页面
工程创建这里就不在累述了,直接从显示User信息列表开始。
备注:我用的是servlet3的注解功能实现的,所以不需要配置web.xml
这是我的工程目录:

首先我们创建实体类:
public class User implements Serializable{
private static final long serialVersionUID = 1L;
public User() {
}
private Integer id;
private String name;
private String age;
private String addrs;
......省略的get和set方法......
}
然后在index.jsp页面中写一个链接如下:<a href="listUser.do">显示用户列表</a>。
然后在src下创建com.servlet.servlet包并创建UserServlet类,
@WebServlet("/listUser.do")//此处使用的是servlet的注解,listUser.do要和index.jsp中的链接保持一致。
public class UserServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//获取用户列表
UserService userService=new UserService();//创建UserService对象,
List list=userService.getListAll();
request.setAttribute("list", list);
request.getRequestDispatcher("/jsp/success.jsp").forward(request, response);//跳转到success.jsp页面
}
}
然后在创建对应的UserService类,
public class UserService {
/**
* 查询
* @return
*/
public List<User> getListAll(){
UserDao userDao = new UserDaoImpl();
List list = userDao.getListAll();
return list;
}
}
最后创建UserDao接口和UserDaoImpl实现类
public interface UserDao {
/**
* 获取所有用户
* @return List
*/
List<User> getListAll();
}
public class UserDaoImpl implements UserDao{
/**
* 获取所用用户
*/
@Override
public List<User> getListAll() {
List<User> list=new ArrayList<User>();//创建list集合,用于保持User对象
try {
Connection conn=DBUtil.getConnection();//通过工具类直接调用getConnection方法获取jdbc连接。
String sql="select * from user";
PreparedStatement ps=conn.prepareStatement(sql);
ResultSet rs=ps.executeQuery();
while(rs.next()){
User user=new User();//创建User对象用于保持从数据看查出来的数据
user.setId(rs.getInt(1));
user.setName(rs.getString(2));
user.setAge(rs.getString(3));
user.setAddrs(rs.getString(4));
list.add(user);
}
} catch (SQLException e) {
e.printStackTrace();
}
return list;
}
}
连接数据库的DBUtils工具类
public class DBUtil {
private static final String URL="jdbc:mysql://localhost:3306/servlet";//数据库名称为servlet
private static final String USER="root";
private static final String PASSWORD="1234";
private static Connection conn=null;
static{
try {
//加载驱动
Class.forName("com.mysql.jdbc.Driver");
//创建连接
conn=DriverManager.getConnection(URL, USER, PASSWORD);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
public static Connection getConnection(){
return conn;
}
}
最后我们创建返回用户信息的success.jsp页面
<body>
<table border=1 cellpadding="10" cellspacing="0">
<tr>
<th>id</th>
<th>name</th>
<th>age</th>
<th>addrs</th>
</tr>
<c:forEach items="${list }" var="user">//这里使用的是jstl标签以及el表达式显示用户信息
<tr>
<th>${user.id }</th>
<th>${user.name }</th>
<th>${user.age }</th>
<th>${user.addrs }</th>
</tr>
</c:forEach>
</table>
</body>
最后我们创建对应的数据库以及user数据表,然后添加几条数据,运行下项目。
servlet+jsp+jdbc实现从数据库查询用户信息到页面的更多相关文章
- 如何使用JDBC Request跨数据库查询后引用查询的结果作为下一个JDBC Request的入参
[前言] 今天来给大家介绍下如何使用JDBC Request跨数据库查询后引用查询的结果作为下一个JDBC Request的入参! 因为我现在所测的系统模块中部分表在不同的数据库中,所以在用JDBC ...
- 阶段5 3.微服务项目【学成在线】_day17 用户认证 Zuul_03-用户认证-认证服务查询数据库-查询用户接口-接口定义
1.2.4 查询用户接口 完成用户中心根据账号查询用户信息接口功能. 在ucenter这个服务里面定义查询用户信息的接口 这个接口在auth的服务的loadUserByUserName这个方法里面被调 ...
- 整合ssm三大框架使用注解开发查询用户信息
整合ssm三大框架使用注解开发查询用户信息 一.基础知识准备之spring mvc工作原理 二.分析 第一步:发起请求到前端控制器(DispatcherServlet) 第二步:前端控制器请求Hand ...
- mybatis04 根据用户名称模糊查询用户信息
根据用户名称模糊查询用户信息可能返回多条记录. 1.1.1User.xml 编码 如果用%进行模糊查询,#{}表示一个占位符会被翻译为一个?号(SELECT * FROM USER WHERE id= ...
- python实现用户登陆(sqlite数据库存储用户信息)
python实现用户登陆(sqlite数据库存储用户信息) 目录 创建数据库 数据库管理 简单登陆 有些地方还未完善. 创建数据库 import sqlite3 #建一个数据库 def create_ ...
- mybatis由浅入深day01_4入门程序_4.6根据用户id(主键)查询用户信息
4 入门程序 4.1 需求 根据用户id(主键)查询用户信息 根据用户名称模糊查询用户信息 添加用户 删除 用户 更新用户 4.2 环境 java环境:jdk1.7.0_72 eclipse:indi ...
- MyBatis使用模糊查询用户信息及log4j配置文件详解
1.1 根据用户名称模糊查询用户信息 根据用户名模糊查询用户信息,只需要我们更改映射文件中的sql语句.其他的内容跟上一篇的内容是一样的 1.2添加根据用户名称模糊查询用户信息的sql语句 实例中是查 ...
- mybatis由浅入深day01_4.7根据用户名称模糊查询用户信息_4.8添加用户((非)自增主键返回)
4.7 根据用户名称模糊查询用户信息 4.7.1 映射文件 使用User.xml,添加根据用户名称模糊查询用户信息的sql语句. 4.7.2 程序代码 控制台: 4.8 添加用户 4.8.1 映射文件 ...
- 使用mybatis开发Dao的原始方法,实现根据用户id查询一个用户信息 、根据用户名称模糊查询用户信息列表 、添加用户信息等功能
1.需求 将下边的功能实现Dao: 根据用户id查询一个用户信息 根据用户名称模糊查询用户信息列表 添加用户信息 2. 原始Dao开发方法需要程序员编写Dao接口和Dao实现类 3.User.xml映 ...
随机推荐
- string使用
一.list和string转化 List转字符串,用逗号隔开 List<string> list = new List<string>();list.Add("a&q ...
- win10 UWP读写文件
C# uwp应用的文件读写最常见错误就是没有权限. 而最简单的方法是对已知的文件路径进行访问 已知的文件路径常见的是自身的路径 权限这个和之前不同,UWP读写文件多用StorageFile来读写文件 ...
- Javascript常见浏览器兼容问题
常见浏览器原生javascript兼容性问题主要分为以下几类: 一.Dom 1.获取HTML元素,兼容所有浏览器方法:document.getElementById("id")以I ...
- Spring 为Bean对象执行初始化和销毁方法
1)初始化: ①可以利用<bean>元素的init-method="方法名"属性指定初始化方法. ②指定的初始化方法是在构造方法调用后自动执行.若非单例模式,则每创建一 ...
- 写了一个bug,最后却变成了feature,要不要修呢?
事情是这样子的,前不久接到一个需求,为一个游戏开发礼包码功能 通常一款游戏运营期间会搞各种各样的活动吸引玩家,其中最常见的就是发放礼包, 玩家可以通过礼包码兑换礼包. 用礼包码兑换礼包有个一限制,游 ...
- asp.net在类库中使用EF 6.0时的相关配置
前提:之前使用EF的配置都是直接使用NuGet安装在项目中,然后直接修改web.config中的connectionString,然后创建相关dbcontext直接使用就可以了.此次为直接将EF安装在 ...
- CSS选择器汇总
id选择器 #id 类选择器 .class 标签选择器 div, h1, p 相邻选择器 h1 + p 子选择器 ul > li 后代选择器 li a 通配符选择器 * 属性选择器 a[rel= ...
- 用python爬取微博数据并生成词云
很早之前写过一篇怎么利用微博数据制作词云图片出来,之前的写得不完整,而且只能使用自己的数据,现在重新整理了一下,任何的微博数据都可以制作出来,放在今天应该比较应景. 一年一度的虐汪节,是继续蹲在角落默 ...
- zookeeper启动后的注意事项
在各节点中运行zkServer.sh start后 1.首先看进程是否存在 QuorumPeerMain. 2.查看zookeeper的运行状态 zkServer.sh status,会出现一个lea ...
- HDU 3584 Cube(三位树状数组)
Cube Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others)Total Submi ...