发表于: 2018-02-25 23:19:04

1 526


今日完成:

1.       完成t11

原本考虑使用

List<Profession> frontAnd = schoolService.selectProfessionByDirection("前端开发");
List<Profession> backAnd = schoolService.selectProfessionByDirection("后端开发");
List<Profession> mobile = schoolService.selectProfessionByDirection("移动开发");
List<Profession> wholePoint = schoolService.selectProfessionByDirection("整站开发");
List<Profession> operationAndMaintenance = schoolService.selectProfessionByDirection("运营维护");

然后通过modelandviewjsp页面中直接引用替换,但是感觉这个做法太死板了,而且发现

                                             

其实t11页面上就是这三个部分在循环输出,因此直接将两个数据库表传给jsp页面

List<Profession> professionList = schoolService.selectProfessionAll();
List<Salary> salaryList = schoolService.selecSalarytAll();

mav.addObject("professionList", professionList);
mav.addObject("salaryList", salaryList);

获取prefession几种不同类型的list,传给jsp页面

List<String> directionCategoryList = schoolService.directionCategoryList();

mav.addObject("directionCategoryList", directionCategoryList);

sql语句为,distinct可以除去重复字段

<select id="directionCategoryList" resultType="java.lang.String">
 
select distinct direction
  from profession
</select>

jsp中引用

<c:forEach items="${directionCategoryList}" var="item">
   
<a class="nav-bar-a" href="#${item}">${item}</a>
</c:forEach>

 

<c:forEach items="${directionCategoryList}" var="dcl">

   
<div id="${dcl}" class="caption">
        <h4>
${dcl}</h4>
    </div>

href="#${item}"id="${dcl}"实现在页面内的定位跳转

c:if判断循环输出是否为最后一种职务方向,决定是否引用css样式padding-bottom

<div class="row   <c:if test="${directionCategoryList.get(directionCategoryList.size()-1)==dcl}">padding-bottom</c:if> ">

保持bodyfooter之间的间距

循环便利每个职务,并判断是否与职务方向相符,决定是否输出,通过${}进行引用

<c:forEach items="${professionList}" var="pl">
    <
c:if test="${dcl==pl.direction}">
       
<div class="col-md-4 col-sm-6 col-xs-12 top-margin">

            <div
class="warp-border">
                <div
class="clearfix">
                    <div
class="icon-people"><img src="/image/${pl.picture}"></div>
                    <div
class="text">
                        <h4
class="">${pl.professionName}</h4>
                        <p
class="text-present">${pl.introduction}</p>
                    </div>
                </div>

使用map记录每个职务在学人数

List<Students> studentsList = schoolService.selectStudentsAll();

Map countStudents = new HashMap();
for
(Students s : studentsList){
    countStudents.put(s.getProfession()
, schoolService.countStudentsByProfession(s.getProfession()));
}

对应的sql

<select id="countByProfession" resultType="java.lang.Integer" parameterType="java.lang.String">
 
select count(*)
  from students
  where profession = #{profession,jdbcType=VARCHAR} and status = 1
</select>

jsp中引用,选择对应职业相应的薪水id

<c:forEach items="${salaryList}" var="sl">
    <
c:if test="${sl.id==pl.salary}">
       
<div class="rightWarp-class">
            <div
class="rightWarp-year">${sl.timeOne}</div>
            <div
class="rightWarp-wages">${sl.salaryOne}</div>
        </div>
        <div
class="rightWarp-class">
            <div
class="rightWarp-year">${sl.timeTwo}</div>
            <div
class="rightWarp-wages">${sl.salaryTwo}</div>
        </div>
        <div
class="rightWarp-class border-bottom">
            <div
class="rightWarp-year">${sl.timeThree}</div>
            <div
class="rightWarp-wages">${sl.salaryThree}</div>
        </div>
   
</c:if>
</
c:forEach>

明日计划:

1.       学习并实现tiles

2.       学习Tag标签来处理时间的转换

3.       将项目布置到服务器

4.       提交任务四

遇到的问题:

1.       jsp页面中使用foreach循环进行web页面和数据输出,如果输出的数据来自两个表格,则需要通过if语句和外键对两个表格进行连接,大量的if语句是得jsp页面很乱,不易维护,而且每次都便利表的所有数据进行筛选效率特别低,不知道实际项目中是如何解决这个问题的

2.       将下面的代码通过ctrl+alt+l进行自动缩进

3.   <ul class="nav navbar-nav">
    <a
href="/school/index">
        <li>
首 页</li>
    </a>
    <a
href="">
        <li
class="border">职 业</li>
    </a>
    <a
href="">
        <li>
推 荐</li>
    </a>
    <a
href="">
        <li>
关 于</li>
    </a>
</ul>

在鼠标hover会出现

调整为

<ul class="nav navbar-nav">
    <a
href="/school/index"><li>首 页</li></a>
    <a
href=""><li class="border">职 业</li></a>
    <a
href=""><li>推 荐</li></a>
    <a
href=""><li>关 于</li></a>
</ul>

就没有问题,不知道这是什么原因

收获:

1.       jsp页面中熟练使用if语句和foreach语句,并且输出嵌套list



返回列表 返回列表
评论

    分享到