struts2框架中实现查询oracle数据库某条数据
最近在学习struts2,制作了一个基于struts2的增删改查用户管理系统的例子,其中想要实现一个搜索功能,要在Oracle数据库中根据输入的条件查询出符合条件的用户信...
最近在学习struts2,制作了一个基于struts2的增删改查用户管理系统的例子,其中想要实现一个搜索功能,要在Oracle数据库中根据输入的条件查询出符合条件的用户信息。下面是我写出的代码,运行时提示“ORA-00933: SQL 命令未正确结束”,想问问大家原因出在什么地方。
userDao.java中的代码
public ArrayList<UserBean> findUser(UserBean user) {
Connection conn=DBUtil.getConnection();//获取链接
try {
PreparedStatement ps=conn.prepareStatement("select * from tuser wehre username = ?");
ps.setString(1,user.getUsername());
ResultSet rs=ps.executeQuery();
ArrayList<UserBean> alluser=new ArrayList<UserBean>();
while(rs.next()){ //每循环一次,从数据库中获取一个用户信息,封装到一个User对象中
UserBean ru=new UserBean();
ru.setUserid(rs.getString("userid"));
ru.setUsername(rs.getString("username"));
ru.setPassword(rs.getString("password"));
ru.setRole(rs.getString("role"));
ru.setStatus(rs.getString("status"));
ru.setWrongnum(rs.getInt("wrongnum"));
//把该User对象放入集合中保存
alluser.add(ru);
}
DBUtil.closeAll(conn, ps,rs);//关闭数据库资源
return alluser;
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}
action.java中的代码
public String showUser() {
UserDao dao = new UserDao();
UserBean ur=new UserBean();
ArrayList<UserBean> user = dao.findUser(ur);
this.setUsers(user);
return SUCCESS;
}
jsp页面的代码
<body>
<%
UserBean user = (UserBean) request.getAttribute("user");
%>
<table border="1" width="800px" align="center">
<t >
<td align="center">编号</td>
<td align="center">用户名</td>
<td align="center">角色</td>
<td align="center">用户状态</td>
<td align="center">密码错误次数</td>
</tr>
<s:iterator value="users" id="u">
<tr>
<td><s:property value="#u.userid" /></td>
<td><s:property value="#u.username" /></td>
<td><s:property value="#u.role" /></td>
<td><s:if test="%{#u.status==1}">未锁定</s:if>
<s:else><font color="red">已锁定</font></s:else>
</td>
<td><s:property value="#u.wrongnum" /></td>
</tr>
</s:iterator>
</table>
<table width="800px" align="center">
<tr>
<td align="center">
<form action="findusers.action" method="get">
<input type="text" value="查询用户" name="user.username">
<input type="submit" value="查询">
</form>
</td>
</tr>
</table>
</body> 展开
userDao.java中的代码
public ArrayList<UserBean> findUser(UserBean user) {
Connection conn=DBUtil.getConnection();//获取链接
try {
PreparedStatement ps=conn.prepareStatement("select * from tuser wehre username = ?");
ps.setString(1,user.getUsername());
ResultSet rs=ps.executeQuery();
ArrayList<UserBean> alluser=new ArrayList<UserBean>();
while(rs.next()){ //每循环一次,从数据库中获取一个用户信息,封装到一个User对象中
UserBean ru=new UserBean();
ru.setUserid(rs.getString("userid"));
ru.setUsername(rs.getString("username"));
ru.setPassword(rs.getString("password"));
ru.setRole(rs.getString("role"));
ru.setStatus(rs.getString("status"));
ru.setWrongnum(rs.getInt("wrongnum"));
//把该User对象放入集合中保存
alluser.add(ru);
}
DBUtil.closeAll(conn, ps,rs);//关闭数据库资源
return alluser;
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}
action.java中的代码
public String showUser() {
UserDao dao = new UserDao();
UserBean ur=new UserBean();
ArrayList<UserBean> user = dao.findUser(ur);
this.setUsers(user);
return SUCCESS;
}
jsp页面的代码
<body>
<%
UserBean user = (UserBean) request.getAttribute("user");
%>
<table border="1" width="800px" align="center">
<t >
<td align="center">编号</td>
<td align="center">用户名</td>
<td align="center">角色</td>
<td align="center">用户状态</td>
<td align="center">密码错误次数</td>
</tr>
<s:iterator value="users" id="u">
<tr>
<td><s:property value="#u.userid" /></td>
<td><s:property value="#u.username" /></td>
<td><s:property value="#u.role" /></td>
<td><s:if test="%{#u.status==1}">未锁定</s:if>
<s:else><font color="red">已锁定</font></s:else>
</td>
<td><s:property value="#u.wrongnum" /></td>
</tr>
</s:iterator>
</table>
<table width="800px" align="center">
<tr>
<td align="center">
<form action="findusers.action" method="get">
<input type="text" value="查询用户" name="user.username">
<input type="submit" value="查询">
</form>
</td>
</tr>
</table>
</body> 展开
若以下回答无法解决问题,邀请你更新回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询