zoukankan      html  css  js  c++  java
  • jsp 实现查询功能

    要求:

    实现查询功能

    1.数据库代码

     1 create database mvce;
     2 use mvce;
     3 create table test2(
     4 id int not null identity,   
     5 tname char(10) not null,
     6 tttype char(20) not null,
     7 tatt char(20) not null,
     8 tkfsname char(10) not null,
     9 tcity char(20) not null,
    10 taddress char(50) not null,
    11 tbeizhu char(50) not null,
    12 )
    13 ---------------------------------------------------------
    14 insert into test2 values('wanke bai','big','black','vanke','changchun','beihu','king')
    数据库code

    2.数据

    po/User.jsp

     1 package po;
     2 
     3 public class User {
     4     int id;
     5     String tname;
     6       String ttype;
     7       String tatt;
     8       String tkfsname;
     9       String tcity;
    10       String taddress;
    11       String tbeizhu;
    12     public User() {
    13         super();
    14         // TODO Auto-generated constructor stub
    15     }
    16     
    17     public User(int id, String tname, String ttype, String tatt,
    18             String tkfsname, String tcity, String taddress, String tbeizhu) {
    19         super();
    20         this.id = id;
    21         this.tname = tname;
    22         this.ttype = ttype;
    23         this.tatt = tatt;
    24         this.tkfsname = tkfsname;
    25         this.tcity = tcity;
    26         this.taddress = taddress;
    27         this.tbeizhu = tbeizhu;
    28     }
    29     public int getId() {
    30         return id;
    31     }
    32 
    33     public void setId(int id) {
    34         this.id = id;
    35     }
    36 
    37     public String getTname() {
    38         return tname;
    39     }
    40 
    41     public void setTname(String tname) {
    42         this.tname = tname;
    43     }
    44 
    45     public String getTtype() {
    46         return ttype;
    47     }
    48 
    49     public void setTtype(String ttype) {
    50         this.ttype = ttype;
    51     }
    52 
    53     public String getTatt() {
    54         return tatt;
    55     }
    56 
    57     public void setTatt(String tatt) {
    58         this.tatt = tatt;
    59     }
    60 
    61     public String getTkfsname() {
    62         return tkfsname;
    63     }
    64 
    65     public void setTkfsname(String tkfsname) {
    66         this.tkfsname = tkfsname;
    67     }
    68 
    69     public String getTcity() {
    70         return tcity;
    71     }
    72 
    73     public void setTcity(String tcity) {
    74         this.tcity = tcity;
    75     }
    76 
    77     public String getTaddress() {
    78         return taddress;
    79     }
    80 
    81     public void setTaddress(String taddress) {
    82         this.taddress = taddress;
    83     }
    84 
    85     public String getTbeizhu() {
    86         return tbeizhu;
    87     }
    88 
    89     public void setTbeizhu(String tbeizhu) {
    90         this.tbeizhu = tbeizhu;
    91     }
    92 }
    数据 和数据库 关联

    3.数据连接  db/Dbconn.jsp  

     1 package db;
     2 
     3 import java.sql.Connection;
     4 import java.sql.DriverManager;
     5 import java.sql.ResultSet;
     6 import java.sql.SQLException;
     7 import java.sql.Statement;
     8 
     9 public class DbConn {
    10 
    11     public  static Connection  getConn()
    12     {
    13         Connection con =null;
    14         try {
    15             //    Class.forName("com.mysql.jdbc.Driver"); // 加载驱动程序
    16                 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
    17 
    18             } catch (ClassNotFoundException e) {
    19                 System.out.println("加载驱动程序错误" + e.getMessage());
    20             }
    21             try {
    22                 // 创建连接 testdb是数据库名称
    23                  con = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=mvce", "sa", "123456");
    24 
    25             } catch (SQLException e) {
    26 
    27                 System.out.println("数据库连接操作出错" + e.getMessage());
    28             }
    29         
    30         return con;
    31     }
    32 }
    数据库连接

    4.数据库处理  dao/UserDAO.java

     1 package dao;
     2 
     3 import java.sql.Connection;
     4 import java.sql.DriverManager;
     5 import java.sql.ResultSet;
     6 import java.sql.SQLException;
     7 import java.sql.Statement;
     8 import java.util.ArrayList;
     9 import java.util.List;
    10 
    11 import db.DbConn;
    12 import po.User;
    13 
    14 public class UserDAO {
    15 
    16     public  List<User> getUserList()
    17     {
    18         List<User> ls=new ArrayList<User>();
    19         try {
    20             // 创建连接 testdb是数据库名称
    21             Connection con =DbConn.getConn();
    22                 // 创建声明SQL对象
    23             Statement stm = con.createStatement();
    24             // 执行SQL语句,得到结果集,结果集放到ResultSet对象中
    25             ResultSet rs = stm.executeQuery("select * from test2");
    26             // 通过循环,从结果集对象中取得数据
    27             while (rs.next()) {
    28 
    29                                //从数据库中获取字段 内容 放到main.jsp 界面
    30                 int id = rs.getInt("id"); // 取得int类型的字段id的值,
    31                 String tname = rs.getString("tname"); // 取得字符类型的字段username的值,
    32                 String ttype = rs.getString("ttype");
    33                 String tatt=rs.getString("tatt");
    34                 String tkfsname=rs.getString("tkfsname");
    35                 String tcity=rs.getString("tcity");
    36                 String taddress=rs.getString("taddress");
    37                 String tbeizhu=rs.getString("tbeizhu");
    38                 User u=new User();
    39 
    40                   u.setId(id);
    41                   u.setTname(tname);
    42                   u.setTtype(ttype);
    43                   u.setTatt(tatt);
    44                   u.setTkfsname(tkfsname);
    45                   u.setTcity(tcity);
    46                   u.setTaddress(taddress);
    47                   u.setTbeizhu(tbeizhu);
    48                   ls.add(u);
    49 
    50 
    51             }
    52         } catch (SQLException e) {
    53 
    54             System.out.println("数据库操作出错" + e.getMessage());
    55         }
    56         return ls;
    57     }
    58 }
    getUserList

    5.中间媒介  servlet/GetUsersServlet.java

    用LoginServlet 需要跳转到 Get    要不然的没有数据没有传递过去  会报错的

     1 package servlet;
     2 
     3 import java.io.IOException;
     4 import java.io.PrintWriter;
     5 import java.sql.*;
     6 
     7 import javax.servlet.ServletException;
     8 import javax.servlet.http.HttpServlet;
     9 import javax.servlet.http.HttpServletRequest;
    10 import javax.servlet.http.HttpServletResponse;
    11 
    12 import dao.UserDAO;
    13 import db.DbConn;
    14 
    15 public class LoginServlet extends HttpServlet {
    16 
    17     /**
    18      * Constructor of the object.
    19      */
    20     public LoginServlet() {
    21         super();
    22     }
    23 
    24     /**
    25      * Destruction of the servlet. <br>
    26      */
    27     public void destroy() {
    28         super.destroy(); // Just puts "destroy" string in log
    29         // Put your code here
    30     }
    31 
    32     /**
    33      * The doGet method of the servlet. <br>
    34      *
    35      * This method is called when a form has its tag value method equals to get.
    36      * 
    37      * @param request the request send by the client to the server
    38      * @param response the response send by the server to the client
    39      * @throws ServletException if an error occurred
    40      * @throws IOException if an error occurred
    41      */
    42     public void doGet(HttpServletRequest request, HttpServletResponse response)
    43             throws ServletException, IOException {
    44           doPost(request,response);
    45     }
    46 
    47     /**
    48      * The doPost method of the servlet. <br>
    49      *
    50      * This method is called when a form has its tag value method equals to post.
    51      * 
    52      * @param request the request send by the client to the server
    53      * @param response the response send by the server to the client
    54      * @throws ServletException if an error occurred
    55      * @throws IOException if an error occurred
    56      */
    57     public void doPost(HttpServletRequest request, HttpServletResponse response)
    58             throws ServletException, IOException {
    59 
    60         response.setContentType("text/html");
    61         PrintWriter out = response.getWriter();
    62         out
    63                 .println("<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">");
    64         out.println("<HTML>");
    65         out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
    66         out.println("  <BODY>");
    67         
    68 
    69         
    70         
    71             response.sendRedirect("../servlet/GetUsersServlet");
    72             
    73 
    74    
    75         
    76         out.println("  </BODY>");
    77         out.println("</HTML>");
    78         out.flush();
    79         out.close();
    80     }
    81 
    82     /**
    83      * Initialization of the servlet. <br>
    84      *
    85      * @throws ServletException if an error occurs
    86      */
    87     public void init() throws ServletException {
    88         // Put your code here
    89     }
    90 
    91 }
    LoginServlet
     1 package servlet;
     2 
     3 import java.io.IOException;
     4 import java.io.PrintWriter;
     5 import java.util.List;
     6 
     7 import javax.servlet.ServletException;
     8 import javax.servlet.http.HttpServlet;
     9 import javax.servlet.http.HttpServletRequest;
    10 import javax.servlet.http.HttpServletResponse;
    11 import javax.servlet.http.HttpSession;
    12 
    13 import po.User;
    14 
    15 import dao.UserDAO;
    16 
    17 public class GetUsersServlet extends HttpServlet {
    18 
    19     /**
    20      * Constructor of the object.
    21      */
    22     public GetUsersServlet() {
    23         super();
    24     }
    25 
    26     /**
    27      * Destruction of the servlet. <br>
    28      */
    29     public void destroy() {
    30         super.destroy(); // Just puts "destroy" string in log
    31         // Put your code here
    32     }
    33 
    34     /**
    35      * The doGet method of the servlet. <br>
    36      *
    37      * This method is called when a form has its tag value method equals to get.
    38      * 
    39      * @param request the request send by the client to the server
    40      * @param response the response send by the server to the client
    41      * @throws ServletException if an error occurred
    42      * @throws IOException if an error occurred
    43      */
    44     public void doGet(HttpServletRequest request, HttpServletResponse response)
    45             throws ServletException, IOException {
    46         doPost(request,response);
    47     }
    48 
    49     /**
    50      * The doPost method of the servlet. <br>
    51      *
    52      * This method is called when a form has its tag value method equals to post.
    53      * 
    54      * @param request the request send by the client to the server
    55      * @param response the response send by the server to the client
    56      * @throws ServletException if an error occurred
    57      * @throws IOException if an error occurred
    58      */
    59     public void doPost(HttpServletRequest request, HttpServletResponse response)
    60             throws ServletException, IOException {
    61         //
    62         response.sendRedirect("../servlet/GetUsersServlet");
    63         
    64         response.setContentType("text/html");
    65         PrintWriter out = response.getWriter();
    66         out
    67                 .println("<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">");
    68         out.println("<HTML>");
    69         out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
    70         out.println("  <BODY>");
    71           HttpSession  session=request.getSession(true);
    72          
    73          UserDAO udao=new UserDAO();
    74           List<User> ls= udao.getUserList();
    75              session.setAttribute("userlist", ls);
    76             response.sendRedirect("../main.jsp");
    77             
    78         out.println("  </BODY>");
    79         out.println("</HTML>");
    80         out.flush();
    81         out.close();
    82     }
    83 
    84     /**
    85      * Initialization of the servlet. <br>
    86      *
    87      * @throws ServletException if an error occurs
    88      */
    89     public void init() throws ServletException {
    90         // Put your code here
    91     }
    92 
    93 }
    GetUsersServlet.jsp

    6.jsp 页面

    main.jsp 数据显示  

     1 <%@ page language="java" import="java.util.*" pageEncoding="GB2312"%>
     2 <%
     3 String path = request.getContextPath();
     4 String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
     5 %>
     6 
     7 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
     8 <html>
     9   <head>
    10     <base href="<%=basePath%>">
    11     
    12     <title>My JSP 'Login.jsp' starting page</title>
    13     
    14     <meta http-equiv="pragma" content="no-cache">
    15     <meta http-equiv="cache-control" content="no-cache">
    16     <meta http-equiv="expires" content="0">    
    17     <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    18     <meta http-equiv="description" content="This is my page">
    19     <!--
    20     <link rel="stylesheet" type="text/css" href="styles.css">
    21     -->
    22 
    23   </head>
    24   
    25   <body>
    26     <div align="center" >
    27        <form method="get" action="servlet/LoginServlet">
    28        
    29                用户名:<input type="text" name="username"><br>
    30             密码:<input type="password" name="password"><br>
    31             <input type="submit" name="button1" value="登录">
    32         </form>
    33     </div>
    34 </body>
    35 </html>
    Login.jsp
     1 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
     2 <%@ page import="po.*" %>
     3 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
     4 <html>
     5   <head>
     6     <title>My JSP 'main.jsp' starting page</title>
     7   </head>
     8   
     9   <body>
    10  <table width="502" border="1">
    11   <tr>
    12     <td width="37">房屋编号</td>
    13     <td width="63">房屋名称</td>
    14     <td width="52">房屋类型</td>
    15     <td width="52">房屋属性</td>
    16     <td width="61">开发商名称</td>
    17     <td width="197">所在城市</td>
    18     <td width="80">具体地址</td>
    19     <td width="80">备注</td>
    20   </tr>
    21   <%
    22         List<User> ls=(List<User>)session.getAttribute("userlist");
    23         for(int i=0;i<ls.size();i++)
    24         {
    25             User u=ls.get(i);
    26             %>
    27          <tr>
    28             <td><%=u.getId()%></td>
    29             <td><%=u.getTname()%></td>
    30             <td><%=u.getTtype()%></td>
    31             <td><%=u.getTatt()%></td>
    32             <td><%=u.getTkfsname()%></td>
    33             <td><%=u.getTcity()%></td>
    34             <td><%=u.getTaddress()%></td>
    35             <td><%=u.getTbeizhu()%></td>
    36 
    37         </tr>
    38        <% 
    39      }
    40    %>
    41    </table>
    42   </body>
    43 </html>
    main.jsp

    遇到的问题:

    servlet的转发问题   。  可不可以不用Login.jsp  直接显示

  • 相关阅读:
    Mybatis的XML中数字不为空的判断
    初步使用VUE
    Vue中实现菜单下拉、收起的动画效果
    Docker For Windows时间不对的问题
    freemarker使用自定义的模板加载器通过redis加载模板
    .net core 打印请求和响应的内容
    codedecision P1113 同颜色询问 题解 线段树动态开点
    洛谷P2486 [SDOI2011]染色 题解 树链剖分+线段树
    洛谷P3150 pb的游戏(1)题解 博弈论入门
    codedecision P1112 区间连续段 题解 线段树
  • 原文地址:https://www.cnblogs.com/zhenqk/p/11053959.html
Copyright © 2011-2022 走看看