如何将此DROPDOWN菜单代码划分为servlet,dao和JSP? [英] How to divide this DROPDOWN menu codes to servlet, dao and JSP?
本文介绍了如何将此DROPDOWN菜单代码划分为servlet,dao和JSP?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正努力避免在jsp文件中使用Java代码.但是我不知道解决方案.谁能帮我?
i am tring to avoid java code in jsp file. But i couldnt figure the solution. Can anyone help me?
JSP文件:
<select>
<%
try
{
Class.forName("oracle.jdbc.driver.OracleDriver");
String url="jdbc:oracle:thin:@localhost:1521:xe";
String username="sys as sysdba";
String password="sys";
String query="select lecturerFullname from lecturer";
Connection con=DriverManager.getConnection(url,username,password);
Statement stmt=con.createStatement();
ResultSet rs=stmt.executeQuery(query);
while(rs.next())
{
%>
<option><%=rs.getString("lecturerFullname") %></option>
<%
}
%></select>
</table>
<%
rs.close();
stmt.close();
con.close();
}
catch(Exception e)
{
e.printStackTrace();
}
%></select>
这是我尝试过的... getAttribute()为jsp 中的下拉列表返回null,但我仍然找不到解决方案.我必须使用JSTL吗?我可以避免使用JSTL吗?我真的很希望有人能帮助我.谢谢!!!!
This is what i tried... getAttribute() returns null for drop down list in jsp but i still couldnt find the solution. Do i have to use JSTL? can i avoid using JSTL hehe... I REALLY REALLY HOPE SOMEONE TO HELP ME. THANK YOU!!!!
推荐答案
例如:
讲师POJO课:
class Lecturer {
...
private String fullName;
...
//getters and setters
}
DAO类:
class MyDAO {
public List<Lecturer> getLecturers() {
try{
Class.forName("oracle.jdbc.driver.OracleDriver");
String url="jdbc:oracle:thin:@localhost:1521:xe";
String username="sys as sysdba";
String password="sys";
String query="select lecturerFullname from lecturer";
Connection con=DriverManager.getConnection(url,username,password);
Statement stmt=con.createStatement();
ResultSet rs=stmt.executeQuery(query);
List<Lecturer> list = new LinkedList<Lecturer>();
while(rs.next()) {
String fullname= rs.getString("lecturerFullname");
Lecturer lec = new Lecturer();
lec.setFullName(fullname);
...
list.add(lec);
}
} catch(Exception e) {
}
return list;
}
}
在您的servlet中:
In your servlet:
class MyServlet {
MyDAO myDao = ...;
doGet() {
List<Lecturer> list = myDoa.getLecturers();
request.setAttribute("list",list);
}
}
最后是jsp文件,您需要获取列表并进行迭代. ;)
and finally in the jsp file, you need to get list and iterate over. ;)
已编辑
JSP文件:
<select>
<%
List<Lecturer> list = (List<Lecturer>) request.getAttribute("list");
for(Lecturer lec : list) {
%>
<option><%=lec.getFullName()%></option>
<%
}
%>
</select>
这篇关于如何将此DROPDOWN菜单代码划分为servlet,dao和JSP?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文