问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

在jsp编程中如何连接数据库?

发布网友 发布时间:2022-04-22 22:08

我来回答

2个回答

懂视网 时间:2022-05-01 08:12

数据库表代码:

/*
Navicat MySQL Data Transfer

Source Server : localhost_3306
Source Server Version : 50528
Source Host : localhost:3306
Source Database : bbs

Target Server Type : MYSQL
Target Server Version : 50528
File Encoding : 65001

Date: 2016-06-04 09:25:01
*/

SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for tb_user
-- ----------------------------
DROP TABLE IF EXISTS `tb_user`;
CREATE TABLE `tb_user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(255) NOT NULL,
`password` varchar(255) NOT NULL,
`linkman` varchar(255) DEFAULT NULL,
`company` varchar(255) DEFAULT NULL,
`companytel` varchar(255) DEFAULT NULL,
`qq` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records of tb_user
-- ----------------------------
INSERT INTO `tb_user` VALUES (‘1‘, ‘admin‘, ‘admin‘, null, null, null, null);
INSERT INTO `tb_user` VALUES (‘2‘, ‘user‘, ‘user‘, null, null, null, null);

 

注册页面:

<%@ page language="java" import="java.util.*,java.sql.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<%@ page import="java.sql.*"%>
<%!
public static final String DBDRIVER = "com.mysql.jdbc.Driver" ;
public static final String userName = "root"; //登录的用户名
public static final String userPasswd = "taizhen"; //登录mysql密码
public static final String dbName = "test"; //数据库名
public static final String tableName="user"; //表名
public static final String DBURL = "jdbc:mysql://localhost:3306/"+dbName+"?user="+userName+"&password="+userPasswd;
%>

<%
Connection conn = null ;
PreparedStatement pstmt = null ;
ResultSet rs = null ;
boolean flag = false ; // 表示登陆成功或失败的标记
%>

<%

String action = request.getParameter("action");
if(null==action){

}else{
%>

<%out.println(action); %>
<%
String name = request.getParameter("username") ; // 接收表单参数
String password = request.getParameter("password") ; // 接收表单参数
try{
Class.forName(DBDRIVER) ;
conn = DriverManager.getConnection(DBURL) ;
String sql = "SELECT name,password FROM user WHERE name=? AND password=?" ;
pstmt = conn.prepareStatement(sql) ;
pstmt.setString(1,name) ;
pstmt.setString(2,password) ;
rs = pstmt.executeQuery() ;
while(rs.next()){
// 如果有内容,则此处执行,表示查询出来,合法用户
flag = true ;
}
}catch(Exception e){
}finally{
try{
conn.close() ; // 连接一关闭,所有的操作都将关闭
}catch(Exception e){}
}
%>
<%out.println(flag); %>
<%out.println(action); %>
<%

if(flag){
request.getSession().setAttribute("success", "登录");
%>
<jsp:forward page="success.jsp"/>
<%
}else{ // 登陆失败,跳转到failure.jsp
request.getSession().setAttribute("error", "登录");

%>
<jsp:forward page="error.jsp"/>
<%
}
}

%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">

<title>My JSP ‘login.jsp‘ starting page</title>

</head>

<body>
<form action="login.jsp" method="post">
<input type="hidden" name="action" />
用户名:
<input type="text" name="username" value="username"/>
<br>
密码:
<input type="password" name="password" value="password"/>
<br>
<input type="submit" value="login" />
</form>

</body>
</html>

 

jsp链接数据库代码:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<%@ page import="java.sql.*"%>
<%!
public static final String DBDRIVER = "com.mysql.jdbc.Driver" ;
public static final String userName = "root"; //登录的用户名
public static final String userPasswd = "taizhen"; //登录mysql密码
public static final String dbName = "test"; //数据库名
public static final String tableName="user"; //表名
public static final String DBURL = "jdbc:mysql://localhost:3306/"+dbName+"?user="+userName+"&password="+userPasswd;
%>

<%
Connection conn = null ;
PreparedStatement pstmt = null ;
ResultSet rs = null ;
boolean flag = false ; // 表示登陆成功或失败的标记
%>

<%

String action = request.getParameter("username");
if(action!=null){

%>

<%out.println(request.getParameter("password")); %>
<%
String name = request.getParameter("username") ; // 接收表单参数
String password = request.getParameter("password") ; // 接收表单参数
String linkman=request.getParameter("linkman");
String qq=request.getParameter("qq");

try{
Class.forName(DBDRIVER) ;
conn = DriverManager.getConnection(DBURL) ;
String sql = "INSERT INTO user (name, password) VALUES (?,?)";

pstmt = conn.prepareStatement(sql) ;
pstmt.setString(1,name) ;
pstmt.setString(2,password) ;

int sql_update = pstmt.executeUpdate();
if(sql_update>0){
flag=true;
}
}catch(Exception e){
}finally{
try{
conn.close() ; // 连接一关闭,所有的操作都将关闭
}catch(Exception e){}
}
%>


<%

if(flag){
request.getSession().setAttribute("success", "注册");
%>
<jsp:forward page="success.jsp"/>
<%
}else{ // 登陆失败,跳转到failure.jsp
request.getSession().setAttribute("error", "注册");

%>
<jsp:forward page="error.jsp"/>
<%
}


}else{}
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>


<title>My JSP ‘register.jsp‘ starting page</title>

</head>

<body>

<div class="loginbox registbox">

<div class="login-content reg-content">
<div class="loginbox-title">
<h3>注册</h3>
</div>
<form id="signupForm" action="register.jsp" method="post">

<div class="row">
<label class="field" for="email">用户名</label>
<input type="text" class="input-text-user noPic input-click" name="username" id="email">
</div>
<div class="row">
<label class="field" for="password">密码</label>
<input type="password" value="" class="input-text-password noPic input-click" name="password" id="password">
</div>

<div class="row">
<label class="field" for="contact">联系人</label>
<input type="text" value="" class="input-text-user noPic input-click" name="linkman" id="contact">
</div>
<div class="row">
<label class="field" for="company">公司名</label>
<input type="text" value="" class="input-text-user noPic input-click" name="company" id="company">
</div>
<div class="row">
<label class="field" for="tel">公司电话</label>
<input type="text" value="" class="input-text-user noPic input-click" name="companytel" id="tel">
</div>
<div class="row">
<label class="field" for="qq">QQ</label>
<input type="text" value="" class="input-text-user noPic input-click" name="qq" id="qq">
</div>

<div class="row btnArea">
<button class="login-btn" id="submit">注册</button>
</div>
</form>
</div>
<div class="go-regist">
已有帐号,请<a href="/Demo/login.jsp" class="link">登录</a>
</div>
</div>
</body>
</html>

 

登录成功:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">

<title>My JSP ‘success.jsp‘ starting page</title>


</head>

<body>
${sessionScope.success }成功! <br>
</body>
</html>

 

登录失败:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">

<title>My JSP ‘error.jsp‘ starting page</title>

</head>

<body>
${sessionScope.error }失败 <br>
</body>
</html>

jsp链接数据库

标签:

热心网友 时间:2022-05-01 05:20

用JDBC技术
创建数据库连接,分为以下几步:
1.装载并注册数据库的JDBC驱动程序
2.取得数据库连接
3.建立Statement 对象
4.准备并执行调用SQL语句
5.处理ResultSet中的记录集
6.释放资源
第一步
加载驱动程序
try{ //装载MySQL数据库驱动
Class.forName("com.mysql.jdbc.Driver");
}
catch(ClassNotFoundException e)
{
e.printStackTrace();
}
注意:在使用JDBC之前,要在文件前导入有关SQL的类即
import java.sql.*
第二步
取得数据库连接
try{
String url="jdbc:mysql://localhost:3306/student;
String user="root";
String password="1234";
con=DriverManager.getConnection(url,user,password);
}
catch(SQLException e)
{
e.printStackTrace();
}
第三步
建立Statement 对象
try{
Statement sql=con.createStatement();
}
catch(SQLException e)
{
e.printStackTrace();
}
第四步
执行各种SQL语句
try{
ResultSet rs=sql.executeQuery(
"select * from student");
}
catch(SQLException e)
{
e.printStackTrace();
}
第五步
获取查询结果
ResultSet rs=sql.executeQuery(
"select * from student");
while(rs.next())
{
rs.getString(2)或者是rs.getString("name");
rs.getInt(3)或者是rs.getInt("age");
}
注意
只有select语句才会有结果集返回;
ResultSet对象一次只能看到一个数据行
使用next()方法走到下一数据行
获得一行数据后,ResultSet对象可以使用getXxx()方法获得字段值,将位置索引或字段名传递给get第六步
关闭创建的各个对象(后打开的先关)
rs.close();
sql.close();
con.close();Xxx方法()即可。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
cf手游体验服4月资格申请问题答案大全_2021年4月cf手游体验服资格申请... 2024.03-2024.04排位赛季历程的名字是 cf手游4月体验服答题第10题... 如何区别男人的早泄和阳痿 早泄与阳痿的关系 串联谐振原理下,试品电压如何达到试验值? 想自己做一个网站,但需要备案,自己可以注册一个企业吗 WPS Office中怎么创建企业 创建企业的详细操作教程分享 李小冉冻龄,素颜肌肤让网友不淡定,这颜值太绝了,你羡慕了吗? 怀孕能用酒精擦脚吗 朋友圈评论怎么删除_朋友圈评论删除功能介绍 怎么用JSP连接mysql数据库??在线等 html网页怎么通过jsp连接mysql数据库,并且读取数据库中得数据,和写入数... JSP链接MYSQL数据库 jsp中使用JDBC连接MySQL数据库如何解决 jsp怎样用jdbc连接mysql数据库 怎样用jsp连接mysql数据库 代码怎么写啊 请教JSP如何连接MySQL数据库 jsp 怎样连接mysql数据库 JSP 如何连接数据库(MYSQL) jsp连接mysql数据库 怎么使用jsp连接mysql数据库 jsp连接mysql数据库的方法 如何用jsp连接mysql数据库 韭菜怎么洗才最干净最快速?(组图) 韭菜怎么洗才最干净,最快速 韭菜洗了好几回了水都是绿色的怎么回事 晚上把韭菜洗过后放到明天早上会不会发黄 我用手机WPS套用模板做了一个PPT,但是我需要的只有10页,那个模板多出来几页,怎么把后面那几页 wps手机版怎么将多张ppt打印? 怎么在wps中我的文件删除多余幻灯片文档 铅笔芯能导电吗? 铅笔芯导电吗 铅笔芯是导体还是绝缘体? 铅笔芯是导体还是绝缘体实验 用试验方法验证(1)所需器材 (2)试验方法 铅笔芯是不是导体? 物理题目 铅笔芯导电吗 铅笔芯能导电吗 铅笔芯能做电阻吗? 2B铅笔芯可以导电吗? 铅笔芯到底导不导电,传不传热? 铅笔会不会导电? 铅笔芯导不导电? 铅笔能导电吗 铅笔里面的笔芯导电吗 锲形是什么形? 按声母的排列顺序排列下列汉字 嘶 傣 呐 弘 拓 宛 拂 燥 峻 嚣 揉 霖 魄 帽 焙 锲 挫 蓑 苟 坑 快怎么排 nova3lite和畅享9s手机壳通用吗? Excel图表中的横坐标轴怎么自定义改? 如何给excel的图表的次坐标轴加坐标轴名称? excel里图表的纵坐标轴线怎么调出来