MyEclipse中jsp连接Microsoft SQL server,MySQL,Oracle数据库实现用户登录操作
文章只是为了记录自己的学习,方便以后查看
一.jsp连接Oracle数据库
-
编辑器:MyEclipse 10
-
数据库辅助工具: PLSQL Developer 12
-
数据库工具:Oracle 11g
-
JDK 1.7
-
服务器:apache-tomcat-7.0.96
-
使用MyEclipse新建一个Web项目,将Oracle的数据库驱动复制到你的 /项目名/WebRoot/WEB-INF/lib 目录下,Oracle数据库驱动下载地址为:
链接:百度网盘Oracle数据库驱动
提取码:uh6g -
在你的项目中点击驱动包,右键Build path——>Add to build path将驱动包构建到你的项目中去。
-
使用PLSQL连接Oracle数据库,在orcl数据库中创建用户表tb_user,并插入用户名和密码
create table tb_user(
name varchar2(10),
password varchar2(10)
)
insert into tb_user(name,password) values('admin','123456');
- 在web项目中新建index.jsp文件,welcome.jsp文件和Dao.jsp文件。
- index.jsp文件为用户输入账号密码的界面。
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
<form action="Dao.jsp">
<h2>Oracle登录</h2>
账号:<input type="text" name="name"><br>
密码:<input type="text" name="password"><br>
<input type="submit" value="登录">
</form>
</body>
</html>
- welcome.jsp文件为用户输入正确的账号密码后跳转到的界面。
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
<h2>Oracle,欢迎你</h2>
</body>
</html>
- Dao.jsp文件为连接数据库和进行账号密码判断的文件。
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<%@ page import="java.sql.*" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
<%
Connection conn=null;
String name=request.getParameter("name");
String password=request.getParameter("password");
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
if(name!=null){
try {
conn=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:数据库名","用户名","密码");
} catch (Exception e) {
e.getMessage();
}
boolean flag=false;
String sql = "select password from tb_user where name=?";
PreparedStatement stat=conn.prepareStatement(sql);
stat.setString(1,name.toString().trim());
ResultSet rs =null;
rs=stat.executeQuery();
while(rs.next()){
String pass = rs.getString("password");
if(password.equals(pass)){
flag=true;
break;
}
}
if(flag){
response.sendRedirect("welcome.jsp");
}else{
response.sendRedirect("index.jsp");
}
stat.close();
conn.close();
}
%>
</body>
</html>
- 最后一步,将web项目部署到Tomcat服务器,运行后输入正确的用户名和密码显示界面为:
二.jsp连接Mysql数据库
- 编辑器:MyEclipse 10
- 数据库辅助工具: Navicat Premium 12
- 数据库工具:mysql-5.7.26
- JDK 1.7
- 服务器:apache-tomcat-7.0.96
- 使用MyEclipse新建一个Web项目,将Mysql的数据库驱动复制到你的 /项目名/WebRoot/WEB-INF/lib 目录下,Mysql数据库驱动下载地址为:
链接:百度网盘Mysql数据库驱动
提取码:iaz1 - 在你的项目中点击驱动包,右键Build path——>Add to build path将驱动包构建到你的项目中去。
- 使用 Navicat Premium 12连接Mysql数据库,创建数据库USER,用户表tb_user,并插入用户名和密码
CREATE DATABASE USER;
USE USER;
SET FOREIGN_KEY_CHECKS=0;
CREATE TABLE `tb_user` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(10) NOT NULL,
`password` varchar(20) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
- 在web项目中新建index.jsp文件,welcome.jsp文件和Dao.jsp文件。
- index.jsp文件为用户输入账号密码的界面。
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
<form action="Dao.jsp">
<h2>Mysql登录</h2>
账号:<input type="text" name="name"><br>
密码:<input type="text" name="password"><br>
<input type="submit" value="登录">
</form>
</body>
</html>
- welcome.jsp文件为用户输入正确的账号密码后跳转到的界面。
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
<h2>Mysql,欢迎你</h2>
</body>
</html>
- Dao.jsp文件为连接数据库和进行账号密码判断的文件。
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<%@ page import="java.sql.*" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
<%
Connection conn=null;// 定义数据库连接
String name=request.getParameter("name");
String password=request.getParameter("password");
try {
Class.forName("com.mysql.jdbc.Driver"); // 加载数据库驱动
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
if(name!=null){
try {
conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/数据库名?useSSL=false","用户名","密码");
} catch (Exception e) {
e.getMessage();
}
boolean flag=false;
String sql = "select password from tb_user where name=?";
PreparedStatement stat=conn.prepareStatement(sql);
stat.setString(1,name.toString().trim());
ResultSet rs =null;
rs=stat.executeQuery();
while(rs.next()){
String pass = rs.getString("password");
if(password.equals(pass)){
flag=true;
break;
}
}
if(flag){
response.sendRedirect("welcome.jsp");
}else{
response.sendRedirect("index.jsp");
}
stat.close();
conn.close();
}
%>
</body>
</html>
- 最后一步,将web项目部署到Tomcat服务器,运行后输入正确的用户名和密码显示界面为:
三.jsp连接Microsoft Sql server数据库
- 编辑器:MyEclipse 10
- 数据库工具:SQL Server Management Studio 2012
- JDK 1.7
- 服务器:apache-tomcat-7.0.96
- 使用MyEclipse新建一个Web项目,将SQL Server的数据库驱动复制到你的 /项目名/WebRoot/WEB-INF/lib 目录下,SQL Server数据库驱动下载地址为:
链接:百度网盘SQL Serverl数据库驱动
提取码:59lg - 在你的项目中点击驱动包,右键Build path——>Add to build path将驱动包构建到你的项目中去。
- 使用 SQL Server Management Studio 2012创建数据库zhanghu,用户表tb_user,并插入用户名和密码
create DATABASE zhanghu
go
use zhanghu
CREATE TABLE tb_user (
id int NOT NULL PRIMARY KEY IDENTITY,
name varchar(10) NOT NULL ,
password varchar(10) NOT NULL,
)
insert into tb_user(name,password) values('admin','123456');
- 在web项目中新建index.jsp文件,welcome.jsp文件和Dao.jsp文件。
- index.jsp文件为用户输入账号密码的界面。
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
<form action="Dao.jsp">
<h2>Microsoft Sql server登录</h2>
账号:<input type="text" name="name"><br>
密码:<input type="text" name="password"><br>
<input type="submit" value="登录">
</form>
</body>
</html>
- welcome.jsp文件为用户输入正确的账号密码后跳转到的界面。
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
<h2>Microsoft Sql server,欢迎你</h2>
</body>
</html>
- Dao.jsp文件为连接数据库和进行账号密码判断的文件。
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<%@ page import="java.sql.*" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
<%
Connection conn=null; // 定义数据库连接
String name=request.getParameter("name");
String password=request.getParameter("password");
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); // 加载数据库驱动
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
if(name!=null){
try {
conn = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=数据库名", "用户名", "密码"); // 建立连接
} catch (Exception e) {
e.getMessage();
}
boolean flag=false;
String sql = "select password from tb_user where name=?";
PreparedStatement stat=conn.prepareStatement(sql);
stat.setString(1,name.toString().trim());
ResultSet rs =null;
rs=stat.executeQuery();
while(rs.next()){
String pass = rs.getString("password");
if(password.equals(pass)){
flag=true;
break;
}
}
if(flag){
response.sendRedirect("welcome.jsp");
}else{
response.sendRedirect("index.jsp");
}
stat.close();
conn.close();
}
%>
</body>
</html>
- 最后一步,将web项目部署到Tomcat服务器,运行后输入正确的用户名和密码显示界面为:
ps:
1.在连接不同的数据库时,建议重新创建Web项目进行连接。
2.连接哪种数据库,要将相应的数据库服务开启,否则会报错。
3.如果使用的是Tomcat服务器时,可能会出现8080端口号被占用的情况,这时候可以将端口号改为其它。首先找到Tomcat的存放目录 apache-tomcat-7.0.96\conf\server.xml文件,将其中的8080改为8888,然后保存配置文件即可。
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />