用MVC模式写的jsp连接数据库操作

来源:互联网 发布:永恒之塔多玩数据库 编辑:程序博客网 时间:2024/04/29 20:16

首先用一个JavaBean封装数据库操作,即mvc中的模型

JdbcBean.java

package data;import java.sql.*;public class JdbcBean {  private String DBDriver="com.mysql.jdbc.Driver";  private String DBUrl="jdbc:mysql://localhost:3306/test";  private String DBUser="root";  private String DBPassword="686175";  public Connection conn=null;  public ResultSet rs=null;  public ResultSet query(String sql)throws Exception{  try{  Class.forName(DBDriver);  conn=DriverManager.getConnection(DBUrl,DBUser,DBPassword);  Statement stmt=conn.createStatement();  rs=stmt.executeQuery(sql);  return rs;  }  catch(SQLException e){  System.out.println(e.getMessage());  }  return null;  }  public void update(String sql)throws Exception{  try{  Class.forName(DBDriver);  conn=DriverManager.getConnection(DBUrl,DBUser,DBPassword);  Statement stmt=conn.createStatement();  stmt.executeUpdate(sql);  stmt.close();  conn.close();  }  catch(SQLException e){  System.out.println(e.getMessage());  }  }}
在src的data包中还有一个控制器Servlet,用于处理连接数据库的操作,此次工程用的数据库是MySQL

LoginServlet.java

package data;import java.io.IOException;import java.sql.ResultSet;import javax.servlet.RequestDispatcher;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class LoginServlet extends HttpServlet {public void doPost(HttpServletRequest request,           HttpServletResponse response)throws ServletException, IOException {String toJSP="";request.setCharacterEncoding("gbk");response.setContentType("text/html;charset=gbk");String username=request.getParameter("username");String password=request.getParameter("password");String sql="select * from user where username='"+username+"'" +   "&&password='"+password+"'";JdbcBean jdbc=new JdbcBean();try{ResultSet rs=jdbc.query(sql);if(rs.next()){toJSP="success.jsp";}else{toJSP="error.jsp";}rs.close();}catch(Exception e){System.out.println("发生查询异常");}RequestDispatcher rd=request.getRequestDispatcher(toJSP);rd.forward(request, response);} public void doGet(HttpServletRequest request,           HttpServletResponse response)  throws ServletException, IOException {            doPost(request,response);    }}
接下来就是用jsp写的视图,显示页面操作

登录页面login.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><html>  <head>      <title>My JSP 'login.jsp' starting page</title>    <script>            function myFunction(){               if(myForm.username.value==""){                  alert("用户名不能为空");               }               else if(myForm.password.value==""){                  alert("密码不能为空");               }               else{                  myForm.submit();               }            }    </script>  </head>  <body>  <form action="LoginServlet" method="post" name="myForm">   <center>  <table>     <tr>        <td>用户名</td>        <td><input type="text" name="username"></td>        <td>用户名不能为空</td>     </tr>     <tr>        <td>密码</td>        <td><input type="password" name="password"></td>        <td>密码不能为空</td>     </tr>     <tr>        <td></td>        <td><input type="submit" value="提交" onclick="myFunction()">            <input type="reset" value="取消"></td>     </tr>  </table>  </center>  </form>  </body></html>
登录成功页面success.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><html>  <head>      <title>My JSP 'success.jsp' starting page</title>  </head>    <body>    <%       out.println("登录成功!");     %>  </body></html>
如果登录的用户名和密码和存放在数据库的数据对不上,就显示登录错误页面error.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><html>  <head>      <title>My JSP 'error.jsp' starting page</title>  </head>  <body>    <%       out.println("用户名或密码错误,登录失败!");     %>  </body></html>

输入用户名ming,密码ming


输入用户名lin,密码li



完整代码包:http://download.csdn.net/detail/u011731233/8093745


0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 苹果平板id密码忘了怎么办 苹果平板忘记id及密码怎么办 饥荒抓到的兔子怎么办 苹果手机下载不了王者荣耀怎么办 ipad登录显示验证失败怎么办 苹果手机系统内存太大怎么办 ipad玩游戏没声音怎么办 微信活跃度低怎么办 想开通淘宝直播粉丝不够怎么办 下巴长泡泡还痒怎么办 脚起泡泡很痒怎么办 脚痒还有小泡泡怎么办 外阴长了肉疙瘩怎么办 嘴巴里泡泡破了怎么办 脚上泡泡破了怎么办 脸被自己扣破了怎么办 6s安装不了软件怎么办 苹果6s特别卡怎么办 苹果手机4g网慢怎么办 大王卡玩王者卡怎么办 荣耀7c手机卡顿怎么办 华为6x手机卡顿怎么办 荣耀7c手机老卡怎么办 苹果6打王者卡怎么办 电脑玩游戏显示显卡不行怎么办 笔记本玩游戏显卡不行怎么办 笔记本玩英雄联盟有点卡怎么办 英语考试作文抄了阅读理解怎么办 qq账号被盗怎么办很久了 想玩线上德州没有渠道怎么办 手机玩久了头晕怎么办 玩3d游戏头晕恶心怎么办 win10打cf没声音怎么办 英雄联盟玩家尚未准备就绪怎么办 玩手机想吐应该怎么办 玩手机多了头晕怎么办 玩cf老是无响应怎么办 玩穿越火线好卡怎么办 绝地求生画质卡顿怎么办 手机热点玩lol卡怎么办 一加6直播触手黑屏怎么办