首先我们在在File中选择new在选择java project在任意取一个名字,如图:

  选择才创建的项目userManager,在src下分别创建dao包,DBHelper包(可直接在其他项目中把它复制过来),entity包和servlet包,如图:

  打开entity,在它下面new一个class,命名为User,然后定义三个变量代码如下:

package entity;public class User {private String userID;private String username;private String userword;public String getUserID() {return userID;}public void setUserID(String userID) {this.userID = userID;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getUserword() {return userword;}public void setUserword(String userword) {this.userword = userword;}}

  打开DAO,在它下面new一个class,命名为Userdao,代码如下:

package dao;import java.util.*;
import java.sql.*;import entity.*;
import DBHelper.*;public class Userdao {public List getAllUser() {String SQL = "SELECT * FROM user";ResultSet rs = DBHelper.getResultSet(SQL);return tools.ResultSettoList(rs, User.class);// try{// String SQL="SELECT*FROM user";// ResultSet rs= DBHelper.getResultSet(SQL);// List users=new ArrayList();// while(rs.next())// {// User u=new User();// u.setUserID(rs.getString("userID"));// u.setUsername(rs.getString("userName"));// u.setUserword(rs.getString("password"));// users.add(u);// }// return users;// }catch(Exception ex){return null;// }//}public boolean insert(User u){String SQL="INSERT INTO user(userID,username,userword) VALUES(?,?,?)";Object[] params=new Object[]{u.getUserID(),u.getUsername(),u.getUserword()};int n=DBHelper.ExecSql(SQL,params);if(n>0) return true;else return false;}public boolean update(User u){String sql="update  user set username=?,userword=? where userID=?";Object[] obj=new Object[]{u.getUsername(),u.getUserword(),u.getUserID()};int rs=DBHelper.ExecSql(sql,obj);if(rs==1)return true;elsereturn false;}public boolean delete(User u){String sql="delete from user where userID=?";Object[] obj=new Object[]{u.getUserID()};int rs=DBHelper.ExecSql(sql,obj);if(rs==1)return true;elsereturn true;}}

  接着还需要在DAO下创建一个类,命名为testdao,用于测试Userdaobao的代码,代码如下:

package dao;import java.sql.SQLException;
import java.util.List;import entity.User;public class testDAO {public static void main(String[] args) throws SQLException {
//       TODO Auto-generated method stub
//      测试查询
//     Userdao dao= new Userdao();
//     List list =dao.getAllUser();
//     System.out.println(list.size());
//      测试添加:Userdao dao=new Userdao();User u= new User();
//         u.setUserID("d");
//         u.setUsername("d");
//         u.setUserword("d");
//          dao.insert(u);
//
//         测试删除:
//         u.setUserID("d");
//         dao.delete(u);
//         System.out.println("u");
//         测试修改u.setUserID("c");u.setUserword("q");u.setUsername("q");dao.update(u);System.out.println("u");}}

  打开servlet,在它下面new一个servlet,命名为UserServlet,把 pageEncoding改成UTF0-8;删除doGet和doPost里的内容,doGet和doPost里的代码如下:

package servlet;import java.io.*;
import java.util.*;import javax.servlet.*;
import javax.servlet.http.*;import dao.*;
import entity.*;
import DBHelper.*;
public class Userservlet extends HttpServlet {/*** Constructor of the object.*/public Userservlet() {super();}/*** Destruction of the servlet. <br>*/public void destroy() {super.destroy(); // Just puts "destroy" string in log// Put your code here}/*** The doGet method of the servlet. <br>** This method is called when a form has its tag value method equals to get.* * @param request the request send by the client to the server* @param response the response send by the server to the client* @throws ServletException if an error occurred* @throws IOException if an error occurred*/public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doPost(request, response);}/*** The doPost method of the servlet. <br>** This method is called when a form has its tag value method equals to post.* * @param request the request send by the client to the server* @param response the response send by the server to the client* @throws ServletException if an error occurred* @throws IOException if an error occurred*/public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {Userdao dao=new Userdao();List users=dao.getAllUser();request.getSession().setAttribute("users", users);response.sendRedirect("show.jsp");}/*** Initialization of the servlet. <br>** @throws ServletException if an error occurs*/public void init() throws ServletException {// Put your code here}}

  在WebRoot下创建一个user命名的目录,然后在user下new一个show.jsp。先导入entity包,在把 pageEncoding改成UTF0-8;然后再body里写输出的样式,代码如下:

<%@ page language="java" import="java.util.*,dao.*,DBHelper.*,entity.*"  pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><title>User.jsp</title></head><body><%List<User>users = (List<User>)session.getAttribute("users");
//String uid=request.getParameter("userID");//String uname=request.getParameter("username");
//String password=request.getParameter("password");
//out.print("用户ID:"+uid+"<hr/>");
//out.print("姓名:"+uname+"<hr/>");
//out.print("密码:"+password+"<hr/>");out.print("<table border=1 cellspacing=1>");out.print("<tr><td>id</td><td>用户名</td><td>密码</td></tr>");for(User u:users){out.print("<tr>");out.print("<td>"+u.getUserID()+"</td>");out.print("<td>"+u.getUsername()+"</td>");out.print("<td>"+u.getUserword()+"</td>");out.print("</tr>");}out.print("</table>");%></body>
</html>

  记得一定要将链接sql的驱动文件复制在WebRoot下的WEB-INF里的lib下面。

  打开WebRoot下的WEB-INF,打开web.xml,复制其路径,开启服务,输入网址(网址如http://localhost:8080/userManager/servlet/UserServlet)即可查看。路径如图:

转载于:https://www.cnblogs.com/qianpeng/p/5280175.html

Java中实现连接数据库并进行查询相关推荐

  1. Java中JDBC连接数据库详解

    今天动力节点java学院小编分享的是JDBC连接数据库的相关知识,希望通过看过此文,各位小伙伴对DBC连接数据库有所了解,下面就跟随小编一起来看看JDBC连接数据库的知识吧. 一.JDBC连接数据库概 ...

  2. Java中JDBC连接数据库(MySQL)

     JDBC连接数据库步骤. 一个简单详细的查询数据的例子. 封装连接数据库,释放数据库连接方法. 实现查询,插入,删除,更新等十一个处理数据库信息的功能.(包括事务处理,批量更新等) 把十一个功能都放 ...

  3. Java中SQL语句写模糊查询_到底Java里的模糊查询语句该怎么写

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 现在String sql="select * from car where carName like '%'+?+'%'";可以查询出 ...

  4. java中pageInfo分页带条件查询+查询条件的回显

    代码如下:解析在下边 <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %&g ...

  5. C#中怎样连接数据库并将查询结果转为实体类以及如何加入事务

    场景 新建一个程序,需要对数据的表进行查询并将查询结果转换为实体类,然后将多个实体类 再插入到另一个数据库的表中,执行插入的过程中要使用事务. 注: 博客主页: https://blog.csdn.n ...

  6. java中多个条件模糊查询,带条件的查询—模糊查询

    模糊查询(都是针对字符串操作的) 模糊查询有点类似于正则表达式,但是他没有正则表达式那么强大. 通配符:  _   . % .   []  .   ^ _  表示任意的单个字符串. select * ...

  7. 如何在Java中写模糊查询

    转载自:https://blog.csdn.net/gradonisis/article/details/105323751 如何在Java中写模糊查询 模糊查询是什么? 数据库中查询: Java中查 ...

  8. java中的NIO,BIO,AIO

    IO,input和output,Java 为 I/O 提供了强大的而灵活的支持,使其更广泛地应用到文件传输和网络编程中. IO是什么?为什么需要IO? java在1.4之前,提供的是BIO,也就是ja ...

  9. Redis在Java中的使用及连接数据库(附源码)

    Redis在Java中的使用及连接数据库(附源码) 引言: 本文主要分享了Redis如何在IDEA中部署,运行:模拟加入Redis的操作: 文章目录 Redis在Java中的使用及连接数据库(附源码) ...

最新文章

  1. MySQL优化篇:执行计划explain中key_len计算方式
  2. 图灵奖颁给深度学习之父,他们让计算机像学霸一样思考
  3. Maven 模块继承、聚合
  4. 使用Spring Security对RESTful服务进行身份验证
  5. python做物联网控制_python实现NB-IoT模块远程控制
  6. 企业实战_18_MyCat_ZK集群安装部署
  7. leetcode - 448. 找到所有数组中消失的数字
  8. 制度化规范化标准化精细化_管理技巧:为什么说企业制度化管理势在必行?好处太多了...
  9. JUnit5 @BeforeEach注解示例
  10. Android功能点(一)——判断网络是否真正连通
  11. 机器学习面试-Libsvm
  12. 文本情感分类python_文本情感分类(一):传统模型
  13. ISO 3166-1标准国家代码表
  14. 一种简单、安全的Dota全图新思路 作者:LC 【转】
  15. 新世纪版五笔字根高清版
  16. MySQL 冷备份操作 + shell 脚本自动备份
  17. Java-----投票系统
  18. 使用飞信SDK开发短信收发程序
  19. vue拿到某个节点的属性_vue实现将某个dom元素或组件挂载到根节点
  20. ArcGIS属性表的计算

热门文章

  1. Python——字典生成式
  2. python调整图像大小_使用Python调整图像大小
  3. Selenium UI自动化测试(四)Python+Unittest+HTMLTestRunner测试报告—百度hao123实例
  4. 比特币链上活跃度下降,近24小时交易额约为1050.57亿美元
  5. SAP License:如何更好的管理ERP中的供应商?
  6. SAP License:发票校验
  7. Flink SQL实时数仓开源UI平台
  8. 根据xml文件生成对应javabean类
  9. 关于滤波电容、去耦电容、旁路电容作用
  10. mark ubuntu 16.04 64bit + cpu only install mtcnn