JSP 中关于操作MYSQL数据库的问题

2024-11-24 23:56:10
推荐回答(5个)
回答1:

下面是一个纯jsp连接数据库的例子
注释说明了你的问题
(1)把mysql的驱动放到tomcat的lib中 驱动是这个
http://ftp.up.ac.za/pub/windows/MySQL/Downloads/Connector-J/mysql-connector-java-5.1.6.zip
解压后在lib中有mysql-connector-java-5.1.6.jar.把这个文件放到tomcat的lib中5.X的在tomcat/common/lib 6.0在tomcat/lib
(2)建一个很简单的表person就两个字段username和password,数据库名和数据库密码换成你的就是了
create database ibatis;--创建数据库
use ibatis;--使用数据库,以下表在该数据库中
create table person(username varchar(20),password varchar(20));--创建person表

(3)创建index.jsp和regist.jsp
1:
index.jsp 提交表单页面
<%@ page pageEncoding="GBK"%>







username :
password :




2:regist.jsp //用户注册同时显示所有用户

<%@ page contentType="text/html; charset=GBK" %>
<%@ page import="java.sql.*"%>


<%
request.setCharacterEncoding("GBK");
String uname=request.getParameter("name"); //从表单获得
String pwd=request.getParameter("password"); //从表单获得
String driver="com.mysql.jdbc.Driver"; //我用的是mysql官方驱动你自己换一下就是了 在这里有
String url="jdbc:mysql://localhost:3306/ibatis?user=root&password=yanghao"; //这是数据库连接地址Ibatis是数据库名称,user是用户.password就是你的用户名,根据实际情况你修改
String sql="INSERT INTO person (username,password) VALUES('"+uname+"','"+pwd+"')"; //把index.jsp提交的两个数据插进数据库的数据库语句
Connection conn=null; //数据库连接
Statement stmt=null;
ResultSet rs = null; //查询结果
%>
<%
Class.forName(driver); //加载驱动
conn=DriverManager.getConnection(url); //获得连接
stmt=conn.createStatement();
stmt.execute(sql);//存入数据库
rs=stmt.executeQuery("select * from person"); //查询所有person语句
%>
<%
if(rs!=null){ //判断以下

while(rs.next()){
String username=rs.getString(1);
String password=rs.getString(2);
%>





<%=username %> <%=password %>

<%
//关闭数据库连接,和开始的顺序是反的
rs.close();//关闭结果集
stmt.close();//关闭Statement
conn.close();//关闭数据库连接
//ok完成了插入和查询操作

}
}
%>

回答2:

首先你要将文本框的值传到服务器,可以用post请求也可以用get请求。
给你个例子,例如post请求:





get请求更方便啦:
比如有

如果你在sql.jsp里写了数据库的一些操作语句,要取得文本框的值就写句String test=request.getParameter("test");那么test保存的值就为“jineefo”了,在用这个变量进行数据库操作就行了。

回答3:

String objStr = request.getParameter("文本框名")可以获取到所填的数据.
String sqlStr = "select * from student where 学号='"+objStr"'";
然后执行就可以。

回答4:

如果是传参数的话
SELECT"+这里写上你的参数+"FORM"+这里写上你的参数+"WHERE

回答5:

"SELECT * FROM db WHERE id='"+request.getParameter("setID")+"'";