请问:JSP+JAVABEAN模式转成MVC模式是servlet都承担些什么呢?
想把一个JSP+JAVABEAN 2层模式 转成MVC模式的 我该怎么办呢?主要是弄不清楚Servlet里应该写什么.
我先把在JSP+JAVABEAN 2层模式中的代码给大家看一下吧.
拜托啦!
JSP代码(其中InformationDataBean类是get()set()类)
<%@ page contentType="text/html; charset=GBK" import="java.util.*,test.*"%>
<html>
<head>
<title>
显示列表
</title>
</head>
<body>
<jsp:useBean id="in" scope="page" class="test.InformationLogicBean"/>
<table border="1">
<tr><td>序号</td><td>新闻标题</td><td>删除</td><td>修改</td></tr>
<%
ArrayList al=in.queryList();
if(al!=null){
for(int i=0;i<al.size();i++){
InformationDataBean bean=(InformationDataBean)al.get(i);
%>
<tr><td><%=bean.getNewId()%></td><td><a href="detail.jsp?detailId=<%=bean.getNewId()%>"> <%=bean.getNewTitle()%>(<%= bean.getNewDate()%>)</a></td>
<td><a href="delete.jsp?id=<%=bean.getNewId()%>">删除</a></td><td><a href="update.jsp?id=<%=bean.getNewId()%>">修改</a></td></tr>
<%
}
}
%>
</table>
<a href="insert.jsp">插入</a>
</body>
</html>
JAVABEAN代码
package test;
import java.sql.*;
import java.util.ArrayList;
public class InformationLogicBean {
private Connection conn;
/**
* 将数据库的连接写入构造器,以便调用方法前,进行数据库的连接。
* 目的是方便使用。因为我们每调用方法的时候都用创建一个对象。
* 创建对象,即执行构造器。即连接数据库。
*
*/
public InformationLogicBean(){
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
conn=DriverManager.getConnection("jdbc:oracle:thin:@192.168.1.200:1521:lyx","scott","tiger");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/**
* 将数据库中News表中的记录全部放到ArrayList中以便JSp页面显示
* 返回结果是ArrayList
* @return
*/
public ArrayList queryList(){
ArrayList al=new ArrayList();
Statement st=null;
ResultSet rs=null;
try {
st=conn.createStatement();
rs=st.executeQuery("select news_id,news_title,news_content,news_date from news");
while(rs.next()){
InformationDataBean bean=new InformationDataBean();
bean.setNewId(rs.getString(1));
bean.setNewTitle(rs.getString(2));
bean.setNewContent(rs.getString(3));
bean.setNewDate(rs.getString(4));
al.add(bean);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
try{
if(rs!=null)rs.close();
if(st!=null)st.close();
}catch(SQLException ex){
}
}
return al;
}
}