本人刚开始学JSP,现在在练习一个新闻项目,关于它的增删改查,我是都写在一个同一个处理页面,还是调用后台的class类来处理?

解决方案 »

  1.   

    原则推荐jsp页面只做信息展示用,所有业务逻辑的处理都应该放在后台。
      

  2.   

    那我如何将Request对象传到后台去?
      

  3.   

    举个简单的例子吧,可以使用bean的形式进行交互。后台:
    //Employee.java
    package test;
    import java.text.*;
    import java.util.Date;
    import java.sql.*;
    import java.io.*;
    public class Employee{
    public Connection getConnection(){
    Connection conn=null;
    try{
    Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
    String url="jdbc:sqlserver://localhost:1433;DatabaseName=MySampleTest";
    conn=DriverManager.getConnection(url,"sa","xxxx");
    }catch(Exception e){

    }
    return conn;
    }
    public ResultSet readEmployees(){
    try{
    Statement stmt=getConnection().createStatement();
    String sql="select 员工编号,员工姓名,员工职位,员工出生日期,员工性别,部门名称";
    sql=sql+" from 员工 left outer join 部门 on (员工.所属部门编号=部门.部门编号)";
    ResultSet rs=stmt.executeQuery(sql);
    return rs;
    }catch (Exception e){

    }
    return null;
    }
    }
    前台JSP:<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" %>
    <jsp:useBean id="employee" class="test.Employee" scope="page"/><html>
    <head><title>员工表 </title></head>
    <body>
    员工信息如下
        <br />
        <table border="1" cellspacing="1">
          <tr>
            <td>员工编号</td>
            <td>员工姓名</td>
            <td>员工职位</td>
            <td>员工出生日期</td>
            <td>员工性别</td>
            <td>部门名称</td>
          </tr>
    <%
    ResultSet rs=employee.readEmployees();
    while(rs!=null&&rs.next()){
    out.print("<tr><td>"+rs.getInt(1)+"</td>");
    out.print("<td>"+rs.getString(2)+"</td>");
    out.print("<td>"+rs.getString(3)+"</td>");
    out.print("<td>"+rs.getDate(4)+"</td>");
    out.print("<td>"+rs.getString(5)+"</td>");
    out.print("<td>"+rs.getString(6)+"</td></tr>");
         }
    %>
    </table>
    </body>
    <% rs.close(); %>
    </html>  
    后台进行操作,前台进行数据的展示。
      

  4.   

    往后台传的时候页面后面加字符串就可以了
    testAA.do?method=add(增加)
    testAA.do?method=del(删除)