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

时间:2021-07-22 02:02:41

首先用一个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,用于处理连接数据库的操作,此次project用的数据库是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("username不能为空");
}
else if(myForm.password.value==""){
alert("密码不能为空");
}
else{
myForm.submit();
}
}
</script>
</head>
<body>
<form action="LoginServlet" method="post" name="myForm">
<center>
<table>
<tr>
<td>username</td>
<td><input type="text" name="username"></td>
<td>username不能为空</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>

假设登录的username和password和存放在数据库的数据对不上,就显示登录错误页面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("username或password错误,登录失败!");
%>
</body>
</html>

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

输入usernameming,passwordming

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

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

输入usernamelin,passwordli

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

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

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

使用MVC写模式jsp连接到数据库操作的更多相关文章

  1. JSP连接MySQL数据库问题

    之前写了一大段,还说了一下具体JDBC连接数据库API的具体包的基本知识,哪知道自己手残不小心按了删除按钮.结果去看自动保存记录时,就只剩下下面这段了.好吧,其实最主要最核心的也就是下面这点了.具体如 ...

  2. jsp连接sqlServer数据库教程

    一.首先讲下我用的工具版本以供参考: jar包:jtds1.3.1.jar  下载地址:点击进入 数据库:SQL Server2012 服务器:Tomcat8.0   下载地址:点击进入 开发IDE工 ...

  3. jsp连接sqlServer数据库教程、jsp连接sqlServer数据库报ClassNotFoundException异常

    jsp连接sqlServer数据库教程: 首先讲下我用的工具版本以供参考: jar包:jtds1.3.1.jar  下载地址:点击进入 数据库:SQL Server2012 服务器:Tomcat8.0 ...

  4. Jsp连接Mysql数据库取数方法

    我将Jsp连接Mysql数据库方法整理如下,供大家学习交流! 1.首先在myslq数据库中新建mldn数据库,并新建emp表.(方法不展开介绍) 插入数据如下: create table `emp` ...

  5. oracle建表权限问题和JSP连接oracle数据库基本操作

    JSP连接oracle数据库相关操作 1.创建表 打开Enterprise Manager Console,为用户添加权限CREATE ANY TABLE和分配一定的表空间USERS限额1024k. ...

  6. JSP连接access数据库

    一个用jsp连接Access数据库的代码. 要正确的使用这段代码,你需要首先在Access数据库里创建一username表,表里面创建两个字符型的字段,字段名分别为:uid,pwd,然后插入几条测试数 ...

  7. java web 程序---jsp连接mysql数据库的实例基础&plus;表格显示

    <%@ page language="java" import="java.util.*,java.sql.*" pageEncoding="g ...

  8. Python3&period;x:pyodbc连接Sybase数据库操作(Windows系统下DNS模式)

    Python3.x:pyodbc连接Sybase数据库操作(Windows系统下DNS模式) 一.安装模块pyodbc pip install pyodbc 二.配置odbc数据源 (1).windo ...

  9. jsp连接mysql数据库

    1.新建一个Java web项目. 2.导入mysql驱动包.(这个跟上一篇写的Java连接mysql类似) 3.编写测试代码 <%@ page contentType="text/h ...

随机推荐

  1. Java实战之01Struts2-01简介及环境搭建

    一.Struts2简介 1.Struts2概述 Struts2是Apache发行的MVC开源框架.注意:它只是表现层(MVC)框架. 2.Struts2的来历 Struts1:也是apache开发的一 ...

  2. CentOS安装rar、unrar解压缩软件的方法

    闲话不说,centos上如何安装rar.unrar在线解压缩软件呢?如果您的centos是32位的,执行如下命令: wget http://www.rarsoft.com/rar/rarlinux-3 ...

  3. BZOJ 3196

    program bzoj3196; ; maxn=; maxm=; var n,m,time,temp:longint; root,a:..maxn] of longint; left,right,r ...

  4. Django之auth模块

    http://www.cnblogs.com/liwenzhou/p/9030211.html 1.首先导入auth模块 from django.contrib import auth 2.创建aut ...

  5. leecode第二百一十七题(存在重复元素)

    class Solution { public: bool containsDuplicate(vector<int>& nums) { set<int> s; for ...

  6. maven编译不通过:软件包com&period;sun&period;org&period;apache&period;xml&period;internal&period;security&period;utils&period;Base64 不存在

     问题:代码中使用了sun公司的第三方私有库,导致编译不通过 maven打包异常:软件包com.sun.org.apache.xml.internal.security.utils.Base64 不存 ...

  7. Vue起步

    Vue起步 Vue.js是什么 Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式javascript框架.与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用. ...

  8. centos7安装maven

    下载maven 下载地址:http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3. ...

  9. 集群应用Session一致性实现的三种方案

    转自:http://blog.csdn.net/zwx521515/article/details/78679679 https://www.cnblogs.com/study-everyday/p/ ...

  10. codeforces 803G Periodic RMQ Problem

    codeforces 803G Periodic RMQ Problem 题意 长度为\(1e5\)的数组复制\(1e4\)次,对新的数组进行区间覆盖和区间最小值查询两种操作,操作次数\(1e5\). ...