String sql = "SELECT userid,name FROM tuser WHERE userid=? AND password=?" 中的“?”的含义

Stringsql="SELECTuserid,nameFROMtuserWHEREuserid=?ANDpassword=?"中“?”代表什么意思。代码如下:<%@pa... String sql = "SELECT userid,name FROM tuser WHERE userid=? AND password=?" 中“?”代表什么意思。代码如下:

<%@ page import="java.sql.*"%>
<%!
public static final String DBDRIVER = "oracle.jdbc.driver.OracleDriver" ;
public static final String DBURL = "jdbc:oracle:thin:@localhost:1521:ORCL" ;
public static final String DBUSER = "scott" ;
public static final String DBPASS = "lights" ;
%>
<%
Connection conn = null ;
PreparedStatement pstmt = null ;
ResultSet rs = null ;
boolean flag = false ; // 表示登陆成功或失败的标记
%>
<%
String userid = request.getParameter("userid") ; // 接收表单参数
String password = request.getParameter("password") ; // 接收表单参数
try{
Class.forName(DBDRIVER) ;
conn = DriverManager.getConnection(DBURL,DBUSER,DBPASS) ;
String sql = "SELECT userid,name FROM tuser WHERE userid=? AND password=?" ;
pstmt = conn.prepareStatement(sql) ;
pstmt.setString(1,userid) ;
pstmt.setString(2,password) ;
rs = pstmt.executeQuery() ;
if(rs.next()){
// 如果有内容,则此处执行,表示查询出来,合法用户
flag = true ;
}
}catch(Exception e){
}finally{
try{
conn.close() ; // 连接一关闭,所有的操作都将关闭
}catch(Exception e){}
}
%>
<%
if(flag){ // 登陆成功,应该跳转到success.jsp
%>
<jsp:forward page="success.jsp"/>
<%;
}else{ // 登陆失败,跳转到failure.jsp
%>
<jsp:forward page="failure.jsp"/>
<%
}
%>
展开
 我来答
与惜活X
2010-07-19 · 超过12用户采纳过TA的回答
知道答主
回答量:70
采纳率:0%
帮助的人:21.1万
展开全部
String sql = "SELECT userid,name FROM tuser WHERE userid=? AND password=?" ;
pstmt = conn.prepareStatement(sql) ;
pstmt.setString(1,userid) ; // 这里设置了第一个?的值
pstmt.setString(2,password) ; // 这里设置了第二个?的值

等你“setString”完所有的?后,你的sql就构造好了。
财神万岁86
2010-07-19 · TA获得超过1.1万个赞
知道小有建树答主
回答量:898
采纳率:0%
帮助的人:484万
展开全部
“?”是占位符的意思,在?位置,我们要自定义值;
好处是:可以帮你节省拼接字符串的麻烦。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
满心欢喜的痕cY
2010-07-19
知道答主
回答量:23
采纳率:0%
帮助的人:21.8万
展开全部
?为你后面传进来的参数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lyw985
2010-07-19 · TA获得超过1401个赞
知道小有建树答主
回答量:1560
采纳率:100%
帮助的人:356万
展开全部
等于就是留个空,有参数往里填
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
J__Horly
2010-07-19 · TA获得超过115个赞
知道答主
回答量:110
采纳率:0%
帮助的人:0
展开全部
建议你补充一下最基本的JDBC的知识,
等你了解JDBC之后,一切都明白了,
有时候问是好方法,可这些问题还是自己了解比较用价值
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式