使用MVC写模式jsp连接到数据库操作
首先用一个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>
输入usernameming,passwordming
输入usernamelin,passwordli
完整代码包:http://download.csdn.net/detail/u011731233/8093745
使用MVC写模式jsp连接到数据库操作的更多相关文章
- JSP连接MySQL数据库问题
之前写了一大段,还说了一下具体JDBC连接数据库API的具体包的基本知识,哪知道自己手残不小心按了删除按钮.结果去看自动保存记录时,就只剩下下面这段了.好吧,其实最主要最核心的也就是下面这点了.具体如 ...
- jsp连接sqlServer数据库教程
一.首先讲下我用的工具版本以供参考: jar包:jtds1.3.1.jar 下载地址:点击进入 数据库:SQL Server2012 服务器:Tomcat8.0 下载地址:点击进入 开发IDE工 ...
- jsp连接sqlServer数据库教程、jsp连接sqlServer数据库报ClassNotFoundException异常
jsp连接sqlServer数据库教程: 首先讲下我用的工具版本以供参考: jar包:jtds1.3.1.jar 下载地址:点击进入 数据库:SQL Server2012 服务器:Tomcat8.0 ...
- Jsp连接Mysql数据库取数方法
我将Jsp连接Mysql数据库方法整理如下,供大家学习交流! 1.首先在myslq数据库中新建mldn数据库,并新建emp表.(方法不展开介绍) 插入数据如下: create table `emp` ...
- oracle建表权限问题和JSP连接oracle数据库基本操作
JSP连接oracle数据库相关操作 1.创建表 打开Enterprise Manager Console,为用户添加权限CREATE ANY TABLE和分配一定的表空间USERS限额1024k. ...
- JSP连接access数据库
一个用jsp连接Access数据库的代码. 要正确的使用这段代码,你需要首先在Access数据库里创建一username表,表里面创建两个字符型的字段,字段名分别为:uid,pwd,然后插入几条测试数 ...
- java web 程序---jsp连接mysql数据库的实例基础+表格显示
<%@ page language="java" import="java.util.*,java.sql.*" pageEncoding="g ...
- Python3.x:pyodbc连接Sybase数据库操作(Windows系统下DNS模式)
Python3.x:pyodbc连接Sybase数据库操作(Windows系统下DNS模式) 一.安装模块pyodbc pip install pyodbc 二.配置odbc数据源 (1).windo ...
- jsp连接mysql数据库
1.新建一个Java web项目. 2.导入mysql驱动包.(这个跟上一篇写的Java连接mysql类似) 3.编写测试代码 <%@ page contentType="text/h ...
随机推荐
- C文件操作的语言fgets()
谈fgets(..)功能. 原型 char * fgets(char * s, int n,FILE *stream); 參数: s: 字符型指针.指向存 ...
- Oracle 12C 简介
2013年6月26日,Oracle Database 12c版本正式发布,首先发布的版本号是12.1.0.1.0,率先提供下载的平台有Linux和Solaris: Oracle官方下载地址: http ...
- java输出换行的标准姿势"line.separator"
java中写.txt文件,实现换行的几种方法: 1.使用java中的转义符"\r\n": windows下的文本文件换行符:\r\n linux/unix下的文本文件换行符:\r ...
- WiPlug_百度百科
WiPlug_百度百科 WiPlug
- QTableView 固定列宽度(鼠标拖动后,仍可固定)
QTableView 提供一个函数: void QTableView::setColumnWidth ( int column, int width ) 用于设置column指定的列的宽度 但setC ...
- 用Qt开发Web和本地混合的应用
QtWebkit 模块使得Qt widget能够通过HTML的object标签嵌入到web页面中,并通过JavaScript代码进行访问,而Qt对象也能相应的访问web页面元素. 将Qt对象插入到we ...
- What is the difference between JRE,JVM and JDK?
If you are a Java developer, it is very often that you think about understanding the JRE,JVM and JDK ...
- 基于S5pv210流媒体server的实现之网络摄像头(by liukun321 咕唧咕唧)
这里仅介绍流媒体server端的实现思路.及编码注意问题,不会贴代码的详细实现. 直接入正题先介绍一下系统硬件框架: server端连接PC机用VLC播放例如以下图: server端应用程序能够分为图 ...
- 使用jQuery实现tag便签去重效果
话不多说直接看代码 jsp页面的核心代码 <head> <script type="text/javascript" src="js/jQuery.js ...
- 【Swift】—— 中国课程
Apple宣布更换oc武器语言 Swift ,在牛叉的中国开发者社区9几天之内,以完成.这是福音许多中国的开发商啊,兴奋的发现之后,写存储在日志,马上防止忘记: GitHub开源项目:<The ...