項目 | 內容 |
---|---|
軟件工程 | 任課教師博客主頁連接 |
結對項目要求 | 做業連接地址 |
課程學習目標 | 熟悉軟件開發總體流程,提高自身能力 |
本次做業在哪一個具體方面幫助咱們實現目標 | 第一次體驗一個完整的工程 |
點評博客: | 201671010453 鍾紅耀 實驗二我的項目 |
github地址: | github地址 |
點評內容: | 從你的博文能夠看出來,你對待本課程的重視程度,使用了嚴格的markdown排版:代碼方面規範整齊,內容健壯,惟一的不足就是缺乏部分功能。 |
點評心得: | 本身對markdown的排版還有很大的欠缺, 基本排版還不是很瞭解,要多加註意和使用;代碼方面對代碼開發過程不是很熟悉,致使過程花了大把的時間。 |
查看源碼請點我html
a. 可處理任意用戶輸入的任意英文文本功能; b. 統計該文本的行數和字符數功能 c. 指定單詞詞頻統計功能; d. 前k個高頻詞統計功能; e. 統計該文本全部單詞數量及詞頻數,並能將單詞及詞頻數按字典順序輸出到文件result.txt功能 f. 統計時計時功能; g. GUI人機交互界面; h. 統計文本中除冠詞、代詞、介詞以外的高頻詞;
類型 | 內容 |
---|---|
數據 | 設計數據庫的E-R圖 |
工具 | IDEA,Navicat,Git,Github,maven,nginx |
框架 | ssm |
圖形 | (Echarts) |
編程技術 | WEB |
數據接口層源碼
package com.zhong.controller;java
import com.zhong.entiry.*;
import com.zhong.service.TestDateService;
import com.zhong.service.WordService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;nginx
import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;git
@Controller
@RequestMapping("/word")
public class WordController {github
@Autowired WordService wordService; @RequestMapping(value = "/count" ) public @ResponseBody ResultResponse selectWord()throws CustomException{ List<Word> list=wordService.selectWord(); if(list.size()>=1) System.out.println("有數據"); ResultResponse rs=new ResultResponse(list,0,""); return rs; } @RequestMapping(value = "/countOther" ,method = RequestMethod.POST) public @ResponseBody ResultResponse selectWordOther()throws CustomException{ String str="at,before,after,since,still,until,upon,on,from,between,by,in,during,for,through,\n" + "within,over"; String strArray[]=str.split(","); List<Word> list=wordService.selectWord(); for (int i = 0; i <list.size() ; i++) { String word=list.get(i).getWord(); if(word!="the"&&word!="an"&&word!="a"){ boolean flag=true; for (int j = 0; j <strArray.length ; j++) { if(word==strArray[j]) flag=false; } if(flag==false){ list.remove(i); } } } if(list.size()>=1) System.out.println("有數據"); ResultResponse rs=new ResultResponse(list,0,""); return rs; } @RequestMapping("/wordLine") public @ResponseBody
控制層源碼
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">web
<!--JavaBean傳遞參數--> <select id="selectWord" resultType="com.zhong.entiry.Word"> SELECT * FROM word </select> <select id="selectWordLine" resultType="com.zhong.entiry.WordLine"> SELECT * FROM word_count </select> <select id="selectTimeCount" resultType="com.zhong.entiry.TimeCount"> SELECT * FROM time_count </select> <insert id="insertword" parameterType="java.util.List" useGeneratedKeys="false"> insert into word (word,count) values <foreach collection="list" item="item" index="index" separator=","> ( #{item.word}, #{item.count} ) </foreach> </insert> <insert id="insertWordLine" parameterType="com.zhong.entiry.WordLine"> insert into word_count <trim prefix="(" suffix=")" suffixOverrides=","> <if test="wordLine != null"> wordLine, </if> <if test="charCount != null"> charCount, </if> </trim> <trim prefix="values (" suffix=")" suffixOverrides=","> <if test="wordLine != null"> #{wordLine,jdbcType=INTEGER}, </if> <if test="charCount != null"> #{charCount,jdbcType=INTEGER}, </if> </trim> </insert> <insert id="insertTimeCount" parameterType="java.util.List" useGeneratedKeys="false"> insert into time_count (type,time) values <foreach collection="list" item="item" index="index" separator=","> ( #{item.type}, #{item.time} ) </foreach> </insert>
PSP2.1 | 任務內容 | 計劃共完成須要的時間(min) | 實際完成須要的時間(min) |
---|---|---|---|
Planning | 計劃 | 25 | 20 |
Estimate | 估計這個任務須要多少時間,並規劃大體工做步驟 | 25 | 20 |
Development | 開發 | 500 | 420 |
Analysis | 需求分析 (包括學習新技術) | 100 | 80 |
Design Spec | 生成設計文檔 | 30 | 30 |
Design Review | 設計複審(和同事審覈設計文檔) | 15 | 11 |
Coding Standard | 代碼規範(爲目前的開發制定合適的規範) | 20 | 20 |
Design | 具體設計 | 60 | 50 |
Coding | 具體編碼 | 450 | 400 |
Code Review | 代碼複審 | 60 | 80 |
Test測試 | (自我測試,修改代碼,提交修改) | 50 | 40 |
Reporting | 報告 | 50 | 50 |
Test Report | 測試報告 | 20 | 20 |
Size Measurement | 計算工做量 | 10 | 5 |
Process Improvement Plan | 過後總結,並提出過程改進計劃 | 25 | 30 |
這次實驗是結對項目,兩我的互相學習,互相進步。在這次實驗中向個人搭檔鍾紅耀學習到了不少東西,讓我深入的認識到了本身的不足。spring