本文实例为大家分享了javaweb实现简单 查询 商品功能的具体代码,供大家参考,具体内容如下
customerservlet.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 |
package com.subing.web;
import java.io.ioexception; import java.io.printwriter;
import javax.servlet.servletexception; import javax.servlet.annotation.webservlet; import javax.servlet.http.httpservlet; import javax.servlet.http.httpservletrequest; import javax.servlet.http.httpservletresponse;
@webservlet ( "/customerservlet" ) public class customerservlet extends httpservlet { private static final long serialversionuid = 1l;
private sqldemo sql = null ; private final static string s1 = "<h1>欢迎进入管理页面</h1><form action='customerservlet' method='post'> " + "精确查询:<input type='text' name='jqmess'/><br>" + "模糊查询:<input type='text' name='mhmess'/><br>" + "<input type='submit' value='提交' name='sub'/>" + "</form>" ;
// 登录的时候进行验证 private boolean isloginprov(string userinfo, string password) { if (userinfo != null && userinfo.length() > 0 && password != null && password.length() > 0 ) { return true ; } return false ;
}
public customerservlet() throws exception { super (); sql = new sqldemo(); // 进行数据库访问的类 // todo auto-generated constructor stub }
/** * @see httpservlet#doget(httpservletrequest request, httpservletresponse * response) */ protected void doget(httpservletrequest request, httpservletresponse response) throws servletexception, ioexception { // todo auto-generated method stub this .dopost(request, response); }
/** * @see httpservlet#dopost(httpservletrequest request, httpservletresponse * response) */ protected void dopost(httpservletrequest request, httpservletresponse response) throws servletexception, ioexception { response.setcontenttype( "text/html;charset=gb2312" ); request.setcharacterencoding( "gb2312" ); printwriter pw = response.getwriter();
string sub = request.getparameter( "sub" ); string login = request.getparameter( "login" );
if (login != null && login.length() > 0 ) { string admin_id = request.getparameter( "admin_id" ); string password = request.getparameter( "password" ); if (isloginprov(admin_id, password)) { try { if (sql.loginverify(admin_id, password)) { pw.println(s1); } else { pw.println( "<h1>登录失败!</h2>2秒自动跳转到登录页面!" ); response.setheader( "refresh" , "2;url=login.html" ); } } catch (exception e) { e.printstacktrace(); } } else { pw.println( "<h1>登录失败!</h2>5秒自动跳转到登录页面!" ); response.setheader( "refresh" , "5;url=login.html" ); } } else if (sub != null && sub.length() > 0 ) { pw.println(s1); string jqmess = request.getparameter( "jqmess" ); string mhmess = request.getparameter( "mhmess" ); if (jqmess != null && jqmess.length() > 0 ) { try { string s = sql.getjqmess(jqmess); string mess[] = s.split( "," ); string html = "<table border='5'>" + "<tr>" + "<th>id号码</th>" + "<th>商品名称</th>" + "<th>商品价格</th>" + "<th>商品库存数量</th>" + "<th>商品描述</th>" ; string main = "<tr>" + "<td>" + mess[ 0 ] + "</td>" + "<td>" + mess[ 1 ] + "</td>" + "<td>" + mess[ 2 ] + "</td>" + "<td>" + mess[ 3 ] + "</td>" + "<td>" + mess[ 4 ] + "</td></tr></table>" ; string head = html + main; pw.println(head); } catch (exception e) { e.printstacktrace(); } } else if (mhmess != null && mhmess.length() > 0 ) { try { string head = "" ; string html = "<table border='5'>" + "<tr>" + "<th>id号码</th>" + "<th>商品名称</th>" + "<th>商品价格</th>" + "<th>商品库存数量</th>" + "<th>商品描述</th>" ; head += html; string s = sql.getmhmess(mhmess); string m[] = s.split( ",," ); for ( int i = 0 ; i < m.length; i++) { string mess[] = m[i].split( "," ); string main = "<tr>" + "<td>" + mess[ 0 ] + "</td>" + "<td>" + mess[ 1 ] + "</td>" + "<td>" + mess[ 2 ] + "</td>" + "<td>" + mess[ 3 ] + "</td>" + "<td>" + mess[ 4 ] + "</td></tr>" ; head += main; } head += "</table>" ; pw.println(head); } catch (exception e) { e.printstacktrace(); } } } } } |
数据库访问类:
sqldemo.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 |
package com.subing.web;
import java.sql.connection; import java.sql.drivermanager; import java.sql.preparedstatement; import java.sql.resultset;
public class sqldemo {
private connection conn = null ; private preparedstatement preparedstatement = null ;
public sqldemo() throws exception { conn = getconnection(); }
private connection getconnection() throws exception { string driverclass = "com.mysql.jdbc.driver" ; string url = "jdbc:mysql:///shop?useunicode=true&characterencoding=gb2312" ; string user = "root" ; string password = "12345" ;
// 注册加载驱动 class .forname(driverclass);
// 获取连接 connection conn = drivermanager.getconnection(url, user, password); system.out.println(conn); return conn; }
// 登录的时候 进行验证 public boolean loginverify(string userinfo, string password) throws exception { string sql = "select * from admin where admin_id = ?" ; preparedstatement = conn.preparestatement(sql); preparedstatement.setstring( 1 , userinfo); resultset rs = preparedstatement.executequery(); if (rs.next()) { if (rs.getstring( "password" ).equals(password)) { system.out.println( "成功!" ); return true ; } } system.out.println( "失败!" ); return false ; }
public string getjqmess(string admin_id) throws exception { string s = "" ; string sql = "select * from product1 where product_id = ? or product_name like ?" + "or product_price like ?" + "or product_num like ?" + "or product_describe like ?" ; preparedstatement = conn.preparestatement(sql); preparedstatement.setstring( 1 , admin_id); preparedstatement.setstring( 2 , admin_id); preparedstatement.setstring( 3 , admin_id); preparedstatement.setstring( 4 , admin_id); preparedstatement.setstring( 5 , admin_id); //查询到记录的时候,返回一个resultset,也处理了该方法查找失败的时候返回null的情况 resultset rs = preparedstatement.executequery(); while (rs.next()) { s = rs.getint( 1 ) + "," + rs.getstring( 2 ) + "," + rs.getint( 3 ) + "," + rs.getint( 4 ) + "," + rs.getstring( 5 ); } return s;
}
public string getmhmess(string admin_id) throws exception { string mess = "" ; string sql = "select * from product1 where product_id like ? or product_name like ? or product_price like ? or product_num like ?" + "or product_describe like ?" ; preparedstatement = conn.preparestatement(sql); preparedstatement.setstring( 1 , "%" + admin_id + "%" ); preparedstatement.setstring( 2 , "%" + admin_id + "%" ); preparedstatement.setstring( 3 , "%" + admin_id + "%" ); preparedstatement.setstring( 4 , "%" + admin_id + "%" ); preparedstatement.setstring( 5 , "%" + admin_id + "%" ); resultset rs = preparedstatement.executequery(); while (rs.next()) { string s = rs.getint( 1 ) + "," + rs.getstring( 2 ) + "," + rs.getint( 3 ) + "," + rs.getint( 4 ) + "," + rs.getstring( 5 ); mess += s + ",," ; } return mess; }
public static void main(string[] args) throws exception { sqldemo sqldemo = new sqldemo(); string s = sqldemo.getmhmess( "xi" ); string m[] = s.split( ",," ); for ( int i = 0 ; i < m.length; i++) { system.out.println(m[i]); } }
} |
html文件:
login.html
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
<!doctype html public "-//w3c//dtd html 4.01 transitional//en" "http://www.w3.org/tr/html4/loose.dtd" > <html> <head> <meta http-equiv= "content-type" content= "text/html; charset=utf-8" > <title>insert title here</title> </head> <body> <h1>登录</h1> <form action= "customerservlet" method= "post" > 账号:<input type= "text" name= "admin_id" /> 密码:<input type= "password" name= "password" /> <input type= "submit" value= "登录" name= "login" /> </form>
</body> </html> |
数据库里面的表数据
运行效果
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
原文链接:https://blog.csdn.net/ACM_TH/article/details/50066287
查看更多关于JavaWeb实现简单查询商品功能的详细内容...