zoukankan      html  css  js  c++  java
  • 采用jsp页面与java代码分离的方式写一个简单的二维表

    前提:在我们做程序时追求的是高内聚,低耦合,但是如果我们把jsp页面的的代码和java的代码都放在了jsp的代码编写中,使java和jsp高耦合这样的话不仅使jsp代码页面显得很复杂,而且也特别让不利于以后的维护,所以我们有了一个不成文的规范就是分层架构,把javad代码与jsp的代码分离开来,使jsp代码页中更加干净整洁。

     

    下面我将于用jsp和java代码分离的方法做出这样的一个二维表(做一个jsp页面动态显示信息表)

    第一步:首先我们需要一个实体类用于存放一个人的一整条信息(根据表格信息有编号,名字,班级,籍贯)

    a.我们先创建一个项目在这里我就用student来命名项目名(项目名一般用全小写)

    b.我们在student项目里面再建一个包名字就叫entity(这里面放的是实体类,也就是一个学生的信息)

    c.在entity的包里面建一个类,类名我就叫StudentInfo(学生信息的意思)

     d.接下来就是在这个类里面写代码了先填写属性 和二维表的字段要一致

    然后对这些属性进行封装:把鼠标移到id那里右键==》找到Source==>Generate Getters and Setters点击进去就会有这样的页面

    然后就会自动对属性进行封装

     

     第二步:写一个接口和实现接口的类

    a.先建立一个包Service再建立一个接口类StudentService

    b.在StudentService接口里面写一个方法用于返回List<StudentInfo>

    public interface StudentService {

    //有多少个业务逻辑,就设计多少个方法

    public List<StudentInfo> getAllStudents();

    }

    c.再从这个包里面建立一个类StudentServiceImpl(用于实现接口的方法)

    public class StudentServiceImpl implements StudentService {

           //里面填写业务逻辑代码

       

        public List<StudentInfo> getAllStudents() {

        //存放所有学生信息的数据集合

          List<StudentInfo> stuList = new ArrayList<StudentInfo>();//创建List集合把所有学生的信息都放在集合里面去

     

          //模拟从数据库取出3条学生信息

          StudentInfo si1 = new StudentInfo();//每new一个StudentInfo类就代表一个学生的信息

          StudentInfo si2 = new StudentInfo();//这里new了三个所以就有三个学生的信息

          StudentInfo si3 = new StudentInfo();

          si1.setId("1");//在第一个学生里面添加编号

          si2.setId("2");//在第二个学生里面添加编号

          si3.setId("3");//在第三个学生里面添加编号

          si1.setName("李伟铭");//在第一个学生里面添加名字

          si2.setName("王显军");//在第二个学生里面添加名字

          si3.setName("大头");//在第三个学生里面添加名字

           

              si1.setClasses("140");//在第一个学生里面添加班级

          si2.setClasses("140");//在第二个学生里面添加班级

          si3.setClasses("140");//在第三个学生里面添加班级

          si1.setClasses("火星");//在第一个学生里面添加籍贯

          si2.setClasses("水星");//在第二个学生里面添加籍贯

          si3.setClasses("土星");//在第三个学生里面添加籍贯

        //把3个学生存放到List集合中去

        stuList.add(si1);

        stuList.add(si2);

        stuList.add(si3);

     

        return stuList;//返回List集合里面的数据

    }

     

    }

    第三步:编辑JSP页面代码

     a.先创一个jsp页面

    b.在里面填写代码

    <table width="70%" boder="0" cellspacing="1" cellpadding="1" align="center" bgcolor="#F00">
    <tr bgcolor="#FFFFFF">//先用HTML的代码做出页面

    <td>编号</td>
    <td>姓名</td>
    <td>班级</td>
    <td>籍贯</td>
    </tr>
    <%
    StudentService stuService=new StudentServiceImpl();//用接口new对象(因为接口不能直接new对象所以)

                                                                                                                                                       //所以用接口的子类new对象stuService,就代表是接口

                                                    //的实现类
    List<StudentInfo> stuList=stuService.getAllStudents();//调用实现类的方法返回的是一个List<StudentInfo>
    for(StudentInfo student:stuList){//利用遍历的方法输出学生信息的数据
    %>
    <tr bgcolor="#FFFFFF">
    <td><%=student.getId()%></td>//然后把编号,姓名,班级,籍贯的信息放在表格里
    <td><%=student.getName()%></td>
    <td><%=student.getClasses()%></td>
    <td><%=student.getPlace()%></td>
    </tr>
    <%}%>
    </table>

     运行jsp页面

                                                                                                                           

  • 相关阅读:
    struts2 标签 前台遍历 字符串数组 String[]
    007-服务器域名&上传网站
    006-DOS命令
    005-OSI七层模型&IP地址
    004-编程语言发展史
    003-计量单位
    002-B/S架构&C/S架构
    001-计算机的组成
    1083. List Grades (25)
    1037. Magic Coupon (25)
  • 原文地址:https://www.cnblogs.com/panweiwei520/p/6875448.html
Copyright © 2011-2022 走看看