做一个数据库登录执行页面

本文档描述了如何构建一个简单的登录界面,允许用户连接到数据库并执行SQL语句。用户输入的用户名和密码通过request.getParameter获取并与root账户进行比对。登录成功后,用户可以在页面上输入SQL,实现数据的增删改查操作。页面还包含一个logout功能,供用户退出当前会话。


目标:做一个和数据可一样的登录界面,首先连接数据库,用root,不是root进不去;进去之后可以输入数据库语句,实现增删改查。

首先用户舒勇的东西是动态的,用一个request.getParameter去动态的接收;接受之后就与root做比较,对就进入数据库环境可以进行增删改查,还螚点logout退出;

<body>denglu.jsp

   <form action="login.jsp" >

  用户 <input type="text" id="user" name="user">

  密码<input type="text" id="passwd" name="passwd">

  <input type="submit" value="登陆">

 

   

   </form>

  </body>login.jsp

try {

Class.forName("com.mysql.jdbc.Driver");

String user = request.getParameter("user");

String passwd = request.getParameter("passwd");

 

Connection a = DriverManager.getConnection(

"jdbc:mysql://localhost:3306/nba", user, passwd);

session.setAttribute("ab","ok");

response.sendRedirect("in.jsp");

catch (Exception e) {

session.setAttribute("ab","false");

response.sendRedirect("denlu.html");

}

%>in.jsp

   <form action="in.jsp"> <input id="a" name="a"  size="100">

   <input type="submit" value="执行">

   <a href="logout.jsp">logout</a>

   </form>

   

   <%

    Class.forName("com.mysql.jdbc.Driver");

 

Connection a = DriverManager.getConnection(

"jdbc:mysql://localhost:3306/nba""root""");

System.out.println("netstat -ano");

Statement b = a.createStatement();

String sql = request.getParameter("a");

try {

if (sql.contains("select") && !sql.contains("into")) {

 

ResultSet rs = b.executeQuery(sql);

int nfld = rs.getMetaData().getColumnCount();

out.println("<table >" );

out.println("<tr >");

for (int i = 1; i <= nfld; i++) {

out.println("<td>");

out.print(rs.getMetaData().getColumnName(i));

out.print("</td>");

}

out.println("</tr>");

int line=0;

while (rs.next()) {

if(line%2==0)

out.println("<tr  class=mm>");else

out.println("<tr class=my>");

for (int i = 1; i <= nfld; i++) {

out.println("<td>");

out.print(rs.getString(i));

out.print("</td>");

}

out.println("</tr>");

line++;

}

 

else {

b.executeUpdate(sql);

out.print("ok");

 

}

 

catch (Exception e) {

System.out.print(e.getMessage());

}

a.close();

logout.jsp

    <%session.setAttribute("ab","false");

   response.sendRedirect("denlu.html");

   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值