Full Code of yadtang/Check for AI

master 3300d8bc18a2 cached
692 files
32.4 MB
1.3M tokens
1261 symbols
1 requests
Download .txt
Showing preview only (5,133K chars total). Download the full file or copy to clipboard to get everything.
Repository: yadtang/Check
Branch: master
Commit: 3300d8bc18a2
Files: 692
Total size: 32.4 MB

Directory structure:
gitextract_z89967oo/

└── Check Maven Webapp/
    ├── .classpath
    ├── .project
    ├── .settings/
    │   ├── .jsdtscope
    │   ├── com.genuitec.eclipse.core.prefs
    │   ├── org.eclipse.core.resources.prefs
    │   ├── org.eclipse.jdt.core.prefs
    │   ├── org.eclipse.ltk.core.refactoring.prefs
    │   ├── org.eclipse.m2e.core.prefs
    │   ├── org.eclipse.wst.common.component
    │   ├── org.eclipse.wst.common.project.facet.core.xml
    │   ├── org.eclipse.wst.jsdt.ui.superType.container
    │   ├── org.eclipse.wst.jsdt.ui.superType.name
    │   └── org.eclipse.wst.validation.prefs
    ├── pom.xml
    ├── src/
    │   └── main/
    │       ├── java/
    │       │   └── edu/
    │       │       └── fjnu/
    │       │           └── online/
    │       │               ├── common/
    │       │               │   └── springdao/
    │       │               │       ├── AppContext.java
    │       │               │       └── SQLDAO.java
    │       │               ├── controller/
    │       │               │   ├── BaseController.java
    │       │               │   ├── admin/
    │       │               │   │   ├── CourseController.java
    │       │               │   │   ├── GradeController.java
    │       │               │   │   ├── PaperController.java
    │       │               │   │   ├── QuestionController.java
    │       │               │   │   ├── TypeController.java
    │       │               │   │   └── UserController.java
    │       │               │   └── user/
    │       │               │       ├── ErrorBookController.java
    │       │               │       ├── PaperMgController.java
    │       │               │       └── StuController.java
    │       │               ├── dao/
    │       │               │   ├── BaseDao.java
    │       │               │   ├── CourseDao.java
    │       │               │   ├── ErrorBookDao.java
    │       │               │   ├── GradeDao.java
    │       │               │   ├── PaperDao.java
    │       │               │   ├── QuestionDao.java
    │       │               │   ├── TypeDao.java
    │       │               │   ├── UserDao.java
    │       │               │   └── impl/
    │       │               │       ├── BaseDaoImpl.java
    │       │               │       ├── CourseDaoImpl.java
    │       │               │       ├── ErrorBookDaoImpl.java
    │       │               │       ├── GradeDaoImpl.java
    │       │               │       ├── PaperDaoImpl.java
    │       │               │       ├── QuestionDaoImpl.java
    │       │               │       ├── TypeDaoImpl.java
    │       │               │       └── UserDaoImpl.java
    │       │               ├── domain/
    │       │               │   ├── Course.java
    │       │               │   ├── ErrorBook.java
    │       │               │   ├── Factory.java
    │       │               │   ├── Grade.java
    │       │               │   ├── MsgItem.java
    │       │               │   ├── Paper.java
    │       │               │   ├── Question.java
    │       │               │   ├── Type.java
    │       │               │   └── User.java
    │       │               ├── pagination/
    │       │               │   ├── Page.java
    │       │               │   └── PageInterceptor.java
    │       │               ├── service/
    │       │               │   ├── CourseService.java
    │       │               │   ├── ErrorBookService.java
    │       │               │   ├── GradeService.java
    │       │               │   ├── PaperService.java
    │       │               │   ├── QuestionService.java
    │       │               │   ├── TypeService.java
    │       │               │   ├── UserService.java
    │       │               │   └── impl/
    │       │               │       ├── CourseServiceImpl.java
    │       │               │       ├── ErrorBookServiceImpl.java
    │       │               │       ├── GradeServiceImpl.java
    │       │               │       ├── PaperServiceImpl.java
    │       │               │       ├── QuestionServiceImpl.java
    │       │               │       ├── TypeServiceImpl.java
    │       │               │       └── UserServiceImpl.java
    │       │               └── util/
    │       │                   ├── Arith.java
    │       │                   ├── ComputeScore.java
    │       │                   ├── Computeclass.java
    │       │                   ├── DateConverter.java
    │       │                   ├── DownloadUtil.java
    │       │                   ├── FormatStyle.java
    │       │                   ├── MD5Util.java
    │       │                   ├── MybatisUtil.java
    │       │                   ├── TextSimilarityUtil.java
    │       │                   ├── UtilFuns.java
    │       │                   └── file/
    │       │                       └── FileUtil.java
    │       ├── resources/
    │       │   ├── beans.xml
    │       │   ├── edu/
    │       │   │   └── fjnu/
    │       │   │       └── online/
    │       │   │           └── mapper/
    │       │   │               ├── Course.xml
    │       │   │               ├── ErrorBook.xml
    │       │   │               ├── Factory.xml
    │       │   │               ├── Grade.xml
    │       │   │               ├── Paper.xml
    │       │   │               ├── Question.xml
    │       │   │               ├── Type.xml
    │       │   │               └── User.xml
    │       │   ├── jdbc.properties
    │       │   ├── springmvc-servlet.xml
    │       │   └── sqlMapConfig.xml
    │       └── webapp/
    │           ├── WEB-INF/
    │           │   ├── pages/
    │           │   │   ├── admin/
    │           │   │   │   ├── course-mgt.jsp
    │           │   │   │   ├── course-reg.jsp
    │           │   │   │   ├── course-upd.jsp
    │           │   │   │   ├── grade-mgt.jsp
    │           │   │   │   ├── grade-reg.jsp
    │           │   │   │   ├── grade-upd.jsp
    │           │   │   │   ├── index.jsp
    │           │   │   │   ├── info-deal.jsp
    │           │   │   │   ├── info-det.jsp
    │           │   │   │   ├── info-mgt.jsp
    │           │   │   │   ├── info-qry.jsp
    │           │   │   │   ├── info-reg.jsp
    │           │   │   │   ├── info-upd.jsp
    │           │   │   │   ├── login.jsp
    │           │   │   │   ├── paper-mgt.jsp
    │           │   │   │   ├── paper-qry.jsp
    │           │   │   │   ├── paper-reg.jsp
    │           │   │   │   ├── question-mgt.jsp
    │           │   │   │   ├── question-qry.jsp
    │           │   │   │   ├── question-reg.jsp
    │           │   │   │   ├── question-upd.jsp
    │           │   │   │   ├── type-info.jsp
    │           │   │   │   ├── type-mgt.jsp
    │           │   │   │   ├── type-qry.jsp
    │           │   │   │   ├── type-reg.jsp
    │           │   │   │   └── type-upd.jsp
    │           │   │   ├── base.jsp
    │           │   │   ├── baseinfo/
    │           │   │   │   ├── left.jsp
    │           │   │   │   └── main.jsp
    │           │   │   ├── baselist.jsp
    │           │   │   ├── bases.jsp
    │           │   │   ├── home/
    │           │   │   │   ├── fmain.jsp
    │           │   │   │   ├── left.jsp
    │           │   │   │   ├── olmsgList.jsp
    │           │   │   │   └── title.jsp
    │           │   │   ├── index1.jsp
    │           │   │   └── user/
    │           │   │       ├── about.html
    │           │   │       ├── about.jsp
    │           │   │       ├── index.html
    │           │   │       ├── index.jsp
    │           │   │       ├── login.html
    │           │   │       ├── login.jsp
    │           │   │       ├── mybooks.html
    │           │   │       ├── mybooks.jsp
    │           │   │       ├── mypaper.html
    │           │   │       ├── mypaper.jsp
    │           │   │       ├── onlinecheck.html
    │           │   │       ├── paperdetail.jsp
    │           │   │       ├── qrypaper.jsp
    │           │   │       ├── regist.html
    │           │   │       ├── regist.jsp
    │           │   │       ├── regist1.jsp
    │           │   │       ├── scorequery.html
    │           │   │       ├── scorequery.jsp
    │           │   │       ├── tomypaper.jsp
    │           │   │       ├── userinfo.html
    │           │   │       └── userinfo.jsp
    │           │   └── web.xml
    │           ├── components/
    │           │   ├── chart/
    │           │   │   ├── amcolumn/
    │           │   │   │   ├── amcharts_key.txt
    │           │   │   │   ├── amcolumn.swf
    │           │   │   │   ├── amcolumn_data.txt
    │           │   │   │   ├── amcolumn_data.xml
    │           │   │   │   ├── amcolumn_data333.txt
    │           │   │   │   ├── amcolumn_settings.xml
    │           │   │   │   ├── export.aspx
    │           │   │   │   ├── export.aspx.cs
    │           │   │   │   ├── export.php
    │           │   │   │   ├── fonts/
    │           │   │   │   │   ├── arial.fla
    │           │   │   │   │   ├── arial.swf
    │           │   │   │   │   ├── garamond.swf
    │           │   │   │   │   ├── tahoma.swf
    │           │   │   │   │   └── times new roman.swf
    │           │   │   │   ├── patterns/
    │           │   │   │   │   ├── diagonal.fla
    │           │   │   │   │   ├── diagonal.swf
    │           │   │   │   │   ├── horizontal.fla
    │           │   │   │   │   ├── horizontal.swf
    │           │   │   │   │   ├── vertical.fla
    │           │   │   │   │   └── vertical.swf
    │           │   │   │   ├── plugins/
    │           │   │   │   │   └── value_indicator.swf
    │           │   │   │   └── swfobject.js
    │           │   │   ├── amline_1.6.4.1/
    │           │   │   │   ├── amline/
    │           │   │   │   │   ├── amcharts_key.txt
    │           │   │   │   │   ├── amline.swf
    │           │   │   │   │   ├── amline_data.txt
    │           │   │   │   │   ├── amline_data.xml
    │           │   │   │   │   ├── amline_settings.xml
    │           │   │   │   │   ├── export.aspx
    │           │   │   │   │   ├── export.aspx.cs
    │           │   │   │   │   ├── export.php
    │           │   │   │   │   ├── fonts/
    │           │   │   │   │   │   ├── arial.swf
    │           │   │   │   │   │   ├── garamond.swf
    │           │   │   │   │   │   ├── georgia.swf
    │           │   │   │   │   │   ├── tahoma.fla
    │           │   │   │   │   │   ├── tahoma.swf
    │           │   │   │   │   │   └── times new roman.swf
    │           │   │   │   │   ├── plugins/
    │           │   │   │   │   │   └── value_indicator.swf
    │           │   │   │   │   └── swfobject.js
    │           │   │   │   ├── amline.html
    │           │   │   │   ├── changelog.txt
    │           │   │   │   ├── examples/
    │           │   │   │   │   ├── auto_resizing_chart/
    │           │   │   │   │   │   ├── amline_data.xml
    │           │   │   │   │   │   ├── amline_settings.xml
    │           │   │   │   │   │   └── index.html
    │           │   │   │   │   ├── chart_with_data_gaps/
    │           │   │   │   │   │   ├── amline_data.txt
    │           │   │   │   │   │   ├── amline_settings.xml
    │           │   │   │   │   │   └── index.html
    │           │   │   │   │   ├── chart_with_scroller/
    │           │   │   │   │   │   ├── amline_data.xml
    │           │   │   │   │   │   ├── amline_settings.xml
    │           │   │   │   │   │   ├── bg.swf
    │           │   │   │   │   │   ├── bomb.swf
    │           │   │   │   │   │   └── index.html
    │           │   │   │   │   ├── data_and_settings_inisde_html/
    │           │   │   │   │   │   └── index.html
    │           │   │   │   │   ├── javascript_control/
    │           │   │   │   │   │   ├── amline_data.xml
    │           │   │   │   │   │   ├── amline_settings.xml
    │           │   │   │   │   │   └── index.html
    │           │   │   │   │   ├── multiple_charts_on_one_page/
    │           │   │   │   │   │   ├── amline_data1.txt
    │           │   │   │   │   │   ├── amline_data2.txt
    │           │   │   │   │   │   ├── amline_settings1.xml
    │           │   │   │   │   │   ├── amline_settings2.xml
    │           │   │   │   │   │   └── index.html
    │           │   │   │   │   ├── no_interactivity/
    │           │   │   │   │   │   ├── amline_data.xml
    │           │   │   │   │   │   ├── amline_settings.xml
    │           │   │   │   │   │   └── index.html
    │           │   │   │   │   ├── stacked_area_chart/
    │           │   │   │   │   │   ├── amline_data.xml
    │           │   │   │   │   │   ├── amline_settings.xml
    │           │   │   │   │   │   └── index.html
    │           │   │   │   │   └── value_indicator_plugin/
    │           │   │   │   │       ├── amline_data.xml
    │           │   │   │   │       ├── amline_settings.xml
    │           │   │   │   │       └── index.html
    │           │   │   │   ├── licence.txt
    │           │   │   │   └── readme.txt
    │           │   │   └── ampie_1.6.4.1/
    │           │   │       ├── ampie/
    │           │   │       │   ├── amcharts_key.txt
    │           │   │       │   ├── ampie.swf
    │           │   │       │   ├── ampie_data.txt
    │           │   │       │   ├── ampie_data.xml
    │           │   │       │   ├── ampie_settings.xml
    │           │   │       │   ├── export.aspx
    │           │   │       │   ├── export.aspx.cs
    │           │   │       │   ├── export.php
    │           │   │       │   ├── patterns/
    │           │   │       │   │   ├── diagonal.fla
    │           │   │       │   │   ├── diagonal.swf
    │           │   │       │   │   ├── horizontal.fla
    │           │   │       │   │   ├── horizontal.swf
    │           │   │       │   │   ├── vertical.fla
    │           │   │       │   │   └── vertical.swf
    │           │   │       │   ├── swfobject.js
    │           │   │       │   └── xx.xml
    │           │   │       ├── ampie.html
    │           │   │       ├── changelog.txt
    │           │   │       ├── examples/
    │           │   │       │   ├── ampie/
    │           │   │       │   │   ├── ampie1/
    │           │   │       │   │   │   ├── ampie_data.txt
    │           │   │       │   │   │   └── ampie_settings.xml
    │           │   │       │   │   ├── ampie3/
    │           │   │       │   │   │   ├── ampie_data.xml
    │           │   │       │   │   │   └── ampie_settings.xml
    │           │   │       │   │   ├── ampie4/
    │           │   │       │   │   │   ├── ampie_data1.txt
    │           │   │       │   │   │   ├── ampie_data2.txt
    │           │   │       │   │   │   ├── ampie_settings1.xml
    │           │   │       │   │   │   └── ampie_settings2.xml
    │           │   │       │   │   ├── ampie5/
    │           │   │       │   │   │   ├── ampie_data.xml
    │           │   │       │   │   │   ├── ampie_settings.xml
    │           │   │       │   │   │   └── bg.swf
    │           │   │       │   │   └── js/
    │           │   │       │   │       ├── ampie_data.xml
    │           │   │       │   │       └── ampie_settings.xml
    │           │   │       │   ├── ampie1.html
    │           │   │       │   ├── ampie2.html
    │           │   │       │   ├── ampie3.html
    │           │   │       │   ├── ampie4.html
    │           │   │       │   ├── ampie5.html
    │           │   │       │   ├── js_example.html
    │           │   │       │   └── multiple_charts_on_one_page/
    │           │   │       │       ├── ampie_data1.txt
    │           │   │       │       ├── ampie_data2.txt
    │           │   │       │       ├── ampie_settings1.xml
    │           │   │       │       ├── ampie_settings2.xml
    │           │   │       │       └── index.html
    │           │   │       ├── licence.txt
    │           │   │       └── readme.txt
    │           │   └── jquery-ui/
    │           │       └── jquery-1.2.6.js
    │           ├── css/
    │           │   ├── WdatePicker.css
    │           │   ├── base.css
    │           │   ├── bootstrap.css
    │           │   ├── extreme/
    │           │   │   ├── extremecomponents.css
    │           │   │   └── extremesite.css
    │           │   ├── home.css
    │           │   ├── index.css
    │           │   ├── info-mgt.css
    │           │   ├── info-reg.css
    │           │   ├── jquery.dialog.css
    │           │   ├── jquery.searchableSelect.css
    │           │   ├── login.css
    │           │   ├── reset.css
    │           │   ├── style.css
    │           │   ├── supersized.css
    │           │   ├── swipebox.css
    │           │   ├── time.css
    │           │   └── userlogin.css
    │           ├── images/
    │           │   └── olmsg/
    │           │       ├── mouse149.ANI
    │           │       ├── shubiao.ani
    │           │       └── wish1.swf
    │           ├── index.jsp
    │           ├── js/
    │           │   ├── WdatePicker.js
    │           │   ├── bootstrap.js
    │           │   ├── calendar.js
    │           │   ├── classie.js
    │           │   ├── common.js
    │           │   ├── core.js
    │           │   ├── datepicker/
    │           │   │   ├── My97DatePicker.htm
    │           │   │   ├── WdatePicker.js
    │           │   │   ├── calendar.js
    │           │   │   ├── config.js
    │           │   │   ├── lang/
    │           │   │   │   ├── en.js
    │           │   │   │   ├── zh-cn.js
    │           │   │   │   └── zh-tw.js
    │           │   │   ├── readme.txt
    │           │   │   └── skin/
    │           │   │       ├── WdatePicker.css
    │           │   │       ├── default/
    │           │   │       │   └── datepicker.css
    │           │   │       └── whyGreen/
    │           │   │           └── datepicker.css
    │           │   ├── dtree/
    │           │   │   ├── ckdtree/
    │           │   │   │   ├── api.html
    │           │   │   │   ├── dtree.css
    │           │   │   │   ├── dtree.js
    │           │   │   │   └── example01.html
    │           │   │   ├── dtree/
    │           │   │   │   ├── bzgk.html
    │           │   │   │   ├── dept.html
    │           │   │   │   ├── dtree.css
    │           │   │   │   ├── dtree.js
    │           │   │   │   ├── dtreebak.js
    │           │   │   │   └── example01.html
    │           │   │   └── tdtree/
    │           │   │       ├── api.html
    │           │   │       ├── dtree.css
    │           │   │       ├── dtree.js
    │           │   │       ├── example01.html
    │           │   │       └── frame.html
    │           │   ├── easing.js
    │           │   ├── index.js
    │           │   ├── jquery-1.10.1.js
    │           │   ├── jquery.dialog.js
    │           │   ├── jquery.js
    │           │   ├── jquery.pagination.js
    │           │   ├── jquery.searchableSelect.js
    │           │   ├── lang/
    │           │   │   ├── en.js
    │           │   │   ├── zh-cn.js
    │           │   │   └── zh-tw.js
    │           │   ├── modernizr.custom.js
    │           │   ├── move-top.js
    │           │   ├── scripts.js
    │           │   ├── skin/
    │           │   │   ├── WdatePicker.css
    │           │   │   ├── default/
    │           │   │   │   └── datepicker.css
    │           │   │   └── whyGreen/
    │           │   │       └── datepicker.css
    │           │   ├── supersized-init.js
    │           │   ├── tabledo.js
    │           │   └── uisearch.js
    │           ├── make/
    │           │   └── xlsprint/
    │           │       ├── OFFER.xls
    │           │       ├── SALES.xls
    │           │       ├── SAMPLE.xls
    │           │       ├── tCONTRACT.xls
    │           │       ├── tEXPORT.xls
    │           │       ├── tFINANCE.xls
    │           │       ├── tHOMEPARKINGLIST.xls
    │           │       ├── tINVOICE.xls
    │           │       ├── tOUTPRODUCT.xls
    │           │       ├── tPARKINGLIST.xls
    │           │       ├── tSHIPPINGORDER.xls
    │           │       └── txOutProduct.xls
    │           ├── skin/
    │           │   └── default/
    │           │       ├── css/
    │           │       │   ├── default.css
    │           │       │   ├── login.css
    │           │       │   ├── main.css
    │           │       │   ├── table.css
    │           │       │   └── title.css
    │           │       └── js/
    │           │           └── toggle.js
    │           └── sql/
    │               └── onlinetest.sql
    └── target/
        ├── Check/
        │   ├── WEB-INF/
        │   │   ├── classes/
        │   │   │   ├── beans.xml
        │   │   │   ├── edu/
        │   │   │   │   └── fjnu/
        │   │   │   │       └── online/
        │   │   │   │           └── mapper/
        │   │   │   │               ├── Course.xml
        │   │   │   │               ├── ErrorBook.xml
        │   │   │   │               ├── Factory.xml
        │   │   │   │               ├── Grade.xml
        │   │   │   │               ├── Paper.xml
        │   │   │   │               ├── Question.xml
        │   │   │   │               ├── Type.xml
        │   │   │   │               └── User.xml
        │   │   │   ├── jdbc.properties
        │   │   │   ├── springmvc-servlet.xml
        │   │   │   └── sqlMapConfig.xml
        │   │   ├── lib/
        │   │   │   ├── aopalliance-1.0.jar
        │   │   │   ├── c3p0-0.9.1.2.jar
        │   │   │   ├── com.springsource.org.aspectj.weaver-1.6.8.RELEASE.jar
        │   │   │   ├── commons-codec-1.5.jar
        │   │   │   ├── commons-fileupload-1.2.2.jar
        │   │   │   ├── commons-io-2.0.1.jar
        │   │   │   ├── commons-logging-1.1.1.jar
        │   │   │   ├── dom4j-1.6.1.jar
        │   │   │   ├── hamcrest-core-1.1.jar
        │   │   │   ├── jackson-core-asl-1.9.11.jar
        │   │   │   ├── jackson-mapper-asl-1.9.11.jar
        │   │   │   ├── jcommon-1.0.16.jar
        │   │   │   ├── jfreechart-1.0.13.jar
        │   │   │   ├── jsp-api-2.1.jar
        │   │   │   ├── jsqlparser-0.9.1.jar
        │   │   │   ├── jstl-api-1.2.jar
        │   │   │   ├── jstl-impl-1.2.jar
        │   │   │   ├── junit-4.9.jar
        │   │   │   ├── jxl-2.4.2.jar
        │   │   │   ├── log4j-1.2.13.jar
        │   │   │   ├── mybatis-3.2.2.jar
        │   │   │   ├── mybatis-spring-1.2.0.jar
        │   │   │   ├── mysql-connector-java-5.1.10.jar
        │   │   │   ├── pagehelper-4.0.0.jar
        │   │   │   ├── poi-3.9.jar
        │   │   │   ├── poi-ooxml-3.9.jar
        │   │   │   ├── poi-ooxml-schemas-3.9.jar
        │   │   │   ├── servlet-api-2.5.jar
        │   │   │   ├── spring-aop-3.2.2.RELEASE.jar
        │   │   │   ├── spring-beans-3.2.2.RELEASE.jar
        │   │   │   ├── spring-context-3.2.2.RELEASE.jar
        │   │   │   ├── spring-core-3.2.2.RELEASE.jar
        │   │   │   ├── spring-expression-3.2.2.RELEASE.jar
        │   │   │   ├── spring-jdbc-3.2.2.RELEASE.jar
        │   │   │   ├── spring-orm-3.2.2.RELEASE.jar
        │   │   │   ├── spring-tx-3.2.2.RELEASE.jar
        │   │   │   ├── spring-web-3.2.2.RELEASE.jar
        │   │   │   ├── spring-webmvc-3.2.2.RELEASE.jar
        │   │   │   ├── stax-api-1.0.1.jar
        │   │   │   ├── xml-apis-1.0.b2.jar
        │   │   │   └── xmlbeans-2.3.0.jar
        │   │   ├── pages/
        │   │   │   ├── admin/
        │   │   │   │   ├── course-mgt.jsp
        │   │   │   │   ├── course-reg.jsp
        │   │   │   │   ├── course-upd.jsp
        │   │   │   │   ├── grade-mgt.jsp
        │   │   │   │   ├── grade-reg.jsp
        │   │   │   │   ├── grade-upd.jsp
        │   │   │   │   ├── index.jsp
        │   │   │   │   ├── info-deal.jsp
        │   │   │   │   ├── info-det.jsp
        │   │   │   │   ├── info-mgt.jsp
        │   │   │   │   ├── info-qry.jsp
        │   │   │   │   ├── info-reg.jsp
        │   │   │   │   ├── info-upd.jsp
        │   │   │   │   ├── login.jsp
        │   │   │   │   ├── paper-mgt.jsp
        │   │   │   │   ├── paper-qry.jsp
        │   │   │   │   ├── paper-reg.jsp
        │   │   │   │   ├── question-mgt.jsp
        │   │   │   │   ├── question-qry.jsp
        │   │   │   │   ├── question-reg.jsp
        │   │   │   │   ├── question-upd.jsp
        │   │   │   │   ├── type-info.jsp
        │   │   │   │   ├── type-mgt.jsp
        │   │   │   │   ├── type-qry.jsp
        │   │   │   │   ├── type-reg.jsp
        │   │   │   │   └── type-upd.jsp
        │   │   │   ├── base.jsp
        │   │   │   ├── baseinfo/
        │   │   │   │   ├── left.jsp
        │   │   │   │   └── main.jsp
        │   │   │   ├── baselist.jsp
        │   │   │   ├── bases.jsp
        │   │   │   ├── home/
        │   │   │   │   ├── fmain.jsp
        │   │   │   │   ├── left.jsp
        │   │   │   │   ├── olmsgList.jsp
        │   │   │   │   └── title.jsp
        │   │   │   ├── index1.jsp
        │   │   │   └── user/
        │   │   │       ├── index.html
        │   │   │       ├── index.jsp
        │   │   │       ├── login.html
        │   │   │       ├── login.jsp
        │   │   │       ├── mybooks.html
        │   │   │       ├── mybooks.jsp
        │   │   │       ├── mypaper.html
        │   │   │       ├── mypaper.jsp
        │   │   │       ├── onlinecheck.html
        │   │   │       ├── paperdetail.jsp
        │   │   │       ├── qrypaper.jsp
        │   │   │       ├── regist.html
        │   │   │       ├── regist.jsp
        │   │   │       ├── regist1.jsp
        │   │   │       ├── scorequery.html
        │   │   │       ├── scorequery.jsp
        │   │   │       ├── tomypaper.jsp
        │   │   │       ├── userinfo.html
        │   │   │       └── userinfo.jsp
        │   │   └── web.xml
        │   ├── components/
        │   │   ├── chart/
        │   │   │   ├── amcolumn/
        │   │   │   │   ├── amcharts_key.txt
        │   │   │   │   ├── amcolumn.swf
        │   │   │   │   ├── amcolumn_data.txt
        │   │   │   │   ├── amcolumn_data.xml
        │   │   │   │   ├── amcolumn_data333.txt
        │   │   │   │   ├── amcolumn_settings.xml
        │   │   │   │   ├── export.aspx
        │   │   │   │   ├── export.aspx.cs
        │   │   │   │   ├── export.php
        │   │   │   │   ├── fonts/
        │   │   │   │   │   ├── arial.fla
        │   │   │   │   │   ├── arial.swf
        │   │   │   │   │   ├── garamond.swf
        │   │   │   │   │   ├── tahoma.swf
        │   │   │   │   │   └── times new roman.swf
        │   │   │   │   ├── patterns/
        │   │   │   │   │   ├── diagonal.fla
        │   │   │   │   │   ├── diagonal.swf
        │   │   │   │   │   ├── horizontal.fla
        │   │   │   │   │   ├── horizontal.swf
        │   │   │   │   │   ├── vertical.fla
        │   │   │   │   │   └── vertical.swf
        │   │   │   │   ├── plugins/
        │   │   │   │   │   └── value_indicator.swf
        │   │   │   │   └── swfobject.js
        │   │   │   ├── amline_1.6.4.1/
        │   │   │   │   ├── amline/
        │   │   │   │   │   ├── amcharts_key.txt
        │   │   │   │   │   ├── amline.swf
        │   │   │   │   │   ├── amline_data.txt
        │   │   │   │   │   ├── amline_data.xml
        │   │   │   │   │   ├── amline_settings.xml
        │   │   │   │   │   ├── export.aspx
        │   │   │   │   │   ├── export.aspx.cs
        │   │   │   │   │   ├── export.php
        │   │   │   │   │   ├── fonts/
        │   │   │   │   │   │   ├── arial.swf
        │   │   │   │   │   │   ├── garamond.swf
        │   │   │   │   │   │   ├── georgia.swf
        │   │   │   │   │   │   ├── tahoma.fla
        │   │   │   │   │   │   ├── tahoma.swf
        │   │   │   │   │   │   └── times new roman.swf
        │   │   │   │   │   ├── plugins/
        │   │   │   │   │   │   └── value_indicator.swf
        │   │   │   │   │   └── swfobject.js
        │   │   │   │   ├── amline.html
        │   │   │   │   ├── changelog.txt
        │   │   │   │   ├── examples/
        │   │   │   │   │   ├── auto_resizing_chart/
        │   │   │   │   │   │   ├── amline_data.xml
        │   │   │   │   │   │   ├── amline_settings.xml
        │   │   │   │   │   │   └── index.html
        │   │   │   │   │   ├── chart_with_data_gaps/
        │   │   │   │   │   │   ├── amline_data.txt
        │   │   │   │   │   │   ├── amline_settings.xml
        │   │   │   │   │   │   └── index.html
        │   │   │   │   │   ├── chart_with_scroller/
        │   │   │   │   │   │   ├── amline_data.xml
        │   │   │   │   │   │   ├── amline_settings.xml
        │   │   │   │   │   │   ├── bg.swf
        │   │   │   │   │   │   ├── bomb.swf
        │   │   │   │   │   │   └── index.html
        │   │   │   │   │   ├── data_and_settings_inisde_html/
        │   │   │   │   │   │   └── index.html
        │   │   │   │   │   ├── javascript_control/
        │   │   │   │   │   │   ├── amline_data.xml
        │   │   │   │   │   │   ├── amline_settings.xml
        │   │   │   │   │   │   └── index.html
        │   │   │   │   │   ├── multiple_charts_on_one_page/
        │   │   │   │   │   │   ├── amline_data1.txt
        │   │   │   │   │   │   ├── amline_data2.txt
        │   │   │   │   │   │   ├── amline_settings1.xml
        │   │   │   │   │   │   ├── amline_settings2.xml
        │   │   │   │   │   │   └── index.html
        │   │   │   │   │   ├── no_interactivity/
        │   │   │   │   │   │   ├── amline_data.xml
        │   │   │   │   │   │   ├── amline_settings.xml
        │   │   │   │   │   │   └── index.html
        │   │   │   │   │   ├── stacked_area_chart/
        │   │   │   │   │   │   ├── amline_data.xml
        │   │   │   │   │   │   ├── amline_settings.xml
        │   │   │   │   │   │   └── index.html
        │   │   │   │   │   └── value_indicator_plugin/
        │   │   │   │   │       ├── amline_data.xml
        │   │   │   │   │       ├── amline_settings.xml
        │   │   │   │   │       └── index.html
        │   │   │   │   ├── licence.txt
        │   │   │   │   └── readme.txt
        │   │   │   └── ampie_1.6.4.1/
        │   │   │       ├── ampie/
        │   │   │       │   ├── amcharts_key.txt
        │   │   │       │   ├── ampie.swf
        │   │   │       │   ├── ampie_data.txt
        │   │   │       │   ├── ampie_data.xml
        │   │   │       │   ├── ampie_settings.xml
        │   │   │       │   ├── export.aspx
        │   │   │       │   ├── export.aspx.cs
        │   │   │       │   ├── export.php
        │   │   │       │   ├── patterns/
        │   │   │       │   │   ├── diagonal.fla
        │   │   │       │   │   ├── diagonal.swf
        │   │   │       │   │   ├── horizontal.fla
        │   │   │       │   │   ├── horizontal.swf
        │   │   │       │   │   ├── vertical.fla
        │   │   │       │   │   └── vertical.swf
        │   │   │       │   ├── swfobject.js
        │   │   │       │   └── xx.xml
        │   │   │       ├── ampie.html
        │   │   │       ├── changelog.txt
        │   │   │       ├── examples/
        │   │   │       │   ├── ampie/
        │   │   │       │   │   ├── ampie1/
        │   │   │       │   │   │   ├── ampie_data.txt
        │   │   │       │   │   │   └── ampie_settings.xml
        │   │   │       │   │   ├── ampie3/
        │   │   │       │   │   │   ├── ampie_data.xml
        │   │   │       │   │   │   └── ampie_settings.xml
        │   │   │       │   │   ├── ampie4/
        │   │   │       │   │   │   ├── ampie_data1.txt
        │   │   │       │   │   │   ├── ampie_data2.txt
        │   │   │       │   │   │   ├── ampie_settings1.xml
        │   │   │       │   │   │   └── ampie_settings2.xml
        │   │   │       │   │   ├── ampie5/
        │   │   │       │   │   │   ├── ampie_data.xml
        │   │   │       │   │   │   ├── ampie_settings.xml
        │   │   │       │   │   │   └── bg.swf
        │   │   │       │   │   └── js/
        │   │   │       │   │       ├── ampie_data.xml
        │   │   │       │   │       └── ampie_settings.xml
        │   │   │       │   ├── ampie1.html
        │   │   │       │   ├── ampie2.html
        │   │   │       │   ├── ampie3.html
        │   │   │       │   ├── ampie4.html
        │   │   │       │   ├── ampie5.html
        │   │   │       │   ├── js_example.html
        │   │   │       │   └── multiple_charts_on_one_page/
        │   │   │       │       ├── ampie_data1.txt
        │   │   │       │       ├── ampie_data2.txt
        │   │   │       │       ├── ampie_settings1.xml
        │   │   │       │       ├── ampie_settings2.xml
        │   │   │       │       └── index.html
        │   │   │       ├── licence.txt
        │   │   │       └── readme.txt
        │   │   └── jquery-ui/
        │   │       └── jquery-1.2.6.js
        │   ├── css/
        │   │   ├── WdatePicker.css
        │   │   ├── base.css
        │   │   ├── bootstrap.css
        │   │   ├── extreme/
        │   │   │   ├── extremecomponents.css
        │   │   │   └── extremesite.css
        │   │   ├── home.css
        │   │   ├── index.css
        │   │   ├── info-mgt.css
        │   │   ├── info-reg.css
        │   │   ├── jquery.dialog.css
        │   │   ├── jquery.searchableSelect.css
        │   │   ├── login.css
        │   │   ├── reset.css
        │   │   ├── style.css
        │   │   ├── supersized.css
        │   │   ├── swipebox.css
        │   │   ├── time.css
        │   │   └── userlogin.css
        │   ├── images/
        │   │   └── olmsg/
        │   │       ├── mouse149.ANI
        │   │       ├── shubiao.ani
        │   │       └── wish1.swf
        │   ├── index.jsp
        │   ├── js/
        │   │   ├── WdatePicker.js
        │   │   ├── bootstrap.js
        │   │   ├── calendar.js
        │   │   ├── classie.js
        │   │   ├── common.js
        │   │   ├── core.js
        │   │   ├── datepicker/
        │   │   │   ├── My97DatePicker.htm
        │   │   │   ├── WdatePicker.js
        │   │   │   ├── calendar.js
        │   │   │   ├── config.js
        │   │   │   ├── lang/
        │   │   │   │   ├── en.js
        │   │   │   │   ├── zh-cn.js
        │   │   │   │   └── zh-tw.js
        │   │   │   ├── readme.txt
        │   │   │   └── skin/
        │   │   │       ├── WdatePicker.css
        │   │   │       ├── default/
        │   │   │       │   └── datepicker.css
        │   │   │       └── whyGreen/
        │   │   │           └── datepicker.css
        │   │   ├── dtree/
        │   │   │   ├── ckdtree/
        │   │   │   │   ├── api.html
        │   │   │   │   ├── dtree.css
        │   │   │   │   ├── dtree.js
        │   │   │   │   └── example01.html
        │   │   │   ├── dtree/
        │   │   │   │   ├── bzgk.html
        │   │   │   │   ├── dept.html
        │   │   │   │   ├── dtree.css
        │   │   │   │   ├── dtree.js
        │   │   │   │   ├── dtreebak.js
        │   │   │   │   └── example01.html
        │   │   │   └── tdtree/
        │   │   │       ├── api.html
        │   │   │       ├── dtree.css
        │   │   │       ├── dtree.js
        │   │   │       ├── example01.html
        │   │   │       └── frame.html
        │   │   ├── easing.js
        │   │   ├── index.js
        │   │   ├── jquery-1.10.1.js
        │   │   ├── jquery.dialog.js
        │   │   ├── jquery.js
        │   │   ├── jquery.pagination.js
        │   │   ├── jquery.searchableSelect.js
        │   │   ├── lang/
        │   │   │   ├── en.js
        │   │   │   ├── zh-cn.js
        │   │   │   └── zh-tw.js
        │   │   ├── modernizr.custom.js
        │   │   ├── move-top.js
        │   │   ├── scripts.js
        │   │   ├── skin/
        │   │   │   ├── WdatePicker.css
        │   │   │   ├── default/
        │   │   │   │   └── datepicker.css
        │   │   │   └── whyGreen/
        │   │   │       └── datepicker.css
        │   │   ├── supersized-init.js
        │   │   ├── tabledo.js
        │   │   └── uisearch.js
        │   ├── make/
        │   │   └── xlsprint/
        │   │       ├── OFFER.xls
        │   │       ├── SALES.xls
        │   │       ├── SAMPLE.xls
        │   │       ├── tCONTRACT.xls
        │   │       ├── tEXPORT.xls
        │   │       ├── tFINANCE.xls
        │   │       ├── tHOMEPARKINGLIST.xls
        │   │       ├── tINVOICE.xls
        │   │       ├── tOUTPRODUCT.xls
        │   │       ├── tPARKINGLIST.xls
        │   │       ├── tSHIPPINGORDER.xls
        │   │       └── txOutProduct.xls
        │   └── skin/
        │       └── default/
        │           ├── css/
        │           │   ├── default.css
        │           │   ├── login.css
        │           │   ├── main.css
        │           │   ├── table.css
        │           │   └── title.css
        │           └── js/
        │               └── toggle.js
        ├── Check.war
        ├── classes/
        │   ├── beans.xml
        │   ├── edu/
        │   │   └── fjnu/
        │   │       └── online/
        │   │           └── mapper/
        │   │               ├── Course.xml
        │   │               ├── ErrorBook.xml
        │   │               ├── Factory.xml
        │   │               ├── Grade.xml
        │   │               ├── Paper.xml
        │   │               ├── Question.xml
        │   │               ├── Type.xml
        │   │               └── User.xml
        │   ├── jdbc.properties
        │   ├── springmvc-servlet.xml
        │   └── sqlMapConfig.xml
        ├── m2e-jee/
        │   └── web-resources/
        │       └── META-INF/
        │           ├── MANIFEST.MF
        │           └── maven/
        │               └── edu.fjnu.online/
        │                   └── Check/
        │                       ├── pom.properties
        │                       └── pom.xml
        ├── maven-archiver/
        │   └── pom.properties
        └── maven-status/
            └── maven-compiler-plugin/
                ├── compile/
                │   └── default-compile/
                │       ├── createdFiles.lst
                │       └── inputFiles.lst
                └── testCompile/
                    └── default-testCompile/
                        └── inputFiles.lst

================================================
FILE CONTENTS
================================================

================================================
FILE: Check Maven Webapp/.classpath
================================================
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
	<classpathentry kind="src" output="target/classes" path="src/main/java">
		<attributes>
			<attribute name="optional" value="true"/>
			<attribute name="maven.pomderived" value="true"/>
		</attributes>
	</classpathentry>
	<classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources">
		<attributes>
			<attribute name="maven.pomderived" value="true"/>
		</attributes>
	</classpathentry>
	<classpathentry kind="src" output="target/test-classes" path="src/test/java">
		<attributes>
			<attribute name="optional" value="true"/>
			<attribute name="maven.pomderived" value="true"/>
		</attributes>
	</classpathentry>
	<classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER">
		<attributes>
			<attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>
		</attributes>
	</classpathentry>
	<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
		<attributes>
			<attribute name="maven.pomderived" value="true"/>
			<attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>
		</attributes>
	</classpathentry>
	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5">
		<attributes>
			<attribute name="maven.pomderived" value="true"/>
		</attributes>
	</classpathentry>
	<classpathentry kind="output" path="target/classes"/>
</classpath>


================================================
FILE: Check Maven Webapp/.project
================================================
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
	<name>Check Maven Webapp</name>
	<comment></comment>
	<projects>
	</projects>
	<buildSpec>
		<buildCommand>
			<name>org.eclipse.wst.jsdt.core.javascriptValidator</name>
			<arguments>
			</arguments>
		</buildCommand>
		<buildCommand>
			<name>org.eclipse.jdt.core.javabuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
		<buildCommand>
			<name>org.eclipse.wst.common.project.facet.core.builder</name>
			<arguments>
			</arguments>
		</buildCommand>
		<buildCommand>
			<name>org.eclipse.wst.validation.validationbuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
		<buildCommand>
			<name>org.maven.ide.eclipse.maven2Builder</name>
			<arguments>
			</arguments>
		</buildCommand>
		<buildCommand>
			<name>com.genuitec.eclipse.ast.deploy.core.DeploymentBuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
		<buildCommand>
			<name>com.genuitec.eclipse.springframework.springbuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
		<buildCommand>
			<name>org.eclipse.m2e.core.maven2Builder</name>
			<arguments>
			</arguments>
		</buildCommand>
	</buildSpec>
	<natures>
		<nature>com.genuitec.eclipse.springframework.springnature</nature>
		<nature>org.maven.ide.eclipse.maven2Nature</nature>
		<nature>org.eclipse.m2e.core.maven2Nature</nature>
		<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
		<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
		<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
		<nature>org.eclipse.jdt.core.javanature</nature>
		<nature>org.eclipse.wst.jsdt.core.jsNature</nature>
	</natures>
</projectDescription>


================================================
FILE: Check Maven Webapp/.settings/.jsdtscope
================================================
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
	<classpathentry kind="src" path="src/main/webapp"/>
	<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.JRE_CONTAINER"/>
	<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.WebProject">
		<attributes>
			<attribute name="hide" value="true"/>
		</attributes>
	</classpathentry>
	<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.baseBrowserLibrary/StandardBrowser/html5"/>
	<classpathentry kind="output" path=""/>
</classpath>


================================================
FILE: Check Maven Webapp/.settings/com.genuitec.eclipse.core.prefs
================================================
clsCnt=57
eclipse.preferences.version=1
locCnt=5725
pkgCnt=19
sTime=2017\u5E743\u670822\u65E5 \u661F\u671F\u4E09 \u4E0B\u534807\u65F611\u520623\u79D2 GMT+08\:00
srcCnt=3


================================================
FILE: Check Maven Webapp/.settings/org.eclipse.core.resources.prefs
================================================
eclipse.preferences.version=1
encoding//src/main/webapp/WEB-INF/pages/user/about.jsp=UTF-8
encoding//src/main/webapp/WEB-INF/pages/user/index.jsp=UTF-8
encoding//src/main/webapp/WEB-INF/pages/user/userinfo.jsp=UTF-8


================================================
FILE: Check Maven Webapp/.settings/org.eclipse.jdt.core.prefs
================================================
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
org.eclipse.jdt.core.compiler.compliance=1.5
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
org.eclipse.jdt.core.compiler.source=1.5


================================================
FILE: Check Maven Webapp/.settings/org.eclipse.ltk.core.refactoring.prefs
================================================
eclipse.preferences.version=1
org.eclipse.ltk.core.refactoring.enable.project.refactoring.history=false


================================================
FILE: Check Maven Webapp/.settings/org.eclipse.m2e.core.prefs
================================================
activeProfiles=
eclipse.preferences.version=1
resolveWorkspaceProjects=true
version=1


================================================
FILE: Check Maven Webapp/.settings/org.eclipse.wst.common.component
================================================
<?xml version="1.0" encoding="UTF-8"?><project-modules id="moduleCoreId" project-version="1.5.0">
    <wb-module deploy-name="Check Maven Webapp">
        <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/java"/>
        <wb-resource deploy-path="/" source-path="/target/m2e-jee/web-resources"/>
        <wb-resource deploy-path="/" source-path="/src/main/webapp" tag="defaultRootSource"/>
        <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/resources"/>
        <property name="context-root" value="Check"/>
        <property name="java-output-path" value="/Check Maven Webapp/target/classes"/>
    </wb-module>
</project-modules>


================================================
FILE: Check Maven Webapp/.settings/org.eclipse.wst.common.project.facet.core.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
  <fixed facet="wst.jsdt.web"/>
  <installed facet="jst.web" version="2.3"/>
  <installed facet="maven" version="1.0"/>
  <installed facet="wst.jsdt.web" version="1.0"/>
  <installed facet="java" version="1.6"/>
</faceted-project>


================================================
FILE: Check Maven Webapp/.settings/org.eclipse.wst.jsdt.ui.superType.container
================================================
org.eclipse.wst.jsdt.launching.baseBrowserLibrary

================================================
FILE: Check Maven Webapp/.settings/org.eclipse.wst.jsdt.ui.superType.name
================================================
Window

================================================
FILE: Check Maven Webapp/.settings/org.eclipse.wst.validation.prefs
================================================
disabled=06target
eclipse.preferences.version=1


================================================
FILE: Check Maven Webapp/pom.xml
================================================
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>edu.fjnu.online</groupId>
	<artifactId>Check</artifactId>
	<packaging>war</packaging>
	<version>0.0.1-SNAPSHOT</version>
	<name>Check Maven Webapp</name>
	<url>http://maven.apache.org</url>

	<properties>
		<org.springframework.version>3.2.2.RELEASE</org.springframework.version>
	</properties>

	<dependencies>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-webmvc</artifactId>
			<version>${org.springframework.version}</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-orm</artifactId>
			<version>${org.springframework.version}</version>
		</dependency>

		<dependency>
			<groupId>org.aspectj</groupId>
			<artifactId>com.springsource.org.aspectj.weaver</artifactId>
			<version>1.6.8.RELEASE</version>
		</dependency>

		<dependency>
			<groupId>org.mybatis</groupId>
			<artifactId>mybatis</artifactId>
			<version>3.2.2</version>
		</dependency>
		<dependency>
			<groupId>org.mybatis</groupId>
			<artifactId>mybatis-spring</artifactId>
			<version>1.2.0</version>
		</dependency>

		<dependency>
			<groupId>c3p0</groupId>
			<artifactId>c3p0</artifactId>
			<version>0.9.1.2</version>
		</dependency>
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<version>5.1.10</version>
		</dependency>
		<dependency>
			<groupId>log4j</groupId>
			<artifactId>log4j</artifactId>
			<version>1.2.13</version>
		</dependency>

		<dependency>
			<groupId>org.apache.poi</groupId>
			<artifactId>poi</artifactId>
			<version>3.9</version>
		</dependency>
		<dependency>
			<groupId>org.apache.poi</groupId>
			<artifactId>poi-ooxml</artifactId>
			<version>3.9</version>
		</dependency>
		<dependency>
			<groupId>jfree</groupId>
			<artifactId>jfreechart</artifactId>
			<version>1.0.13</version>
		</dependency>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.9</version>
		</dependency>

		<dependency>
			<groupId>commons-fileupload</groupId>
			<artifactId>commons-fileupload</artifactId>
			<version>1.2.2</version>
		</dependency>
		<dependency>
			<groupId>commons-io</groupId>
			<artifactId>commons-io</artifactId>
			<version>2.0.1</version>
		</dependency>

		<dependency>
			<groupId>javax.servlet.jsp.jstl</groupId>
			<artifactId>jstl-api</artifactId>
			<version>1.2</version>
		</dependency>
		<dependency>
			<groupId>org.glassfish.web</groupId>
			<artifactId>jstl-impl</artifactId>
			<version>1.2</version>
		</dependency>

		<dependency>
			<groupId>jexcelapi</groupId>
			<artifactId>jxl</artifactId>
			<version>2.4.2</version>
		</dependency>
		<dependency>
			<groupId>org.codehaus.jackson</groupId>
			<artifactId>jackson-mapper-asl</artifactId>
			<version>1.9.11</version>
		</dependency>
		<!-- mybatis分页插件依赖 -->
		<dependency>
			<groupId>com.github.pagehelper</groupId>
			<artifactId>pagehelper</artifactId>
			<version>4.0.0</version>
		</dependency>

	</dependencies>

	<build>
		<finalName>Check</finalName>
	</build>
</project>


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/common/springdao/AppContext.java
================================================
package edu.fjnu.online.common.springdao;

import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class AppContext {
	private static AppContext instance;
	public static String[] paths = {"/nu-template-dao.xml"};		//指定自己的配置文件
	private AbstractApplicationContext appContext;

	public synchronized static AppContext getInstance() {
		if (instance == null) {
			instance = new AppContext();
		}
		return instance;
	}

	private AppContext() {
		this.appContext = new ClassPathXmlApplicationContext(paths);
	}

	public AbstractApplicationContext getAppContext() {
		return appContext;
	} 

}

================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/common/springdao/SQLDAO.java
================================================
package edu.fjnu.online.common.springdao;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Map;

import javax.sql.DataSource;

import org.apache.log4j.Logger;
import org.springframework.jdbc.core.JdbcTemplate;

import edu.fjnu.online.util.UtilFuns;

/*
 * 执行sql语句类
 * 调用方法:
 * 引入配置问题 
 * SQLDAO sqlDao = (SQLDAO)AppContext.getInstance().getAppContext().getBean("sqlDao");
 * 
 */
public class SQLDAO {
	private static Logger log = Logger.getLogger(SQLDAO.class);
	private UtilFuns utilFuns = new UtilFuns();
    private JdbcTemplate jdbcTemplate;
    
	public void setDataSource(DataSource ds){
		jdbcTemplate = new JdbcTemplate(ds);
	}

	public int findInt(String sql){
		log.debug(sql);
		int i = jdbcTemplate.queryForInt(sql);
		return i;
	}
	
	public int findInt(String sql, Object[] objs){
		log.debug(sql);
		int i = jdbcTemplate.queryForInt(sql, objs);
		return i;
	}
	
	//返回单值
	public String getSingleValue(String sql){
		log.debug(sql);
		StringBuffer sBuf = new StringBuffer();
		List jlist = jdbcTemplate.queryForList(sql);
		Iterator ite = jlist.iterator();
        while(ite.hasNext()){
            Map map = (Map)ite.next();
            for(Object o:map.keySet()){
            	sBuf.append(String.valueOf(map.get(o))).append(",");
            }
        }
        if(sBuf!=null && sBuf.length()>1){
        	sBuf.delete(sBuf.length()-1, sBuf.length());	//del last char
        }
		return sBuf.toString();
	}
	
	public String getSingleValue(String sql, Object[] objs){
		log.debug(sql);
		StringBuffer sBuf = new StringBuffer();
		List jlist = null;
		if(utilFuns.arrayValid(objs)){
			jlist = jdbcTemplate.queryForList(sql, objs);
		} else {
			jlist = jdbcTemplate.queryForList(sql);
		}
		Iterator ite = jlist.iterator();
		while(ite.hasNext()){
            Map map = (Map)ite.next();
            for(Object o:map.keySet()){
            	sBuf.append(String.valueOf(map.get(o))).append(",");
            }
        }
        if(sBuf!=null && sBuf.length()>1){
        	sBuf.delete(sBuf.length()-1, sBuf.length());	//del last char
        }
		return sBuf.toString();
	}
	
	public String[] toArray(String sql){
		log.debug(sql);
		String[] strs = null;
		List aList = this.executeSQL(sql);
		if(aList.size()>0){
			int count = aList.size();
			strs = new String[ count ];
			for(int i=0; i<count; i++) {
				strs[ i ] = String.valueOf(aList.get(i));
			}
			return strs;
		}else{
			return null;
		}
	}
	
	public List executeSQL(String sql){
		log.debug(sql);
		List<String> aList = new ArrayList();
		List jlist = jdbcTemplate.queryForList(sql);
		Iterator ite = jlist.iterator();
		while(ite.hasNext()){
			Map map = (Map)ite.next();
			for(Object o:map.keySet()){
				if(map.get(o.toString())==null){
					aList.add("");		//对象不存在时,写空串
				}else{
					aList.add(map.get(o.toString()).toString());
				}
			}
		}
		return aList;
	}
	
	public List executeSQL(String sql, Object[] objs){
		log.debug(sql);
		List aList = new ArrayList();
		List jlist = null;
		if(utilFuns.arrayValid(objs)){
			jlist = jdbcTemplate.queryForList(sql, objs);
		} else {
			jlist = jdbcTemplate.queryForList(sql);
		}
		Iterator ite = jlist.iterator();
		while(ite.hasNext()){
            Map map = (Map)ite.next();
            for(Object o:map.keySet()){
            	aList.add((String)map.get(o));
            }
        }
        return aList;
	}
	
	public List executeSQLForList(String sql, Object[] objs){
		log.debug(sql);
		List aList = new ArrayList();
		List jlist = null;
		if(utilFuns.arrayValid(objs)){
			jlist = jdbcTemplate.queryForList(sql, objs);
		} else {
			jlist = jdbcTemplate.queryForList(sql);
		}
		
		Iterator ite = jlist.iterator();
		
		List list;
		
		while(ite.hasNext()){
            Map map = (Map)ite.next();
            list = new ArrayList();
            
            for(Object o:map.keySet()){
            	list.add(map.get(o));
            }
            aList.add(list.toArray());
        }
		
		return aList;
	}
	
	public int updateSQL(String sql){
		log.debug(sql);
		int i = jdbcTemplate.update(sql);
		return i;
	}
	
	public int updateSQL(String sql, Object[] objs){
		log.debug(sql);
		int i = jdbcTemplate.update(sql, objs);
		return i;
	}
	
	public int[] batchSQL(String[] sql){
		log.debug(sql);
		return jdbcTemplate.batchUpdate(sql);
	}
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/controller/BaseController.java
================================================
package edu.fjnu.online.controller;

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;

import org.springframework.beans.propertyeditors.CustomDateEditor;
import org.springframework.web.bind.WebDataBinder;
import org.springframework.web.bind.annotation.InitBinder;

/**
 * @CreateDate:	2017-3-11
 */
public abstract class BaseController {
	@InitBinder
	public void initBinder(WebDataBinder binder) {
		DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
		dateFormat.setLenient(true);
		binder.registerCustomEditor(Date.class, new CustomDateEditor(dateFormat, true));
	}
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/controller/admin/CourseController.java
================================================
package edu.fjnu.online.controller.admin;

import java.util.List;

import javax.servlet.http.HttpSession;

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.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

import com.github.pagehelper.PageInfo;

import edu.fjnu.online.domain.Course;
import edu.fjnu.online.domain.Grade;
import edu.fjnu.online.service.CourseService;

@Controller
public class CourseController {

	@Autowired
	CourseService courseService;
	
	/**
	 * 跳转到课程页面
	 * @param course
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/toCoursePage.action")
	public String toCoursePage(@RequestParam(value="page", defaultValue="1") int page,
			Course course,Model model, HttpSession session){
		//List<Course> dataList = courseService.find(course);
		PageInfo<Course> pageInfo = courseService.findByPage(course, page, 5);
		List<Course> dataList = pageInfo.getList();
		model.addAttribute("dataList", dataList);
		model.addAttribute("pageInfo", pageInfo);
		return "/admin/course-mgt.jsp";			
	}
	
	@RequestMapping("/qryCoursePage.action")
	@ResponseBody
	public List<Course> qryCoursePage(@RequestParam(value="page", defaultValue="1") int page,
			Course course,Model model, HttpSession session){
		//List<Course> dataList = courseService.find(course);
		PageInfo<Course> pageInfo = courseService.findByPage(course, page, 5);
		List<Course> dataList = pageInfo.getList();
		model.addAttribute("dataList", dataList);
		model.addAttribute("pageInfo", pageInfo);
		return dataList;			
	}
	
	/**
	 * 删除课程信息
	 * @param courseId	课程编号,删除多个是,id用逗号分隔开
	 * @param model
	 * @return
	 */
	@RequestMapping("/deleteCourse.action")
	public String deleteCourse(String courseId, Model model){
		if(courseId != null){
			String ids[] = courseId.split(",");
			for(int i=0;i<ids.length;i++){
				courseService.delete(Integer.parseInt(ids[i]));
			}
		}
		return "redirect:/toCoursePage.action";
	} 
	/**
	 * 跳转到添加课程信息页面
	 * @param course
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/toAddCourse.action")
	public String toAddType(Course course, Model model, HttpSession session){
		List<Course> dataList = courseService.find(course);
		model.addAttribute("dataList", dataList);
		return "/admin/course-reg.jsp";			
	}
	
	/**
	 * 添加课程信息
	 * @param user
	 * @param model
	 * @return
	 */
	@RequestMapping("/addCourse.action")
	public String addType(Course course, Model model){
		course.setCourseState("0");
		courseService.insert(course);
		return "redirect:/toCoursePage.action";			
	}
	
	/**
	 * 查看题型信息
	 * @param type
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/toQryCourse.action")
	public String toQryType(int courseId, Model model, HttpSession session){
		Course courseInfo = courseService.get(courseId);
		model.addAttribute("course", courseInfo);
		return "/admin/course-qry.jsp";			
	}
	
	/**
	 * 跳转到更新题型信息页面
	 * @param type
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/toUpdCourse.action")
	public String toUpdType(int courseId, Model model, HttpSession session){
		Course courseInfo = courseService.get(courseId);
		model.addAttribute("course", courseInfo);
		return "/admin/course-upd.jsp";			
	}
	
	/**
	 * 更新题型信息
	 * @param type
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/updCourse.action")
	public String updType(Course course, Model model, HttpSession session){
		courseService.update(course);
		return "redirect:/toCoursePage.action";			
	}
	
	/**
	 * 删除题型信息
	 * @param type
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/delCourse.action")
	public String delCourse(int courseId, Model model, HttpSession session){
		courseService.delete(courseId);
		return "redirect:/toCoursePage.action";			
	}
	
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/controller/admin/GradeController.java
================================================
package edu.fjnu.online.controller.admin;

import java.util.List;

import javax.servlet.http.HttpSession;

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.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

import com.github.pagehelper.PageInfo;

import edu.fjnu.online.domain.Course;
import edu.fjnu.online.domain.Grade;
import edu.fjnu.online.domain.Question;
import edu.fjnu.online.service.CourseService;
import edu.fjnu.online.service.GradeService;

@Controller
public class GradeController {

	@Autowired
	GradeService gradeService;
	@Autowired
	CourseService courseService;
	
	/**
	 * 跳转到年级页面
	 * @param course
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/toGradePage.action")
	public String toGradePage(@RequestParam(value="page", defaultValue="1") int page,
			Grade grade,Model model, HttpSession session){
//		List<Grade> dataList = gradeService.find(grade);
		PageInfo<Grade> pageInfo = gradeService.findByPage(grade, page, 5);
		List<Grade> dataList = pageInfo.getList();
		Course course=null;
		for(Grade g : dataList){
			String courseName= "";
			String id = g.getCourseId();
			if(id != null){
				String ids[] = id.split(",");
				for(int i=0;i<ids.length;i++){
					course = courseService.get(Integer.parseInt(ids[i]));
					courseName+=course.getCourseName()+",";
				}
			}
			//判断最后一个字符是否为逗号,若是截取
			String str = courseName.substring(courseName.length() -1, courseName.length());
			if(",".equals(str)){
				str = courseName.substring(0, courseName.length()-1);
			}else{
				str = courseName;
			}
			g.setCourseId(str);
		}
		model.addAttribute("dataList", dataList);
		model.addAttribute("pageInfo", pageInfo);
		return "/admin/grade-mgt.jsp";			
	}
	
	@RequestMapping("/qryAllGrade.action")
	@ResponseBody
	public List<Grade> qryAllGrade(@RequestParam(value="page", defaultValue="1") int page,
			Grade grade,Model model, HttpSession session){
//		List<Grade> dataList = gradeService.find(grade);
		PageInfo<Grade> pageInfo = gradeService.findByPage(grade, page, 5);
		List<Grade> dataList = pageInfo.getList();
		Course course=null;
		for(Grade g : dataList){
			String courseName= "";
			String id = g.getCourseId();
			if(id != null){
				String ids[] = id.split(",");
				for(int i=0;i<ids.length;i++){
					course = courseService.get(Integer.parseInt(ids[i]));
					courseName+=course.getCourseName()+",";
				}
			}
			//判断最后一个字符是否为逗号,若是截取
			String str = courseName.substring(courseName.length() -1, courseName.length());
			if(",".equals(str)){
				str = courseName.substring(0, courseName.length()-1);
			}else{
				str = courseName;
			}
			g.setCourseId(str);
		}
		model.addAttribute("dataList", dataList);
		model.addAttribute("pageInfo", pageInfo);
		return dataList;			
	}
	
	/**
	 * 删除年级信息
	 * @param gradeId	年级编号,删除多个是,id用逗号分隔开
	 * @param model
	 * @return
	 */
	@RequestMapping("/deleteGrade.action")
	public String deleteGrade(String gradeId, Model model){
		if(gradeId != null){
			String ids[] = gradeId.split(",");
			for(int i=0;i<ids.length;i++){
				gradeService.delete(Integer.parseInt(ids[i]));
			}
		}
		return "redirect:/toGradePage.action";
	} 
	/**
	 * 跳转到添加年级信息页面
	 * @param grade
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/toAddGrade.action")
	public String toAddGrade(Course course, Model model, HttpSession session){
		List<Course> dataList = courseService.find(course);
		model.addAttribute("dataList", dataList);
		return "/admin/grade-reg.jsp";			
	}
	
	/**
	 * 添加年级信息
	 * @param user
	 * @param model
	 * @return
	 */
	@RequestMapping("/addGrade.action")
	public String addType(Grade grade, Model model){
		gradeService.insert(grade);
		return "redirect:/toGradePage.action";			
	}
	
	/**
	 * 查看年级信息
	 * @param type
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/toQryGrade.action")
	public String toQryGrade(int gradeId, Model model, HttpSession session){
		Grade gradeInfo = gradeService.get(gradeId);
		model.addAttribute("grade", gradeInfo);
		model.addAttribute("course", courseService.find(new Course()));
		return "/admin/grade-upd.jsp";			
	}
	
	/**
	 * 跳转到更新年级信息页面
	 * @param type
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/toUpdGrade.action")
	public String toUpdGrade(int gradeId, Model model, HttpSession session){
		Grade gradeInfo = gradeService.get(gradeId);
		String courseName= "";
		Course course=null;
		List<Course> dataList = courseService.find(course);
		model.addAttribute("dataList", dataList);
		String id = gradeInfo.getCourseId();
		if(id != null){
			String ids[] = id.split(",");
			for(int i=0;i<ids.length;i++){
				course = courseService.get(Integer.parseInt(ids[i]));
				courseName+=course.getCourseName()+",";
			}
		}
		//判断最后一个字符是否为逗号,若是截取
		String str = courseName.substring(courseName.length() -1, courseName.length());
		if(",".equals(str)){
			str = courseName.substring(0, courseName.length()-1);
		}else{
			str = courseName;
		}
		gradeInfo.setCourseId(str);
		model.addAttribute("grade", gradeInfo);
		return "/admin/grade-upd.jsp";			
	}
	
	/**
	 * 更新年级信息
	 * @param type
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/updGrade.action")
	public String updGrade(Grade grade, Model model, HttpSession session){
		gradeService.update(grade);
		return "redirect:/toGradePage.action";			
	}
	
	/**
	 * 删除年级信息
	 * @param type
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/delGrade.action")
	public String delGrade(int gradeId, Model model, HttpSession session){
		gradeService.delete(gradeId);
		return "redirect:/toGradePage.action";			
	}
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/controller/admin/PaperController.java
================================================
package edu.fjnu.online.controller.admin;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpSession;

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.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

import com.github.pagehelper.PageInfo;

import edu.fjnu.online.domain.Course;
import edu.fjnu.online.domain.Grade;
import edu.fjnu.online.domain.Paper;
import edu.fjnu.online.domain.Question;
import edu.fjnu.online.domain.Type;
import edu.fjnu.online.service.CourseService;
import edu.fjnu.online.service.GradeService;
import edu.fjnu.online.service.PaperService;
import edu.fjnu.online.service.QuestionService;
import edu.fjnu.online.service.TypeService;

@Controller
public class PaperController {

	@Autowired
	PaperService paperService;
	@Autowired
	CourseService courseService;
	@Autowired
	TypeService typeService;
	@Autowired
	GradeService gradeService;
	@Autowired
	QuestionService questionService;
	/**
	 * 跳转到试卷管理页面
	 * @param course
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/toPaperPage.action")
	public String toPaperPage(@RequestParam(value="page", defaultValue="1") int page,
			Paper paper,Model model, HttpSession session){
		PageInfo<Paper> pageInfo = paperService.findAllPage(paper, page, 5);
		List<Paper> dataList = pageInfo.getList();
//		List<Paper> dataList = paperService.find(paper);
		Course course=null;
		for(Paper g : dataList){
			String courseName= "";
			String id = g.getCourseId();
			if(id != null){
				String ids[] = id.split(",");
				for(int i=0;i<ids.length;i++){
					course = courseService.get(Integer.parseInt(ids[i]));
					courseName+=course.getCourseName()+",";
				}
			}
			//判断最后一个字符是否为逗号,若是截取
			String str = courseName.substring(courseName.length() -1, courseName.length());
			if(",".equals(str)){
				str = courseName.substring(0, courseName.length()-1);
			}else{
				str = courseName;
			}
			g.setCourseId(str);
		}
		model.addAttribute("dataList", dataList);
		model.addAttribute("pageInfo", pageInfo);
		return "/admin/paper-mgt.jsp";			
	}
	
	
	/**
	 * 跳转到试卷管理页面
	 * @param course
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/qryAllPaper.action")
	@ResponseBody
	public List<Paper> qryAllPaper(@RequestParam(value="page", defaultValue="1") int page,
			Paper paper,Model model, HttpSession session){
		PageInfo<Paper> pageInfo = paperService.findAllPage(paper, page, 5);
		List<Paper> dataList = pageInfo.getList();
//		List<Paper> dataList = paperService.find(paper);
		Course course=null;
		for(Paper g : dataList){
			String courseName= "";
			String id = g.getCourseId();
			if(id != null){
				String ids[] = id.split(",");
				for(int i=0;i<ids.length;i++){
					course = courseService.get(Integer.parseInt(ids[i]));
					courseName+=course.getCourseName()+",";
				}
			}
			//判断最后一个字符是否为逗号,若是截取
			String str = courseName.substring(courseName.length() -1, courseName.length());
			if(",".equals(str)){
				str = courseName.substring(0, courseName.length()-1);
			}else{
				str = courseName;
			}
			g.setCourseId(str);
		}
		model.addAttribute("dataList", dataList);
		model.addAttribute("pageInfo", pageInfo);
		return dataList;			
	}
	
	/**
	 * 跳转到新增试卷页面
	 * @param paper
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/toAddPaperPage.action")
	public String toAddPaperPage(Paper paper,Model model, HttpSession session){
		model.addAttribute("course", courseService.find(new Course()));
		model.addAttribute("grade", gradeService.find(new Grade()));
		model.addAttribute("type", typeService.find(new Type()));
		return "/admin/paper-reg.jsp";
	}
	
	/**
	 * 新增试卷
	 * @param paper
	 * @param model
	 * @param session
	 * @return
	 */
	@SuppressWarnings("unchecked")
	@RequestMapping("/addPaper.action")
	public String addPaper(@RequestParam int selectNum,@RequestParam int inputNum,
			@RequestParam int descNum,Paper paper,Model model, HttpSession session){
		Map map = new HashMap();
		List<Question> selectList = null;
		List<Question> inputList = null;
		List<Question> descList = null;
		List<Question> paperList = new ArrayList<Question>();
		map.put("gradeId", paper.getGradeId());
		map.put("courseId", paper.getCourseId());
		if(selectNum>0){//选择题
			map.put("num", selectNum);
			map.put("typeId", 1);
			selectList = questionService.createPaper(map);
			paperList.addAll(selectList);
		}
		if(inputNum>0){//判断题
			map.put("num", inputNum);
			map.put("typeId", 4);
			inputList = questionService.createPaper(map);
			paperList.addAll(inputList);
		}
		if(descNum > 0 ){//描述题
			map.put("num", descNum);
			map.put("typeId", 5);
			descList = questionService.createPaper(map);
			paperList.addAll(descList);
		}
		String quesId = "";
		for(Question ques : paperList){
			quesId+=ques.getQuestionId()+",";
		}
		if(!quesId.isEmpty()){
			quesId = removeLast(quesId);
		}
		paper.setQuestionId(quesId);
		paper.setPaperstate("0");
		paperService.insert(paper);
		return "redirect:/toPaperPage.action";
	}
	
	/**
	 * 删除试卷信息
	 * @param paperId	试卷编号,删除多个是,id用逗号分隔开
	 * @param model
	 * @return
	 */
	@RequestMapping("/deletePaper.action")
	public String deletePaper(String paperId, Model model){
		if(paperId != null){
			String ids[] = paperId.split(",");
			for(int i=0;i<ids.length;i++){
				paperService.delete(ids[i]);
			}
		}
		return "redirect:/toPaperPage.action";
	} 
	
	@RequestMapping("/qryPaper.action")
	public String qryPaper(String paperId, Model model){
		Paper paper = paperService.get(paperId);
		String quesId = paper.getQuestionId();
		List<Question> quesList =new ArrayList<Question>();
		Question question = null;
		Course course = courseService.get(Integer.parseInt(paper.getCourseId()));
		paper.setCourseId(course.getCourseName());
		int selNum=0;
		int inpNum=0;
		int desNum=0;
		if(quesId != null){
			String ids[] = quesId.split(",");
			for(int i=0;i<ids.length;i++){
				question = questionService.get(Integer.parseInt(ids[i]));
				quesList.add(question);
				if("1".equals(question.getTypeId())){
					selNum+=1;
				}
				if("4".equals(question.getTypeId())){
					inpNum+=1;
				}
				if("5".equals(question.getTypeId())){
					desNum+=1;
				}
			}
		}
		paper.setScore(selNum+"");
		paper.setBeginTime(inpNum+"");
		paper.setEndTime(desNum+"");
		model.addAttribute("paper", paper);
		model.addAttribute("quesList", quesList);
		return "/admin/paper-qry.jsp";
	}
	
	
	/**
	 * 去掉最后一个逗号
	 * @param str
	 * @return
	 */
	public String removeLast(String str){
		//判断最后一个字符是否为逗号,若是截取
		String newStr = str.substring(str.length() -1, str.length());
		if(",".equals(newStr)){
			newStr = str.substring(0, str.length()-1);
		}else{
			newStr = str;
		}
		return newStr;
	}
	
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/controller/admin/QuestionController.java
================================================
package edu.fjnu.online.controller.admin;

import java.util.List;

import javax.servlet.http.HttpSession;

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.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

import com.github.pagehelper.PageInfo;

import edu.fjnu.online.controller.BaseController;
import edu.fjnu.online.domain.Course;
import edu.fjnu.online.domain.Grade;
import edu.fjnu.online.domain.Question;
import edu.fjnu.online.domain.Type;
import edu.fjnu.online.service.CourseService;
import edu.fjnu.online.service.GradeService;
import edu.fjnu.online.service.QuestionService;
import edu.fjnu.online.service.TypeService;
/**
 * 题库管理
 * @author hspcadmin
 *
 */
@Controller
public class QuestionController extends BaseController {

	@Autowired
	QuestionService questionService;
	@Autowired
	CourseService courseService;
	@Autowired
	TypeService typeService;
	@Autowired
	GradeService gradeService;
	/**
	 * 跳转到题库管理页面
	 * @param question
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/toQuestionPage.action")
	public String toQuestionPage(@RequestParam(value="page", defaultValue="1") int page,
			Question question,Model model, HttpSession session){
//		List<Question> dataList = questionService.find(question);
		PageInfo<Question> pageInfo = questionService.findByPage(question, page, 5);
		List<Question> dataList = pageInfo.getList();
		Course course=null;
		Type type=null;
		for(Question que : dataList){
			String courseName= "";
			String typeName="";
			course = courseService.get(Integer.parseInt(que.getCourseId()));
			type = typeService.get(Integer.parseInt(que.getTypeId()));
			courseName=course.getCourseName();
			typeName=type.getTypeName();
			que.setCourseId(courseName);
			que.setTypeId(typeName);
		}
		model.addAttribute("dataList", dataList);
		model.addAttribute("pageInfo", pageInfo);
		return "/admin/question-mgt.jsp";			
	}
	
	/**
	 * 跳转到题库管理页面
	 * @param question
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/quesPage.action")
	@ResponseBody
	public List<Question> quesPage(@RequestParam(value="page", defaultValue="1") int page,
			Question question,Model model, HttpSession session){
//		List<Question> dataList = questionService.find(question);
		PageInfo<Question> pageInfo = questionService.findByPage(question, page, 5);
		List<Question> dataList = pageInfo.getList();
		Course course=null;
		Type type=null;
		for(Question que : dataList){
			String courseName= "";
			String typeName="";
			course = courseService.get(Integer.parseInt(que.getCourseId()));
			type = typeService.get(Integer.parseInt(que.getTypeId()));
			courseName=course.getCourseName();
			typeName=type.getTypeName();
			que.setCourseId(courseName);
			que.setTypeId(typeName);
		}
		model.addAttribute("dataList", dataList);
		model.addAttribute("pageInfo", pageInfo);
		return dataList;			
	}
	
	/**
	 * 删除问题信息
	 * @param questionId	问题编号,删除多个是,id用逗号分隔开
	 * @param model
	 * @return
	 */
	@RequestMapping("/deleteQuestion.action")
	public String deleteQuestion(String questionId, Model model){
		if(questionId != null){
			String ids[] = questionId.split(",");
			for(int i=0;i<ids.length;i++){
				questionService.delete(Integer.parseInt(ids[i]));
			}
		}
		return "redirect:/toQuestionPage.action";
	} 
	/**
	 * 跳转到添加试题信息页面
	 * @param question
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/toAddQuestion.action")
	public String toAddQuestion(Question question, Model model, HttpSession session){
		//获取问题信息
		List<Question> dataList = questionService.find(question);
		//获取课程信息
		List<Course> courseList = courseService.find(new Course());
		//获取年级信息
		model.addAttribute("grade", gradeService.find(new Grade()));
		//获取题型信息
		model.addAttribute("type", typeService.find(new Type()));
		model.addAttribute("dataList", dataList);
		model.addAttribute("course", courseList);
		return "/admin/question-reg.jsp";			
	}
	
	/**
	 * 添加试题信息
	 * @param question
	 * @param model
	 * @return
	 */
	@RequestMapping("/addQuesInfo.action")
	public String addQuesInfo(Question question, Model model){
		questionService.insert(question);
		return "redirect:/toQuestionPage.action";			
	}
	
	/**
	 * 查看问题信息
	 * @param questionId 问题编号
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/toQryQuestion.action")
	public String toQryQuestion(int questionId, Model model, HttpSession session){
		Question questionInfo = questionService.get(questionId);
		Grade grade = gradeService.get(Integer.parseInt(questionInfo.getGradeId()));
		Course course = courseService.get(Integer.parseInt(questionInfo.getCourseId()));
		Type type = typeService.get(Integer.parseInt(questionInfo.getTypeId()));
		questionInfo.setGradeId(grade.getGradeName());
		questionInfo.setCourseId(course.getCourseName());
		questionInfo.setTypeId(type.getTypeName());
		model.addAttribute("question", questionInfo);
		return "/admin/question-qry.jsp";			
	}
	
	/**
	 * 跳转到更新题目信息页面
	 * @param type
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/toUpdQuestion.action")
	public String toUpdQuestion(int questionId, Model model, HttpSession session){
		Question questionInfo = questionService.get(questionId);
		model.addAttribute("question", questionInfo);
		List<Grade>gradeList = gradeService.find(new Grade());
		List<Course>courseList = courseService.find(new Course());
		List<Type> typeList = typeService.find(new Type());
		model.addAttribute("gradeList", gradeList);
		model.addAttribute("courseList", courseList);
		model.addAttribute("typeList", typeList);
		return "/admin/question-upd.jsp";			
	}
	
	/**
	 * 更新题目信息
	 * @param type
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/updQuestion.action")
	public String updQuestion(Question question, Model model, HttpSession session){
		questionService.update(question);
		return "redirect:/toQuestionPage.action";			
	}
	
	/**
	 * 删除问题信息
	 * @param type
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/delQuestion.action")
	public String delQuestion(int questionId, Model model, HttpSession session){
		questionService.delete(questionId);
		return "redirect:/todelQuestionPage.action";			
	}
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/controller/admin/TypeController.java
================================================
package edu.fjnu.online.controller.admin;

import java.util.List;

import javax.servlet.http.HttpSession;

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.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

import com.github.pagehelper.PageInfo;

import edu.fjnu.online.domain.Course;
import edu.fjnu.online.domain.Type;
import edu.fjnu.online.domain.User;
import edu.fjnu.online.service.TypeService;
/**
 * 试题类型管理
 * @author hspcadmin
 *
 */
@Controller
public class TypeController {
	
	@Autowired
	TypeService typeService;
	
	@RequestMapping("/toTypePage.action")
	public String toTypePage(@RequestParam(value="page", defaultValue="1") int page,
			Type type,Model model, HttpSession session){
//		List<Type> dataList = typeService.find(type);
		PageInfo<Type> pageInfo = typeService.findByPage(type, page, 5);
		List<Type> dataList = pageInfo.getList();
		model.addAttribute("dataList", dataList);
		model.addAttribute("pageInfo", pageInfo);
		return "/admin/type-mgt.jsp";			
	}
	
	@RequestMapping("/qryTypePage.action")
	@ResponseBody
	public List<Type> qryTypePage(@RequestParam(value="page", defaultValue="1") int page,
			Type type,Model model, HttpSession session){
//		List<Type> dataList = typeService.find(type);
		PageInfo<Type> pageInfo = typeService.findByPage(type, page, 5);
		List<Type> dataList = pageInfo.getList();
		model.addAttribute("dataList", dataList);
		model.addAttribute("pageInfo", pageInfo);
		return dataList;			
	}
	
	/**
	 * 删除题型信息
	 * @param typeId	题型编号,删除多个是,id用逗号分隔开
	 * @param model
	 * @return
	 */
	@RequestMapping("/deleteType.action")
	public String deleteUser(String typeId, Model model){
		if(typeId != null){
			String ids[] = typeId.split(",");
			for(int i=0;i<ids.length;i++){
				typeService.delete(Integer.parseInt(ids[i]));
			}
		}
		return "redirect:/toTypePage.action";
	} 
	/**
	 * 跳转到添加用户信息页面
	 * @param user
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/toAddType.action")
	public String toAddType(Type type, Model model, HttpSession session){
		List<Type> dataList = typeService.find(type);
		model.addAttribute("dataList", dataList);
		return "/admin/type-reg.jsp";			
	}
	
	/**
	 * 添加题型信息
	 * @param user
	 * @param model
	 * @return
	 */
	@RequestMapping("/addType.action")
	public String addType(Type type, Model model){
		typeService.insert(type);
		return "redirect:/toTypePage.action";			
	}
	
	/**
	 * 查看题型信息
	 * @param type
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/toQryType.action")
	public String toQryType(int typeId, Model model, HttpSession session){
		Type typeInfo = typeService.get(typeId);
		model.addAttribute("type", typeInfo);
		return "/admin/type-qry.jsp";			
	}
	
	/**
	 * 跳转到更新题型信息页面
	 * @param type
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/toUpdType.action")
	public String toUpdType(int typeId, Model model, HttpSession session){
		Type typeInfo = typeService.get(typeId);
		model.addAttribute("type", typeInfo);
		return "/admin/type-upd.jsp";			
	}
	
	/**
	 * 更新题型信息
	 * @param type
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/updType.action")
	public String updType(Type type, Model model, HttpSession session){
		typeService.update(type);
		return "redirect:/toTypePage.action";			
	}
	
	/**
	 * 删除题型信息
	 * @param type
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/delType.action")
	public String delType(int typeId, Model model, HttpSession session){
		typeService.delete(typeId);
		return "redirect:/toTypePage.action";			
	}
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/controller/admin/UserController.java
================================================
package edu.fjnu.online.controller.admin;

import java.lang.reflect.Method;
import java.util.List;

import javax.servlet.http.HttpSession;

import org.apache.poi.hssf.record.UserSViewEnd;
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.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

import com.github.pagehelper.PageInfo;

import edu.fjnu.online.controller.BaseController;
import edu.fjnu.online.domain.Grade;
import edu.fjnu.online.domain.MsgItem;
import edu.fjnu.online.domain.Question;
import edu.fjnu.online.domain.User;
import edu.fjnu.online.service.GradeService;
import edu.fjnu.online.service.UserService;
/**
 * 用户管理
 * @author hspcadmin
 *
 */
@Controller
public class UserController extends BaseController{

	@Autowired
	UserService userService;
	@Autowired
	GradeService gradeService;
	//跳转到登录页面
	@RequestMapping("/admin/login.action")
	public String toLoin(User user, Model model, HttpSession session){
		if(session.getAttribute("userName")!= null){
			return "/admin/index.jsp";
		}
		List<User> dataList = userService.find(user);
		model.addAttribute("dataList", dataList);
		return "/admin/login.jsp";			
	}
	
	@RequestMapping("/admin/userLogin.action")
	public String checkUser(User user, Model model, HttpSession session){
		User loginUser = userService.login(user);
		
		if(session.getAttribute("userName")!= null){
			return "/admin/index.jsp";
		}
		
		if(loginUser!=null && loginUser.getUserType() == 2){
			session.setAttribute("userName", loginUser.getUserName());
			return "/admin/index.jsp";
		}else{
			model.addAttribute("message", "用户名或密码输入错误!!!");
			return "/admin/login.jsp";
		}
	}
	
	/**
	 * 判断账户信息是否存在
	 * @param name
	 * @param model
	 * @return
	 */
	@RequestMapping("/admin/checkAccount.action")
	public String checkAccount(String userId, Model model){
		User userInfo = userService.get(userId);
		if(userInfo!= null){
			model.addAttribute("message", "该账号已经存在");
		}else{
			model.addAttribute("message", "<font color='green'>验证通过</font>");
		}
		model.addAttribute("userId", userId);
		return "/admin/info-reg.jsp";
	}
	
	/**
	 * ajax验证用户账号是否存在
	 * @param userId
	 * @param model
	 * @return
	 */
	@RequestMapping("/admin/userRegist.action")
	@ResponseBody
	public MsgItem userRegist(String userId, Model model, HttpSession session){
		MsgItem msgItem = new MsgItem();
		User user = userService.get(userId);
		if(user!=null){
			msgItem.setErrorNo("1");
			msgItem.setErrorInfo("账号已经存在");
		}else{
			msgItem.setErrorNo("0");
			msgItem.setErrorInfo("<font color='green'>验证通过</font>");
		}
		return msgItem;
	} 
	
	//跳转到登录页面
	@RequestMapping("/admin/exitSys.action")
	public String exitSys(User user, Model model, HttpSession session){
		if(session.getAttribute("userName")!= null){
			session.removeAttribute("userName");
			return "forward:/admin/login.action";
		}
		return "/admin/login.jsp";			
	}
	
	//跳转到题库录入页面
	@RequestMapping(value="/admin/toQueDep.action",method=RequestMethod.POST)
	public String toQueDep(Model model, HttpSession session){
		return "/admin/info-reg.jsp";			
	}
	
	//获取所有的用户信息
	@RequestMapping("/admin/getAllUser.action")
	public String getAllUserInfo(@RequestParam(value="page", defaultValue="1") int page,
			User user, Model model, HttpSession session){
//		List<User> dataList = userService.find(user);
		PageInfo<User> pageInfo = userService.findByPage(user, page, 5);
		List<User> dataList = pageInfo.getList();
		model.addAttribute("dataList", dataList);
		model.addAttribute("pageInfo", pageInfo);
		return "/admin/info-mgt.jsp";			
	}
	
	//获取所有的用户信息
	@RequestMapping("/admin/qryAllUser.action")
	@ResponseBody
	public List<User> qryAllUser(@RequestParam(value="page", defaultValue="1") int page,
			User user, Model model, HttpSession session){
//			List<User> dataList = userService.find(user);
		PageInfo<User> pageInfo = userService.findByPage(user, page, 5);
		List<User> dataList = pageInfo.getList();
		model.addAttribute("dataList", dataList);
		model.addAttribute("pageInfo", pageInfo);
		return dataList;			
	}
	
	/**
	 * 跳转到添加用户信息页面
	 * @param user
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/admin/toAddUser.action")
	public String toAddUserInfo(User user, Model model, HttpSession session){
		List<User> dataList = userService.find(user);
		model.addAttribute("grade", gradeService.find(new Grade()));
		model.addAttribute("dataList", dataList);
		return "/admin/info-reg.jsp";			
	}
	
	/**
	 * 添加用户信息
	 * @param user
	 * @param model
	 * @return
	 */
	@RequestMapping("/admin/addUser.action")
	public String addUser(User user, Model model){
		userService.insert(user);
		return "redirect:/admin/getAllUser.action";			
	}
	
	/**
	 * 删除用户信息
	 * @param userId	用户账号,删除多个是,id用逗号分隔开
	 * @param model
	 * @return
	 */
	@RequestMapping("/admin/deleteUser.action")
	public String deleteUser(String userId, Model model){
		if(userId != null){
			String ids[] = userId.split(",");
			for(int i=0;i<ids.length;i++){
				userService.delete(ids[i]);
			}
		}
		return "redirect:/admin/getAllUser.action";
	} 
	
	/**
	 * 获取所有待审核信息
	 * @param user
	 * @param model
	 * @return
	 */
	@RequestMapping("/admin/getFindPending.action")
	public String findPending(@RequestParam(value="page", defaultValue="1") int page,User user, Model model){
		PageInfo<User> pageInfo = userService.findPendingByPage(user, page, 5);
		List<User> dataList = pageInfo.getList();
		model.addAttribute("dataList", dataList);
		model.addAttribute("pageInfo", pageInfo);
		return "/admin/info-deal.jsp";
	}
	
	//获取所有的用户信息
	@RequestMapping("/admin/qryFindPending.action")
	@ResponseBody
	public List<User> qryFindPending(@RequestParam(value="page", defaultValue="1") int page,
			User user, Model model, HttpSession session){
//				List<User> dataList = userService.find(user);
		PageInfo<User> pageInfo = userService.findPendingByPage(user, page, 5);
		List<User> dataList = pageInfo.getList();
		model.addAttribute("dataList", dataList);
		model.addAttribute("pageInfo", pageInfo);
		return dataList;			
	}
	
	/**
	 * 用户身份信息审核(通过)
	 * @param user
	 * @param model
	 * @return
	 */
	@RequestMapping("/admin/passinfo.action")
	public String passUserInfo(User user, Model model){
		User us = new User();
		if(user != null){
			String ids[] = user.getUserId().split(",");
			for(int i=0;i<ids.length;i++){
				us.setUserId(ids[i]);
				us.setUserState(1);
				userService.update(us);
			}
		}
		return "redirect:/admin/getFindPending.action";
	}
	
	/**
	 * 用户身份信息审核(不通过)
	 * @param user
	 * @param model
	 * @return
	 */
	@RequestMapping("/admin/failinfo.action")
	public String failUserInfo(User user, Model model){
		User us = new User();
		if(user != null){
			String ids[] = user.getUserId().split(",");
			for(int i=0;i<ids.length;i++){
				us.setUserId(ids[i]);
				us.setUserState(2);
				userService.update(us);
			}
		}
		return "redirect:/admin/getFindPending.action";
	}
	
	/**
	 * 跳转到添加用户信息页面
	 * @param user
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/admin/toUpdateUser.action")
	public String toUpdateUser(User user, Model model, HttpSession session){
		String userId = user.getUserId().trim();
		User userInfo = userService.get(userId);
		model.addAttribute("user", userInfo);
		return "/admin/info-upd.jsp";			
	}
	
	/**
	 * 用户个人信息查询(信息审核)
	 * @param user
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/admin/toQryUser.action")
	public String toQryUser(User user, Model model, HttpSession session){
		String userId = user.getUserId().trim();
		User userInfo = userService.get(userId);
		model.addAttribute("user", userInfo);
		model.addAttribute("grade", gradeService.find(new Grade()));
		return "/admin/info-det.jsp";			
	}
	
	/**
	 * 用户个人信息查询(信息审核)
	 * @param user
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/admin/toQryUserInfo.action")
	public String toQryUserInfo(User user, Model model, HttpSession session){
		String userId = user.getUserId().trim();
		User userInfo = userService.get(userId);
		model.addAttribute("user", userInfo);
		model.addAttribute("grade", gradeService.find(new Grade()));
		return "/admin/info-qry.jsp";			
	}
	
	/**
	 * 用户个人信息查询(信息管理)
	 * @param user
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/admin/toQryMgUser.action")
	public String toQryMgUser(User user, Model model, HttpSession session){
		String userId = user.getUserId().trim();
		User userInfo = userService.get(userId);
		model.addAttribute("user", userInfo);
		model.addAttribute("grade", gradeService.find(new Grade()));
		return "/admin/info-qry.jsp";			
	}
	
	@RequestMapping("/admin/updateUser.action")
	public String updateUser(User user, Model model){
		userService.update(user);
		return "redirect:/admin/getAllUser.action";			
	}
	
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/controller/user/ErrorBookController.java
================================================
package edu.fjnu.online.controller.user;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpSession;

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 edu.fjnu.online.domain.Course;
import edu.fjnu.online.domain.ErrorBook;
import edu.fjnu.online.domain.Grade;
import edu.fjnu.online.domain.Type;
import edu.fjnu.online.domain.User;
import edu.fjnu.online.service.CourseService;
import edu.fjnu.online.service.ErrorBookService;
import edu.fjnu.online.service.GradeService;
import edu.fjnu.online.service.TypeService;
import edu.fjnu.online.service.UserService;

@Controller
public class ErrorBookController {
	@Autowired
	ErrorBookService bookService;
	@Autowired
	GradeService gradeService;
	@Autowired
	CourseService courseService;
	@Autowired
	TypeService typeService;
	@Autowired
	UserService userService;
	//跳转到我的错题本页面
	@RequestMapping("/toMyBooksPage.action")
	public String toMyBooksPage(User user, Model model, HttpSession session){
		if(session.getAttribute("user")== null){
			session.setAttribute("user", userService.get(user.getUserId()));
		}
		List<ErrorBook> errorBookList = bookService.find(new ErrorBook());
		List<Grade> gradeList = gradeService.find(new Grade());
		List<Course> courseList = courseService.find(new Course());
		List<Type> typeList = typeService.find(new Type());
		Map map = new HashMap();
		map.put("userId", user.getUserId());
		List<ErrorBook> bookList = bookService.getBookInfo(map);
		model.addAttribute("grade", gradeList);
		model.addAttribute("course", courseList);
		model.addAttribute("type", typeList);
		model.addAttribute("errorBook", bookList);
		return "/user/mybooks.jsp";			
	}
	
	//跳转到前台登录页面
	@RequestMapping("/getBooks.action")
	public String getBooks(User user, Model model, HttpSession session){
		List<Grade> gradeList = gradeService.find(new Grade());
		List<Course> courseList = courseService.find(new Course());
		List<Type> typeList = typeService.find(new Type());
		List<ErrorBook> errorBookList = bookService.getBookInfo(new HashMap());
		model.addAttribute("grade", gradeList);
		model.addAttribute("course", courseList);
		model.addAttribute("type", typeList);
		return "/user/mybooks.jsp";			
	}
	
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/controller/user/PaperMgController.java
================================================
package edu.fjnu.online.controller.user;

import java.io.UnsupportedEncodingException;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.net.URLDecoder;
import java.net.URLEncoder;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpSession;

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.ResponseBody;

import edu.fjnu.online.domain.Course;
import edu.fjnu.online.domain.ErrorBook;
import edu.fjnu.online.domain.MsgItem;
import edu.fjnu.online.domain.Paper;
import edu.fjnu.online.domain.Question;
import edu.fjnu.online.domain.User;
import edu.fjnu.online.service.CourseService;
import edu.fjnu.online.service.ErrorBookService;
import edu.fjnu.online.service.GradeService;
import edu.fjnu.online.service.PaperService;
import edu.fjnu.online.service.QuestionService;
import edu.fjnu.online.service.UserService;
import edu.fjnu.online.util.Computeclass;
/**
 * 试卷综合管理
 * @author hspcadmin
 *
 */
@Controller
public class PaperMgController {

	@Autowired
	UserService userService;
	@Autowired
	GradeService gradeService;
	@Autowired
	PaperService paperService;
	@Autowired
	CourseService courseService;
	@Autowired
	QuestionService questionService;
	@Autowired
	ErrorBookService bookService;
	
	//跳转到成绩查询页面
	@RequestMapping("/toScoreQry.action")
	public String toScoreQry(User user, Model model, HttpSession session){
		if("".equals(user.getUserId()) || user==null){
			user = (User) session.getAttribute("user");
		}
		if(session.getAttribute("user")== null){
			session.setAttribute("user", userService.get(user.getUserId()));
		}
		user = userService.getStu(user);
		List<Paper> paper = paperService.getUserPaperById(user.getUserId());
		Course course = null;
		for(Paper p : paper){
			course = courseService.get(Integer.parseInt(p.getCourseId()));
			p.setCourseId(course.getCourseName());
		}
		model.addAttribute("user", user);
		model.addAttribute("paper", paper);
		return "/user/scorequery.jsp";			
	}
	
	/**
	 * 查看试卷详情
	 * @param paperId
	 * @param userId
	 * @param model
	 * @param session
	 * @return
	 */
	@SuppressWarnings({ "rawtypes", "unchecked" })
	@RequestMapping("/qrypaper.action")
	public String qrypaper(String paperId,String userId,Model model, HttpSession session){
		Map map = new HashMap();
		map.put("paperId", paperId);
		map.put("userId", userId);
		Paper paper = paperService.getPaperDetail(map);
		Question question = null;
		String []ids = paper.getQuestionId().split(",");
		List<Question> selList = new ArrayList<Question>();
		List<Question> inpList = new ArrayList<Question>();
		List<Question> desList = new ArrayList<Question>();
		for(int i = 0;i<ids.length;i++){
			question = questionService.get(Integer.parseInt(ids[i]));
			if("1".equals(question.getTypeId())){//单选
				selList.add(question);
			}
			if("4".equals(question.getTypeId())){//填空
				inpList.add(question);
			}
			if("5".equals(question.getTypeId())){//简答题
				desList.add(question);
			}
		}
		
		if(selList.size()>0){
			model.addAttribute("selectQ", "单项选择题(每题5分)");
			model.addAttribute("selList", selList);
		}
		
		if(inpList.size()>0){
			model.addAttribute("inpQ", "填空题(每题5分)");
			model.addAttribute("inpList", inpList);
		}
		
		if(desList.size()>0){
			model.addAttribute("desQ", "简答题(每题5分)");
			model.addAttribute("desList", desList);
		}
		
		model.addAttribute("paper", paper);
		return "/user/qrypaper.jsp";			
	}
	
	/**
	 * 自动评分
	 * @param paper
	 * @param model
	 * @param session
	 * @return
	 * @throws UnsupportedEncodingException
	 */
	@SuppressWarnings("unchecked")
	@RequestMapping("/dealPaper.action")
	@ResponseBody
	public MsgItem dealPaper(Paper paper, Model model, HttpSession session) throws UnsupportedEncodingException{
		String paperId = paper.getPaperId();
		//答案临时存放
		String ans = paper.getScore();
		ans = URLDecoder.decode(ans,"UTF-8");
		String [] answer = null;
		if(ans.contains("&")){
			answer = ans.split("&");
		}
		Map map = new HashMap();
		User user = (User) session.getAttribute("user");
		map.put("paperId", paperId);
		map.put("userId", user.getUserId());
		Paper paperInfo = paperService.getPaperDetail(map);
		String []ids = paperInfo.getQuestionId().split(",");
		List<Question> question = new ArrayList<Question>();
		Question ques = null;
		int endScore = 0;
		ErrorBook book = new ErrorBook();
		book.setUserId(user.getUserId());
		for(int i = 1 ;i<answer.length;i++){
			String[] str = answer[i].split("=");
			//题号
			String str1 = str[0];
			ques = questionService.get(Integer.parseInt(str1));
			//数据库对应的答案
			String answer1 = ques.getAnswer();
			if(str.length>1){
				//学生的答案
				String str2 = str[1];
				if(!"5".equals(ques.getTypeId())){//判断是否为简答题
					if(str2.equals(answer1)){//如果用户答案和数据库中的答案一致
						endScore+=5;
					}else{//插入错题本
						book.setQuestion(ques);
						book.setCourseId(ques.getCourseId());
						book.setGradeId(ques.getGradeId());
						book.setUserAnswer(str2);
						bookService.insert(book);
					}
				}
				if("5".equals(ques.getTypeId())){//为简答题的时候
					String strA = answer1;
					String strB = URLDecoder.decode(str2, "UTF-8");//转码
					//计算相似
					double d = Computeclass.SimilarDegree(strA, strB);
					BigDecimal bg = new BigDecimal(d*5).setScale(1, RoundingMode.DOWN);
			        d = bg.doubleValue();
			        endScore+=d;
			        if(d<=2){//如果小于2分,认定错误
			        	book.setQuestion(ques);
						book.setCourseId(ques.getCourseId());
						book.setGradeId(ques.getGradeId());
						book.setUserAnswer(str2);
						bookService.insert(book);
			        }
				}
			}
		}
		System.out.println("最后得分:"+endScore);
		SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  
		Date currentTime = new Date();//得到当前系统时间  
		String endTime = formatter.format(currentTime); //将日期时间格式化  
		map.put("beginTime", paper.getBeginTime());
		map.put("endTime", endTime);
		map.put("score", endScore);
		//将考试的试卷状态改为2
		map.put("paperState", "2");
		paperService.updateUserPaper(map);
		if(session.getAttribute("user")== null){
			session.setAttribute("user", user);
		}
		MsgItem msgItem = new MsgItem();
		msgItem.setErrorNo("1");
		msgItem.setErrorInfo("试卷提交成功,本次考试得分:"+endScore +"分");
		return msgItem;		
	}
	
	/**
	 * 考试页面
	 * @param paperId
	 * @param userId
	 * @param model
	 * @param session
	 * @return
	 */
	@SuppressWarnings({ "rawtypes", "unchecked" })
	@RequestMapping("/qryPaperDetail.action")
	public String qryPaperDetail(String paperId,String userId,Model model, HttpSession session){
		Map map = new HashMap();
		map.put("paperId", paperId);
		map.put("userId", userId);
		Paper paper = paperService.getPaperDetail(map);
		Question question = null;
		String []ids = paper.getQuestionId().split(",");
		List<Question> selList = new ArrayList<Question>();
		List<Question> inpList = new ArrayList<Question>();
		List<Question> desList = new ArrayList<Question>();
		for(int i = 0;i<ids.length;i++){
			question = questionService.get(Integer.parseInt(ids[i]));
			if("1".equals(question.getTypeId())){//单选
				selList.add(question);
			}
			if("4".equals(question.getTypeId())){//填空
				inpList.add(question);
			}
			if("5".equals(question.getTypeId())){//简答题
				desList.add(question);
			}
		}
		
		if(selList.size()>0){
			model.addAttribute("selectQ", "单项选择题(每题5分)");
			model.addAttribute("selList", selList);
		}
		
		if(inpList.size()>0){
			model.addAttribute("inpQ", "填空题(每题5分)");
			model.addAttribute("inpList", inpList);
		}
		
		if(desList.size()>0){
			model.addAttribute("desQ", "简答题(每题5分)");
			model.addAttribute("desList", desList);
		}
		
		model.addAttribute("paper", paper);
		return "/user/paperdetail.jsp";			
	}
	
	/**
	 * 获取未考试试卷,并将为考试的试卷添加用户信息
	 * @param user
	 * @param model
	 * @param session
	 * @return
	 */
	@SuppressWarnings({ "unchecked", "rawtypes" })
	@RequestMapping("/toMyPaperPage.action")
	public String toMyPaperPage(User user,Model model, HttpSession session){
		if("".equals(user.getUserId()) || user.getUserId()==null){
			user = (User) session.getAttribute("user");
		}
		if(session.getAttribute("user")== null){
			session.setAttribute("user", userService.get(user.getUserId()));
		}
		user = userService.getStu(user);
		Map map =new HashMap();
		map.put("userId", user.getUserId());
		//List<Paper> paper = paperService.getUserPaperById(user.getUserId());
		List<Paper> paper1 = paperService.getUndoPaper(map);
		Course course = null;
		for(Paper p : paper1){
			course = courseService.get(Integer.parseInt(p.getCourseId()));
			p.setUserId(user.getUserId());
			p.setPaperstate("1");
			paperService.insert(p);
			p.setCourseId(course.getCourseName());
		}
		List<Paper> paper = paperService.qryUndoPaper(map);
		for(Paper p : paper){
			course = courseService.get(Integer.parseInt(p.getCourseId()));
			p.setCourseId(course.getCourseName());
		}
		model.addAttribute("user", user);
		model.addAttribute("paper", paper);
		return "/user/mypaper.jsp";
	}
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/controller/user/StuController.java
================================================
package edu.fjnu.online.controller.user;

import java.util.List;

import javax.servlet.http.HttpSession;

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.ResponseBody;

import edu.fjnu.online.domain.Grade;
import edu.fjnu.online.domain.MsgItem;
import edu.fjnu.online.domain.User;
import edu.fjnu.online.service.GradeService;
import edu.fjnu.online.service.UserService;
import edu.fjnu.online.util.MD5Util;

@Controller
public class StuController {
	@Autowired
	UserService userService;
	@Autowired
	GradeService gradeService;
	//跳转到前台登录页面
	@RequestMapping("/toLogin.action")
	public String toUserLogin(User user, Model model, HttpSession session){
		if(session.getAttribute("userName")!= null){
			return "/user/index.jsp";
		}
		if(session.getAttribute("user")== null){
			session.setAttribute("user", userService.get(user.getUserId()));
		}
		List<User> dataList = userService.find(user);
		model.addAttribute("dataList", dataList);
		return "/user/login.jsp";			
	}
		
	/**
	 * 前台用户登录
	 * @param user
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/user/toIndex.action")
	public String toIndex(User user, Model model, HttpSession session){
		if(session.getAttribute("userName")!= null){
			return "/user/index.jsp";
		}else{
			return "forward:/toLogin.action";
		}
	}
	
	/**
	 * 用户账号密码检查
	 * @param user
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/checkPwd.action")
	@ResponseBody
	public MsgItem checkPwd(User user, Model model, HttpSession session){
		MsgItem item = new MsgItem();
		User loginUser = userService.login(user);
		if(loginUser!=null && loginUser.getUserType() ==0){
			if(loginUser.getUserState()==0 ){
				item.setErrorNo("1");
				item.setErrorInfo("该账号尚未通过审核!");
			}else{
				item.setErrorNo("0");
				item.setErrorInfo("登录成功!");
				session.setAttribute("userName", loginUser.getUserName());
				session.setAttribute("user", loginUser);
			}
		}else{
			item.setErrorNo("1");
			item.setErrorInfo("账号不存在或用户名密码错误!");
		}
		return item;
	}
	
	@RequestMapping("/toRegistPage.action")
	public String toRegistPage(Model model, HttpSession session){
		List<Grade> list = gradeService.find(new Grade());
		model.addAttribute("grade", list);
		return "/user/regist.jsp";
	}
	
	/**
	 * 添加用户信息
	 * @param user
	 * @param model
	 * @return
	 */
	@RequestMapping("/addUserInfo.action")
	public String addUserInfo(User user, Model model, HttpSession session){
		userService.insert(user);
		return "redirect:/toLogin.action";			
	}
	
	//跳转到前台登录页面
	@RequestMapping("/toUserInfo.action")
	public String toUserInfo(User user, Model model, HttpSession session){
		User loginUser = (User) session.getAttribute("user");
		user = userService.getStu(loginUser);
		Grade grade = gradeService.get(Integer.parseInt(user.getGrade()));
		user.setGrade(grade.getGradeName());
		model.addAttribute("user", user);
		return "/user/userinfo.jsp";			
	}
	
	/**
	 * 更新学生信息
	 * @param user
	 * @param model
	 * @param session
	 * @return
	 */
	@RequestMapping("/updateUserInfo.action")
	public String updateUserInfo(String newPwd,User user, Model model, HttpSession session){
		if(newPwd!= null && newPwd.trim().length()>0){
			user.setUserPwd(newPwd);
		}
		userService.update(user);
		user = userService.get(user.getUserId());
		if(session.getAttribute("user")== null){
			session.setAttribute("user", userService.getStu(user));
		}
		return "redirect:/user/toIndex.action";			
	}
	
	//跳转到登录页面
	@RequestMapping("/user/exitSys.action")
	public String exitSystem(User user, Model model, HttpSession session){
		if(session.getAttribute("userName")!= null){
			session.removeAttribute("userName");
			return "/user/login.jsp";
		}
		return "/user/login.jsp";			
	}
	
	//跳转到前台登录页面
	@RequestMapping("/toAbout.action")
	public String toAbout(User user, Model model, HttpSession session){
		User loginUser = (User) session.getAttribute("user");
		model.addAttribute("user", loginUser);
		return "/user/about.jsp";			
	}
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/BaseDao.java
================================================
package edu.fjnu.online.dao;

import java.io.Serializable;
import java.util.List;

/**
 * @Description: 泛型类,基础的DAO接口
 * @CreateDate:	2017-3-11
 */
public interface BaseDao<T> {
	public List<T> find(T entity);
	public T get(Serializable id);
	public void insert(T entity);
	public void update(T entity);
	public void delete(Serializable id);
	public void delete(Serializable[] ids);
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/CourseDao.java
================================================
package edu.fjnu.online.dao;

import edu.fjnu.online.domain.Course;

public interface CourseDao extends BaseDao<Course>{

}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/ErrorBookDao.java
================================================
package edu.fjnu.online.dao;

import java.util.List;
import java.util.Map;

import edu.fjnu.online.domain.ErrorBook;
import edu.fjnu.online.domain.Question;

public interface ErrorBookDao extends BaseDao<ErrorBook>{
	public List<ErrorBook> getBookInfo(Map map);
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/GradeDao.java
================================================
package edu.fjnu.online.dao;

import edu.fjnu.online.domain.Grade;


public interface GradeDao extends BaseDao<Grade>{

}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/PaperDao.java
================================================
package edu.fjnu.online.dao;

import java.io.Serializable;
import java.util.List;
import java.util.Map;

import edu.fjnu.online.domain.Paper;

public interface PaperDao extends BaseDao<Paper> {
	/**
	 * 通过学生编号获取所有的试卷
	 * @param id
	 * @return
	 */
	public List<Paper> getUserPaperById(Serializable id);
	/**查看试卷详情*/
	public Paper getPaperDetail(Map map);
	
	/**更新用户试卷信息*/
	public void updateUserPaper(Map map);
	/**查询未考试的试卷*/
	public List<Paper> getUndoPaper(Map map);
	/**查询学生未考试的试卷*/
	public List<Paper> qryUndoPaper(Map map);
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/QuestionDao.java
================================================
package edu.fjnu.online.dao;

import java.util.List;
import java.util.Map;

import edu.fjnu.online.domain.Question;

public interface QuestionDao extends BaseDao<Question>{

	public List<Question> createPaper(Map map);
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/TypeDao.java
================================================
package edu.fjnu.online.dao;

import edu.fjnu.online.domain.Type;

public interface TypeDao extends BaseDao<Type> {

}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/UserDao.java
================================================
package edu.fjnu.online.dao;

import java.util.List;

import edu.fjnu.online.domain.User;


public interface UserDao extends BaseDao<User>{

	public List<User> findPending(User user);
	public User getStu(User user);
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/impl/BaseDaoImpl.java
================================================
package edu.fjnu.online.dao.impl;

import java.io.Serializable;
import java.util.List;

import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.support.SqlSessionDaoSupport;
import org.springframework.beans.factory.annotation.Autowired;

import edu.fjnu.online.dao.BaseDao;

public abstract class BaseDaoImpl<T> extends SqlSessionDaoSupport implements BaseDao<T>{
	@Autowired
	//mybatis-spring 1.0无需此方法;mybatis-spring1.2必须注入。
	public void setSqlSessionFactory(SqlSessionFactory sqlSessionFactory){
		super.setSqlSessionFactory(sqlSessionFactory);
	}
	
	private String ns;		//命名空间
	public String getNs() {
		return ns;
	}
	public void setNs(String ns) {
		this.ns = ns;
	}

	public List<T> find(T entiy) {
		List<T> oList = this.getSqlSession().selectList(ns + "find", entiy);
		return oList;
	}
	public T get(Serializable id) {
		return this.getSqlSession().selectOne(ns + "get", id);
	}

	public void insert(T entity) {
		this.getSqlSession().insert(ns + "insert", entity);
	}

	public void update(T entity) {
		this.getSqlSession().update(ns + "update", entity);
	}

	public void delete(Serializable id) {
		this.getSqlSession().delete(ns + "delete", id);
	}

	public void delete(Serializable[] ids) {
		this.getSqlSession().delete(ns + "deleteBatch", ids);
	}
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/impl/CourseDaoImpl.java
================================================
package edu.fjnu.online.dao.impl;

import java.io.Serializable;

import org.springframework.stereotype.Repository;

import edu.fjnu.online.dao.CourseDao;
import edu.fjnu.online.domain.Course;
@Repository
public class CourseDaoImpl extends BaseDaoImpl<Course> implements CourseDao {
	public CourseDaoImpl() {
		this.setNs("edu.fjnu.online.mapper.CourseMapper.");
	}
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/impl/ErrorBookDaoImpl.java
================================================
package edu.fjnu.online.dao.impl;

import java.util.List;
import java.util.Map;

import org.springframework.stereotype.Repository;

import edu.fjnu.online.dao.ErrorBookDao;
import edu.fjnu.online.domain.ErrorBook;
@Repository
public class ErrorBookDaoImpl extends BaseDaoImpl<ErrorBook> implements ErrorBookDao {

	public ErrorBookDaoImpl() {
		this.setNs("edu.fjnu.online.mapper.ErrorBookMapper.");
	}

	public List<ErrorBook> getBookInfo(Map map) {
		return this.getSqlSession().selectList(this.getNs()+"getBookInfo", map);
	}
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/impl/GradeDaoImpl.java
================================================
package edu.fjnu.online.dao.impl;

import java.io.Serializable;

import org.springframework.stereotype.Repository;

import edu.fjnu.online.dao.GradeDao;
import edu.fjnu.online.domain.Grade;
@Repository
public class GradeDaoImpl extends BaseDaoImpl<Grade> implements GradeDao{

	public GradeDaoImpl() {
		this.setNs("edu.fjnu.online.mapper.GradeMapper.");
	}
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/impl/PaperDaoImpl.java
================================================
package edu.fjnu.online.dao.impl;

import java.io.Serializable;
import java.util.List;
import java.util.Map;

import org.springframework.stereotype.Repository;

import edu.fjnu.online.dao.PaperDao;
import edu.fjnu.online.domain.Paper;
@Repository
public class PaperDaoImpl extends BaseDaoImpl<Paper> implements PaperDao{
	public PaperDaoImpl() {
		this.setNs("edu.fjnu.online.mapper.PaperMapper.");
	}

	public List<Paper> getUserPaperById(Serializable id) {
		return this.getSqlSession().selectList(this.getNs()+"getUserPaperById", id);
	}

	public Paper getPaperDetail(Map map) {
		// TODO Auto-generated method stub
		return this.getSqlSession().selectOne(this.getNs()+"getPaperDetail", map);
	}

	public void updateUserPaper(Map map) {
		// TODO Auto-generated method stub
		this.getSqlSession().selectOne(this.getNs()+"updateUserPaper", map);
	}

	public List<Paper> getUndoPaper(Map map) {
		// TODO Auto-generated method stub
		return this.getSqlSession().selectList(this.getNs()+"getUndoPaper", map);
	}

	public List<Paper> qryUndoPaper(Map map) {
		// TODO Auto-generated method stub
		return this.getSqlSession().selectList(this.getNs()+"qryUndoPaper", map);
	}
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/impl/QuestionDaoImpl.java
================================================
package edu.fjnu.online.dao.impl;

import java.io.Serializable;
import java.util.List;
import java.util.Map;

import org.springframework.stereotype.Repository;

import edu.fjnu.online.dao.QuestionDao;
import edu.fjnu.online.domain.Question;
@Repository
public class QuestionDaoImpl extends BaseDaoImpl< Question> implements QuestionDao {
	public QuestionDaoImpl() {
		this.setNs("edu.fjnu.online.mapper.QuestionMapper.");
	}

	public List<Question> createPaper(Map map) {
		return this.getSqlSession().selectList(this.getNs()+"createPaper", map);
	}
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/impl/TypeDaoImpl.java
================================================
package edu.fjnu.online.dao.impl;

import java.io.Serializable;

import org.springframework.stereotype.Repository;

import edu.fjnu.online.dao.TypeDao;
import edu.fjnu.online.domain.Type;
@Repository
public class TypeDaoImpl extends BaseDaoImpl<Type> implements TypeDao{

	public TypeDaoImpl() {
		this.setNs("edu.fjnu.online.mapper.TypeMapper.");
	}

}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/impl/UserDaoImpl.java
================================================
package edu.fjnu.online.dao.impl;

import java.io.Serializable;
import java.util.List;

import org.springframework.stereotype.Repository;

import edu.fjnu.online.dao.UserDao;
import edu.fjnu.online.domain.User;
@Repository
public class UserDaoImpl extends BaseDaoImpl<User> implements UserDao{
	public UserDaoImpl() {
		this.setNs("edu.fjnu.online.mapper.UserMapper.");			//设置命名空间
	}

	public List<User> findPending(User user) {
		return this.getSqlSession().selectList(this.getNs()+"findPending",user);
	}

	public User getStu(User user) {
		return this.getSqlSession().selectOne(this.getNs()+"getStu",user);
	}

}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/domain/Course.java
================================================
package edu.fjnu.online.domain;
/**
 * 课程表
 * @author hspcadmin
 *
 */
public class Course {
	/**课程编号*/
	private int courseId;
	/**课程名称*/
	private String courseName;
	/**课程状态*/
	private String courseState;
	public int getCourseId() {
		return courseId;
	}
	public void setCourseId(int courseId) {
		this.courseId = courseId;
	}
	public String getCourseName() {
		return courseName;
	}
	public void setCourseName(String courseName) {
		this.courseName = courseName;
	}
	public String getCourseState() {
		return courseState;
	}
	public void setCourseState(String courseState) {
		this.courseState = courseState;
	}
	public Course() {
		super();
		// TODO Auto-generated constructor stub
	}
	public Course(int courseId, String courseName, String courseState) {
		super();
		this.courseId = courseId;
		this.courseName = courseName;
		this.courseState = courseState;
	}
	@Override
	public String toString() {
		return "Course [courseId=" + courseId + ", courseName=" + courseName
				+ ", courseState=" + courseState + "]";
	}
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/domain/ErrorBook.java
================================================
package edu.fjnu.online.domain;
/**
 * 错题本
 * @author hspcadmin
 *
 */
public class ErrorBook {

	/**错题编号*/
	private int bookId;
	/**用户编号*/
	private String userId;
	/**科目编号*/
	private String courseId;
	/**年级编号*/
	private String gradeId;
	/**学生答案*/
	private String userAnswer;
	/**问题编号*/
	private Question question;
	/**题型编号*/
	private String typeId;
	public int getBookId() {
		return bookId;
	}
	public void setBookId(int bookId) {
		this.bookId = bookId;
	}
	public String getUserId() {
		return userId;
	}
	public void setUserId(String userId) {
		this.userId = userId;
	}
	public String getCourseId() {
		return courseId;
	}
	public void setCourseId(String courseId) {
		this.courseId = courseId;
	}
	public String getGradeId() {
		return gradeId;
	}
	public void setGradeId(String gradeId) {
		this.gradeId = gradeId;
	}
	public String getUserAnswer() {
		return userAnswer;
	}
	public void setUserAnswer(String userAnswer) {
		this.userAnswer = userAnswer;
	}
	public String getTypeId() {
		return typeId;
	}
	public void setTypeId(String typeId) {
		this.typeId = typeId;
	}
	public Question getQuestion() {
		return question;
	}
	public void setQuestion(Question question) {
		this.question = question;
	}
	public ErrorBook() {
		super();
		// TODO Auto-generated constructor stub
	}
	public ErrorBook(int bookId, String userId, String courseId,
			String gradeId, String userAnswer, Question question, String typeId) {
		super();
		this.bookId = bookId;
		this.userId = userId;
		this.courseId = courseId;
		this.gradeId = gradeId;
		this.userAnswer = userAnswer;
		this.question = question;
		this.typeId = typeId;
	}
	@Override
	public String toString() {
		return "ErrorBook [bookId=" + bookId + ", userId=" + userId
				+ ", courseId=" + courseId + ", gradeId=" + gradeId
				+ ", userAnswer=" + userAnswer + ", question=" + question
				+ ", typeId=" + typeId + "]";
	}

	
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/domain/Factory.java
================================================
package edu.fjnu.online.domain;

/**
 * @Description:
 * @Author: nutony
 * @Company: http://java.itcast.cn
 * @CreateDate: 2014-3-12
 */
public class Factory {
	private String id;
	private String fullName;
	private String factoryName;
	private String contractor;
	private String phone;
	private String mobile;
	private String fax;
	private String cnote;
	public String getCnote() {
		return cnote;
	}

	public void setCnote(String cnote) {
		this.cnote = cnote;
	}

	private Integer orderNo;
	private Integer state;

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public String getFullName() {
		return fullName;
	}

	public void setFullName(String fullName) {
		this.fullName = fullName;
	}

	public String getFactoryName() {
		return factoryName;
	}

	public void setFactoryName(String factoryName) {
		this.factoryName = factoryName;
	}

	public String getContractor() {
		return contractor;
	}

	public void setContractor(String contractor) {
		this.contractor = contractor;
	}

	public String getPhone() {
		return phone;
	}

	public void setPhone(String phone) {
		this.phone = phone;
	}

	public String getMobile() {
		return mobile;
	}

	public void setMobile(String mobile) {
		this.mobile = mobile;
	}

	public String getFax() {
		return fax;
	}

	public void setFax(String fax) {
		this.fax = fax;
	}


	public Integer getOrderNo() {
		return orderNo;
	}

	public void setOrderNo(Integer orderNo) {
		this.orderNo = orderNo;
	}

	public Integer getState() {
		return state;
	}

	public void setState(Integer state) {
		this.state = state;
	}

}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/domain/Grade.java
================================================
package edu.fjnu.online.domain;
/**
 * 年级
 * @author hspcadmin
 *
 */
public class Grade {
	/**年级编号*/
	private int gradeId;
	/**年级名称*/
	private String gradeName;
	/**包含课程*/
	private String courseId;
	public int getGradeId() {
		return gradeId;
	}
	public void setGradeId(int gradeId) {
		this.gradeId = gradeId;
	}
	public String getGradeName() {
		return gradeName;
	}
	public void setGradeName(String gradeName) {
		this.gradeName = gradeName;
	}
	public String getCourseId() {
		return courseId;
	}
	public void setCourseId(String courseId) {
		this.courseId = courseId;
	}
	public Grade() {
		super();
		// TODO Auto-generated constructor stub
	}
	public Grade(int gradeId, String gradeName, String courseId) {
		super();
		this.gradeId = gradeId;
		this.gradeName = gradeName;
		this.courseId = courseId;
	}
	@Override
	public String toString() {
		return "Grade [gradeId=" + gradeId + ", gradeName=" + gradeName
				+ ", courseId=" + courseId + "]";
	}
	
	
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/domain/MsgItem.java
================================================
package edu.fjnu.online.domain;

public class MsgItem {
	private String remark;
    private String errorNo;
    private String errorInfo;
	public String getRemark() {
		return remark;
	}
	public void setRemark(String remark) {
		this.remark = remark;
	}
	public String getErrorNo() {
		return errorNo;
	}
	public void setErrorNo(String errorNo) {
		this.errorNo = errorNo;
	}
	public String getErrorInfo() {
		return errorInfo;
	}
	public void setErrorInfo(String errorInfo) {
		this.errorInfo = errorInfo;
	}
    
    
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/domain/Paper.java
================================================
package edu.fjnu.online.domain;
/**
 * 试卷实体
 * @author hspcadmin
 *
 */
public class Paper {
	/**试卷编号*/
	private String paperId;
	/**试卷名称*/
	private String paperName;
	/**对应课程*/
	private String courseId;
	/**适合年级*/
	private String gradeId;
	/**学生编号*/
	private String userId;
	/**问题编号*/
	private String questionId;
	/**开始时间*/
	private String beginTime;
	/**结束时间*/
	private String endTime;
	/**允许时长*/
	private String allowTime;
	/**分数*/
	private String score;
	/**试卷状态 0:准备考试1:尚未开始2:已完成*/
	private String paperState;
	public Paper() {
		
	}
	public Paper(String paperId, String paperName, String courseId,
			String gradeId, String userId, String questionId, String beginTime,
			String endTime, String allowTime, String score, String paperState) {
		super();
		this.paperId = paperId;
		this.paperName = paperName;
		this.courseId = courseId;
		this.gradeId = gradeId;
		this.userId = userId;
		this.questionId = questionId;
		this.beginTime = beginTime;
		this.endTime = endTime;
		this.allowTime = allowTime;
		this.score = score;
		this.paperState = paperState;
	}
	public String getPaperId() {
		return paperId;
	}
	public void setPaperId(String paperId) {
		this.paperId = paperId;
	}
	public String getPaperName() {
		return paperName;
	}
	public void setPaperName(String paperName) {
		this.paperName = paperName;
	}
	public String getCourseId() {
		return courseId;
	}
	public void setCourseId(String courseId) {
		this.courseId = courseId;
	}
	public String getGradeId() {
		return gradeId;
	}
	public void setGradeId(String gradeId) {
		this.gradeId = gradeId;
	}
	public String getUserId() {
		return userId;
	}
	public void setUserId(String userId) {
		this.userId = userId;
	}
	public String getQuestionId() {
		return questionId;
	}
	public void setQuestionId(String questionId) {
		this.questionId = questionId;
	}
	public String getBeginTime() {
		return beginTime;
	}
	public void setBeginTime(String beginTime) {
		this.beginTime = beginTime;
	}
	public String getEndTime() {
		return endTime;
	}
	public void setEndTime(String endTime) {
		this.endTime = endTime;
	}
	public String getAllowTime() {
		return allowTime;
	}
	public void setAllowTime(String allowTime) {
		this.allowTime = allowTime;
	}
	public String getScore() {
		return score;
	}
	public void setScore(String score) {
		this.score = score;
	}
	public String getPaperstate() {
		return paperState;
	}
	public void setPaperstate(String paperstate) {
		this.paperState = paperstate;
	}
	@Override
	public String toString() {
		return "Paper [paperId=" + paperId + ", paperName=" + paperName
				+ ", courseId=" + courseId + ", gradeId=" + gradeId
				+ ", userId=" + userId + ", questionId=" + questionId
				+ ", beginTime=" + beginTime + ", endTime=" + endTime
				+ ", allowTime=" + allowTime + ", score=" + score
				+ ", paperstate=" + paperState + "]";
	}
	
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/domain/Question.java
================================================
package edu.fjnu.online.domain;

public class Question {
	/**问题编号*/
	private int questionId;
	/**问题名称*/
	private String quesName;
	/**选项A*/
	private String optionA;
	/**选项B*/
	private String optionB;
	/**选项C*/
	private String optionC;
	/**选项D*/
	private String optionD;
	/**标准答案*/
	private String answer;
	/**学生答案*/
	private String userAnswer;
	/**对应课程*/
	private String courseId;
	/**题型*/
	private String typeId;
	/**难度(0:容易,1:中等,2:难)*/
	private int difficulty;
	/**备注*/
	private String remark;
	private String answerDetail;
	private String gradeId;
	public int getQuestionId() {
		return questionId;
	}
	public void setQuestionId(int questionId) {
		this.questionId = questionId;
	}
	public String getQuesName() {
		return quesName;
	}
	public void setQuesName(String quesName) {
		this.quesName = quesName;
	}
	public String getOptionA() {
		return optionA;
	}
	public void setOptionA(String optionA) {
		this.optionA = optionA;
	}
	public String getOptionB() {
		return optionB;
	}
	public void setOptionB(String optionB) {
		this.optionB = optionB;
	}
	public String getOptionC() {
		return optionC;
	}
	public void setOptionC(String optionC) {
		this.optionC = optionC;
	}
	public String getOptionD() {
		return optionD;
	}
	public void setOptionD(String optionD) {
		this.optionD = optionD;
	}
	public String getAnswer() {
		return answer;
	}
	public void setAnswer(String answer) {
		this.answer = answer;
	}
	public String getUserAnswer() {
		return userAnswer;
	}
	public void setUserAnswer(String userAnswer) {
		this.userAnswer = userAnswer;
	}
	public String getCourseId() {
		return courseId;
	}
	public void setCourseId(String courseId) {
		this.courseId = courseId;
	}
	public String getTypeId() {
		return typeId;
	}
	public void setTypeId(String typeId) {
		this.typeId = typeId;
	}
	public int getDifficulty() {
		return difficulty;
	}
	public void setDifficulty(int difficulty) {
		this.difficulty = difficulty;
	}
	public String getRemark() {
		return remark;
	}
	public void setRemark(String remark) {
		this.remark = remark;
	}
	public String getAnswerDetail() {
		return answerDetail;
	}
	public void setAnswerDetail(String answerDetail) {
		this.answerDetail = answerDetail;
	}
	public String getGradeId() {
		return gradeId;
	}
	public void setGradeId(String gradeId) {
		this.gradeId = gradeId;
	}
	public Question() {
		
	}
	public Question(int questionId, String quesName, String optionA,
			String optionB, String optionC, String optionD, String answer,
			String userAnswer, String courseId, String typeId, int difficulty,
			String remark, String answerDetail, String gradeId) {
		super();
		this.questionId = questionId;
		this.quesName = quesName;
		this.optionA = optionA;
		this.optionB = optionB;
		this.optionC = optionC;
		this.optionD = optionD;
		this.answer = answer;
		this.userAnswer = userAnswer;
		this.courseId = courseId;
		this.typeId = typeId;
		this.difficulty = difficulty;
		this.remark = remark;
		this.answerDetail = answerDetail;
		this.gradeId = gradeId;
	}
	@Override
	public String toString() {
		return "Question [questionId=" + questionId + ", quesName=" + quesName
				+ ", optionA=" + optionA + ", optionB=" + optionB
				+ ", optionC=" + optionC + ", optionD=" + optionD + ", answer="
				+ answer + ", userAnswer=" + userAnswer + ", courseId="
				+ courseId + ", typeId=" + typeId + ", difficulty="
				+ difficulty + ", remark=" + remark + ", answerDetail="
				+ answerDetail + ", gradeId=" + gradeId + "]";
	}
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/domain/Type.java
================================================
package edu.fjnu.online.domain;
/**
 * 题目类型
 * @author hspcadmin
 *
 */
public class Type {
	/**题型编号*/
	private int typeId;
	/**题型名称*/
	private String typeName;
	/**分值*/
	private int score;
	/**备注*/
	private String remark;
	public int getTypeId() {
		return typeId;
	}
	public void setTypeId(int typeId) {
		this.typeId = typeId;
	}
	public String getTypeName() {
		return typeName;
	}
	public void setTypeName(String typeName) {
		this.typeName = typeName;
	}
	public int getScore() {
		return score;
	}
	public void setScore(int score) {
		this.score = score;
	}
	public String getRemark() {
		return remark;
	}
	public void setRemark(String remark) {
		this.remark = remark;
	}
	
	public Type() {

	}
	public Type(int typeId, String typeName, int score, String remark) {
		super();
		this.typeId = typeId;
		this.typeName = typeName;
		this.score = score;
		this.remark = remark;
	}
	@Override
	public String toString() {
		return "Type [typeId=" + typeId + ", typeName=" + typeName + ", score="
				+ score + ", remark=" + remark + "]";
	}
	
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/domain/User.java
================================================
/**
 * 
 */
package edu.fjnu.online.domain;

/**
 * 用户表
 * @author hspcadmin
 * @CreateDate:	2017-3-11
 */
public class User
{
	/**用户账号*/
	private String userId;
	/**用户昵称*/
	private String userName;
	/**用户密码*/
	private String userPwd;
	/**年级*/
	private String grade;
	/**账户类型(0:学生,1:老师,2:管理员)*/
	private int userType;
	/**账户状态(0:待审核,1:在用,2:注销)*/
	private int userState;
	/**邮箱*/
	private String email;
	/**联系电话*/
	private String telephone;
	/**联系地址*/
	private String address;
	/**备注*/
	private String remark;
	public String getUserId() {
		return userId;
	}
	public void setUserId(String userId) {
		this.userId = userId;
	}
	public String getUserName() {
		return userName;
	}
	public void setUserName(String userName) {
		this.userName = userName;
	}
	public String getUserPwd() {
		return userPwd;
	}
	public void setUserPwd(String userPwd) {
		this.userPwd = userPwd;
	}
	public String getGrade() {
		return grade;
	}
	public void setGrade(String grade) {
		this.grade = grade;
	}
	public int getUserType() {
		return userType;
	}
	public void setUserType(int userType) {
		this.userType = userType;
	}
	public int getUserState() {
		return userState;
	}
	public void setUserState(int userState) {
		this.userState = userState;
	}
	public String getEmail() {
		return email;
	}
	public void setEmail(String email) {
		this.email = email;
	}
	public String getTelephone() {
		return telephone;
	}
	public void setTelephone(String telephone) {
		this.telephone = telephone;
	}
	public String getAddress() {
		return address;
	}
	public void setAddress(String address) {
		this.address = address;
	}
	
	public String getRemark() {
		return remark;
	}
	public void setRemark(String remark) {
		this.remark = remark;
	}
	
	public User() {
		
	}
	
	
	public User(String userId, String userName, String userPwd, String grade,
			int userType, int userState, String email, String telephone,
			String address, String remark) {
		super();
		this.userId = userId;
		this.userName = userName;
		this.userPwd = userPwd;
		this.grade = grade;
		this.userType = userType;
		this.userState = userState;
		this.email = email;
		this.telephone = telephone;
		this.address = address;
		this.remark = remark;
	}
	
	@Override
	public String toString() {
		return super.toString();
	}
	
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/pagination/Page.java
================================================
package edu.fjnu.online.pagination;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
 
/**
 * 对分页的基本数据进行一个简单的封装
 */
public class Page<T> {
 
    private int pageNo = 1;			//页码,默认是第一页
    private int pageSize = 10;		//每页显示的记录数,默认是10
    private int totalRecord;		//总记录数
    private int totalPage;			//总页数
    private List<T> results;		//对应的当前页记录
    private Map<String, Object> params = new HashMap<String, Object>();		//其他的参数我们把它分装成一个Map对象
 
    public int getPageNo() {
       return pageNo;
    }
 
    public void setPageNo(int pageNo) {
       this.pageNo = pageNo;
    }
 
    public int getPageSize() {
       return pageSize;
    }
 
    public void setPageSize(int pageSize) {
       this.pageSize = pageSize;
    }
 
    public int getTotalRecord() {
       return totalRecord;
    }
 
    public void setTotalRecord(int totalRecord) {
       this.totalRecord = totalRecord;
       //在设置总页数的时候计算出对应的总页数,在下面的三目运算中加法拥有更高的优先级,所以最后可以不加括号。
       int totalPage = totalRecord%pageSize==0 ? totalRecord/pageSize : totalRecord/pageSize + 1;
       this.setTotalPage(totalPage);
    }
 
    public int getTotalPage() {
       return totalPage;
    }
 
    public void setTotalPage(int totalPage) {
       this.totalPage = totalPage;
    }
 
    public List<T> getResults() {
       return results;
    }
 
    public void setResults(List<T> results) {
       this.results = results;
    }
   
    public Map<String, Object> getParams() {
       return params;
    }
   
    public void setParams(Map<String, Object> params) {
       this.params = params;
    }
 
    @Override
    public String toString() {
       StringBuilder builder = new StringBuilder();
       builder.append("Page [pageNo=").append(pageNo).append(", pageSize=").append(pageSize).append(", results=").append(results).append(", totalPage=").append(totalPage).append(", totalRecord=").append(totalRecord).append("]");
       return builder.toString();
    }
 
}

================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/pagination/PageInterceptor.java
================================================
package edu.fjnu.online.pagination;

import java.lang.reflect.Field;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;
import java.util.Properties;

import org.apache.ibatis.executor.parameter.ParameterHandler;
import org.apache.ibatis.executor.statement.RoutingStatementHandler;
import org.apache.ibatis.executor.statement.StatementHandler;
import org.apache.ibatis.mapping.BoundSql;
import org.apache.ibatis.mapping.MappedStatement;
import org.apache.ibatis.mapping.ParameterMapping;
import org.apache.ibatis.plugin.Interceptor;
import org.apache.ibatis.plugin.Intercepts;
import org.apache.ibatis.plugin.Invocation;
import org.apache.ibatis.plugin.Plugin;
import org.apache.ibatis.plugin.Signature;
import org.apache.ibatis.scripting.defaults.DefaultParameterHandler;
 
 
/**
 *
 * 分页拦截器,用于拦截需要进行分页查询的操作,然后对其进行分页处理。
 * 利用拦截器实现Mybatis分页的原理:
 * 要利用JDBC对数据库进行操作就必须要有一个对应的Statement对象,Mybatis在执行Sql语句前就会产生一个包含Sql语句的Statement对象,而且对应的Sql语句
 * 是在Statement之前产生的,所以我们就可以在它生成Statement之前对用来生成Statement的Sql语句下手。在Mybatis中Statement语句是通过RoutingStatementHandler对象的
 * prepare方法生成的。所以利用拦截器实现Mybatis分页的一个思路就是拦截StatementHandler接口的prepare方法,然后在拦截器方法中把Sql语句改成对应的分页查询Sql语句,之后再调用
 * StatementHandler对象的prepare方法,即调用invocation.proceed()。
 * 对于分页而言,在拦截器里面我们还需要做的一个操作就是统计满足当前条件的记录一共有多少,这是通过获取到了原始的Sql语句后,把它改为对应的统计语句再利用Mybatis封装好的参数和设
 * 置参数的功能把Sql语句中的参数进行替换,之后再执行查询记录数的Sql语句进行总记录数的统计。
 *
 */
@Intercepts( {
       @Signature(method = "prepare", type = StatementHandler.class, args = {Connection.class}) })
public class PageInterceptor implements Interceptor {
 
    private String databaseType;//数据库类型,不同的数据库有不同的分页方法
   
    /**
     * 拦截后要执行的方法
     */
    public Object intercept(Invocation invocation) throws Throwable {
       //对于StatementHandler其实只有两个实现类,一个是RoutingStatementHandler,另一个是抽象类BaseStatementHandler,
       //BaseStatementHandler有三个子类,分别是SimpleStatementHandler,PreparedStatementHandler和CallableStatementHandler,
       //SimpleStatementHandler是用于处理Statement的,PreparedStatementHandler是处理PreparedStatement的,而CallableStatementHandler是
       //处理CallableStatement的。Mybatis在进行Sql语句处理的时候都是建立的RoutingStatementHandler,而在RoutingStatementHandler里面拥有一个
       //StatementHandler类型的delegate属性,RoutingStatementHandler会依据Statement的不同建立对应的BaseStatementHandler,即SimpleStatementHandler、
       //PreparedStatementHandler或CallableStatementHandler,在RoutingStatementHandler里面所有StatementHandler接口方法的实现都是调用的delegate对应的方法。
       //我们在PageInterceptor类上已经用@Signature标记了该Interceptor只拦截StatementHandler接口的prepare方法,又因为Mybatis只有在建立RoutingStatementHandler的时候
       //是通过Interceptor的plugin方法进行包裹的,所以我们这里拦截到的目标对象肯定是RoutingStatementHandler对象。
       RoutingStatementHandler handler = (RoutingStatementHandler) invocation.getTarget();
       //通过反射获取到当前RoutingStatementHandler对象的delegate属性
       StatementHandler delegate = (StatementHandler)ReflectUtil.getFieldValue(handler, "delegate");
       //获取到当前StatementHandler的 boundSql,这里不管是调用handler.getBoundSql()还是直接调用delegate.getBoundSql()结果是一样的,因为之前已经说过了
       //RoutingStatementHandler实现的所有StatementHandler接口方法里面都是调用的delegate对应的方法。
       BoundSql boundSql = delegate.getBoundSql();
       //拿到当前绑定Sql的参数对象,就是我们在调用对应的Mapper映射语句时所传入的参数对象
       Object obj = boundSql.getParameterObject();
       //这里我们简单的通过传入的是Page对象就认定它是需要进行分页操作的。
       if (obj instanceof Page<?>) {
           Page<?> page = (Page<?>) obj;
           //通过反射获取delegate父类BaseStatementHandler的mappedStatement属性
           MappedStatement mappedStatement = (MappedStatement)ReflectUtil.getFieldValue(delegate, "mappedStatement");
           //拦截到的prepare方法参数是一个Connection对象
           Connection connection = (Connection)invocation.getArgs()[0];
           //获取当前要执行的Sql语句,也就是我们直接在Mapper映射语句中写的Sql语句
           String sql = boundSql.getSql();
           //给当前的page参数对象设置总记录数
           this.setTotalRecord(page,
                  mappedStatement, connection);
           //获取分页Sql语句
           String pageSql = this.getPageSql(page, sql);
           //利用反射设置当前BoundSql对应的sql属性为我们建立好的分页Sql语句
           ReflectUtil.setFieldValue(boundSql, "sql", pageSql);
       }
       return invocation.proceed();
    }
 
 
    /**
     * 拦截器对应的封装原始对象的方法
     */
    public Object plugin(Object target) {
       return Plugin.wrap(target, this);
    }
 
    /**
     * 设置注册拦截器时设定的属性
     */
    public void setProperties(Properties properties) {
       this.databaseType = properties.getProperty("databaseType");
    }
   
    /**
     * 根据page对象获取对应的分页查询Sql语句,这里只做了两种数据库类型,Mysql和Oracle
     * 其它的数据库都 没有进行分页
     *
     * @param page 分页对象
     * @param sql 原sql语句
     * @return
     */
    private String getPageSql(Page<?> page, String sql) {
       StringBuffer sqlBuffer = new StringBuffer(sql);
       if ("mysql".equalsIgnoreCase(databaseType)) {
           return getMysqlPageSql(page, sqlBuffer);
       } else if ("oracle".equalsIgnoreCase(databaseType)) {
           return getOraclePageSql(page, sqlBuffer);
       }
       return sqlBuffer.toString();
    }
   
    /**
     * 获取Mysql数据库的分页查询语句
     * @param page 分页对象
     * @param sqlBuffer 包含原sql语句的StringBuffer对象
     * @return Mysql数据库分页语句
     */
    private String getMysqlPageSql(Page<?> page, StringBuffer sqlBuffer) {
       //计算第一条记录的位置,Mysql中记录的位置是从0开始的。
       int offset = (page.getPageNo() - 1) * page.getPageSize();
       sqlBuffer.append(" limit ").append(offset).append(",").append(page.getPageSize());
       return sqlBuffer.toString();
    }
   
    /**
     * 获取Oracle数据库的分页查询语句
     * @param page 分页对象
     * @param sqlBuffer 包含原sql语句的StringBuffer对象
     * @return Oracle数据库的分页查询语句
     */
    private String getOraclePageSql(Page<?> page, StringBuffer sqlBuffer) {
       //计算第一条记录的位置,Oracle分页是通过rownum进行的,而rownum是从1开始的
       int offset = (page.getPageNo() - 1) * page.getPageSize() + 1;
       sqlBuffer.insert(0, "select u.*, rownum r from (").append(") u where rownum < ").append(offset + page.getPageSize());
       sqlBuffer.insert(0, "select * from (").append(") where r >= ").append(offset);
       //上面的Sql语句拼接之后大概是这个样子:
       //select * from (select u.*, rownum r from (select * from t_user) u where rownum < 31) where r >= 16
       return sqlBuffer.toString();
    }
   
    /**
     * 给当前的参数对象page设置总记录数
     *
     * @param page Mapper映射语句对应的参数对象
     * @param mappedStatement Mapper映射语句
     * @param connection 当前的数据库连接
     */
    private void setTotalRecord(Page<?> page,
           MappedStatement mappedStatement, Connection connection) {
       //获取对应的BoundSql,这个BoundSql其实跟我们利用StatementHandler获取到的BoundSql是同一个对象。
       //delegate里面的boundSql也是通过mappedStatement.getBoundSql(paramObj)方法获取到的。
       BoundSql boundSql = mappedStatement.getBoundSql(page);
       //获取到我们自己写在Mapper映射语句中对应的Sql语句
       String sql = boundSql.getSql();
       //通过查询Sql语句获取到对应的计算总记录数的sql语句
       String countSql = this.getCountSql(sql);
       //通过BoundSql获取对应的参数映射
       List<ParameterMapping> parameterMappings = boundSql.getParameterMappings();
       //利用Configuration、查询记录数的Sql语句countSql、参数映射关系parameterMappings和参数对象page建立查询记录数对应的BoundSql对象。
       BoundSql countBoundSql = new BoundSql(mappedStatement.getConfiguration(), countSql, parameterMappings, page);
       //通过mappedStatement、参数对象page和BoundSql对象countBoundSql建立一个用于设定参数的ParameterHandler对象
       ParameterHandler parameterHandler = new DefaultParameterHandler(mappedStatement, page, countBoundSql);
       //通过connection建立一个countSql对应的PreparedStatement对象。
       PreparedStatement pstmt = null;
       ResultSet rs = null;
       try {
           pstmt = connection.prepareStatement(countSql);
           //通过parameterHandler给PreparedStatement对象设置参数
           parameterHandler.setParameters(pstmt);
           //之后就是执行获取总记录数的Sql语句和获取结果了。
           rs = pstmt.executeQuery();
           if (rs.next()) {
              int totalRecord = rs.getInt(1);
              //给当前的参数page对象设置总记录数
              page.setTotalRecord(totalRecord);
           }
       } catch (SQLException e) {
           e.printStackTrace();
       } finally {
           try {
              if (rs != null)
                  rs.close();
               if (pstmt != null)
                  pstmt.close();
           } catch (SQLException e) {
              e.printStackTrace();
           }
       }
    }
   
    /**
     * 根据原Sql语句获取对应的查询总记录数的Sql语句
     * @param sql
     * @return
     */
    private String getCountSql(String sql) {
       int index = sql.indexOf("from");
       return "select count(*) " + sql.substring(index);
    }
   
    /**
     * 利用反射进行操作的一个工具类
     *
     */
    private static class ReflectUtil {
       /**
        * 利用反射获取指定对象的指定属性
        * @param obj 目标对象
        * @param fieldName 目标属性
        * @return 目标属性的值
        */
       public static Object getFieldValue(Object obj, String fieldName) {
           Object result = null;
           Field field = ReflectUtil.getField(obj, fieldName);
           if (field != null) {
              field.setAccessible(true);
              try {
                  result = field.get(obj);
              } catch (IllegalArgumentException e) {
                  // TODO Auto-generated catch block
                  e.printStackTrace();
              } catch (IllegalAccessException e) {
                  // TODO Auto-generated catch block
                  e.printStackTrace();
              }
           }
           return result;
       }
      
       /**
        * 利用反射获取指定对象里面的指定属性
        * @param obj 目标对象
        * @param fieldName 目标属性
        * @return 目标字段
        */
       private static Field getField(Object obj, String fieldName) {
           Field field = null;
          for (Class<?> clazz=obj.getClass(); clazz != Object.class; clazz=clazz.getSuperclass()) {
              try {
                  field = clazz.getDeclaredField(fieldName);
                  break;
              } catch (NoSuchFieldException e) {
                  //这里不用做处理,子类没有该字段可能对应的父类有,都没有就返回null。
              }
           }
           return field;
       }
 
       /**
        * 利用反射设置指定对象的指定属性为指定的值
        * @param obj 目标对象
        * @param fieldName 目标属性
         * @param fieldValue 目标值
        */
       public static void setFieldValue(Object obj, String fieldName,
              String fieldValue) {
           Field field = ReflectUtil.getField(obj, fieldName);
           if (field != null) {
              try {
                  field.setAccessible(true);
                  field.set(obj, fieldValue);
              } catch (IllegalArgumentException e) {
                  e.printStackTrace();
              } catch (IllegalAccessException e) {
                  e.printStackTrace();
              }
           }
        }
    }
 
}

================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/CourseService.java
================================================
package edu.fjnu.online.service;

import java.util.List;

import com.github.pagehelper.PageInfo;

import edu.fjnu.online.domain.Course;
import edu.fjnu.online.domain.Grade;

public interface CourseService {
	public List<Course> find(Course course);
	public Course get(int id);
	public void insert(Course course);
	public void update(Course course);
	public void delete(int id);
	public PageInfo<Course> findByPage(Course course, Integer pageNo,Integer pageSize);
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/ErrorBookService.java
================================================
package edu.fjnu.online.service;

import java.util.List;
import java.util.Map;

import edu.fjnu.online.domain.ErrorBook;

public interface ErrorBookService {
	public List<ErrorBook> find(ErrorBook errorBook);
	public ErrorBook get(int id);
	public void insert(ErrorBook errorBook);
	public void update(ErrorBook errorBook);
	public void delete(int id);
	public List<ErrorBook> getBookInfo(Map map);
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/GradeService.java
================================================
package edu.fjnu.online.service;

import java.util.List;

import com.github.pagehelper.PageInfo;

import edu.fjnu.online.domain.Grade;
import edu.fjnu.online.domain.Question;

public interface GradeService {
	public List<Grade> find(Grade grade);
	public Grade get(int id);
	public void insert(Grade grade);
	public void update(Grade grade);
	public void delete(int id);
	public PageInfo<Grade> findByPage(Grade grade, Integer pageNo,Integer pageSize);
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/PaperService.java
================================================
package edu.fjnu.online.service;

import java.io.Serializable;
import java.util.List;
import java.util.Map;

import com.github.pagehelper.PageInfo;

import edu.fjnu.online.domain.Paper;
import edu.fjnu.online.domain.Question;

public interface PaperService {
	public List<Paper> find(Paper paper);
	public Paper get(Serializable id);
	public void insert(Paper paper);
	public void update(Paper paper);
	public void delete(Serializable id);
	public void delete(Serializable[] ids);
	/**通过学生编号获取所有的试卷*/
	public List<Paper> getUserPaperById(Serializable id);
	/**查看试卷详情*/
	public Paper getPaperDetail(Map map);
	/**更新用户试卷信息*/
	public void updateUserPaper(Map map);
	/**查询未考试的试卷*/
	public List<Paper> getUndoPaper(Map map);
	/**查询学生未考试的试卷*/
	public List<Paper> qryUndoPaper(Map map);
	public PageInfo<Paper> findAllPage(Paper paper, Integer pageNo,Integer pageSize);
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/QuestionService.java
================================================
package edu.fjnu.online.service;

import java.util.List;
import java.util.Map;

import com.github.pagehelper.PageInfo;

import edu.fjnu.online.domain.Question;

public interface QuestionService {
	public List<Question> find(Question question);
	public Question get(int id);
	public void insert(Question question);
	public void update(Question question);
	public void delete(int id);
	public List<Question> createPaper(Map map);
	public PageInfo<Question> findByPage(Question question, Integer pageNo,Integer pageSize);
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/TypeService.java
================================================
package edu.fjnu.online.service;

import java.util.List;

import com.github.pagehelper.PageInfo;

import edu.fjnu.online.domain.Course;
import edu.fjnu.online.domain.Type;

public interface TypeService {
	public List<Type> find(Type type);
	public Type get(int id);
	public void insert(Type type);
	public void update(Type type);
	public void delete(int id);
	public PageInfo<Type> findByPage(Type type, Integer pageNo,Integer pageSize);
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/UserService.java
================================================
package edu.fjnu.online.service;

import java.io.Serializable;
import java.util.List;

import com.github.pagehelper.PageInfo;

import edu.fjnu.online.domain.Question;
import edu.fjnu.online.domain.User;

public interface UserService {
	public List<User> find(User user);
	/**查询所有待审核记录*/
	public List<User> findPending(User user);
	public User get(Serializable id);
	public void insert(User user);
	public void update(User user);
	public void delete(Serializable id);
	public void delete(Serializable[] ids);
	public User login(User user);
	/**查询学生信息*/
	public User getStu(User user);
	/**分页查询学生信息*/
	public PageInfo<User> findByPage(User user, Integer pageNo,Integer pageSize);
	/**分页查询待审核记录*/
	public PageInfo<User> findPendingByPage(User user, Integer pageNo,Integer pageSize);
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/impl/CourseServiceImpl.java
================================================
package edu.fjnu.online.service.impl;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;

import edu.fjnu.online.dao.CourseDao;
import edu.fjnu.online.domain.Course;
import edu.fjnu.online.domain.Grade;
import edu.fjnu.online.service.CourseService;
@Service
public class CourseServiceImpl implements CourseService {

	@Autowired
	CourseDao courseDao;
	public List<Course> find(Course course) {
		return courseDao.find(course);
	}

	public Course get(int id) {
		return courseDao.get(id);
	}

	public void insert(Course course) {
		courseDao.insert(course);
	}

	public void update(Course course) {
		courseDao.update(course);
	}

	public void delete(int id) {
		courseDao.delete(id);		
	}

	public PageInfo<Course> findByPage(Course course, Integer pageNo,
			Integer pageSize) {
		pageNo = pageNo == null?1:pageNo;
	    pageSize = pageSize == null?10:pageSize;
	    PageHelper.startPage(pageNo, pageSize);
	    List<Course> list = courseDao.find(course);
	    System.out.println(list.toString());
	    //用PageInfo对结果进行包装
	    PageInfo<Course> page = new PageInfo<Course>(list);
	    return page;
	}

}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/impl/ErrorBookServiceImpl.java
================================================
package edu.fjnu.online.service.impl;

import java.util.List;
import java.util.Map;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import edu.fjnu.online.dao.ErrorBookDao;
import edu.fjnu.online.domain.ErrorBook;
import edu.fjnu.online.service.ErrorBookService;
@Service
public class ErrorBookServiceImpl implements ErrorBookService {

	@Autowired
	ErrorBookDao bookDao;
	public List<ErrorBook> find(ErrorBook errorBook) {
		return bookDao.find(errorBook);
	}

	public ErrorBook get(int id) {
		return bookDao.get(id);
	}

	public void insert(ErrorBook errorBook) {
		bookDao.insert(errorBook);
	}

	public void update(ErrorBook errorBook) {
		bookDao.update(errorBook);
	}

	public void delete(int id) {
		bookDao.delete(id);
	}

	public List<ErrorBook> getBookInfo(Map map) {
		return bookDao.getBookInfo(map);
	}

}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/impl/GradeServiceImpl.java
================================================
package edu.fjnu.online.service.impl;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;

import edu.fjnu.online.dao.GradeDao;
import edu.fjnu.online.domain.Grade;
import edu.fjnu.online.domain.Paper;
import edu.fjnu.online.service.GradeService;
@Service
public class GradeServiceImpl implements GradeService{

	@Autowired
	GradeDao gradeDao;
	
	public List<Grade> find(Grade grade) {
		return gradeDao.find(grade);
	}

	public Grade get(int id) {
		return gradeDao.get(id);
	}

	public void insert(Grade grade) {
		gradeDao.insert(grade);
	}

	public void update(Grade grade) {
		gradeDao.update(grade);
	}

	public void delete(int id) {
		gradeDao.delete(id);		
	}

	public PageInfo<Grade> findByPage(Grade grade, Integer pageNo,
			Integer pageSize) {
		pageNo = pageNo == null?1:pageNo;
	    pageSize = pageSize == null?10:pageSize;
	    PageHelper.startPage(pageNo, pageSize);
	    List<Grade> list = gradeDao.find(grade);
	    System.out.println(list.toString());
	    //用PageInfo对结果进行包装
	    PageInfo<Grade> page = new PageInfo<Grade>(list);
	    return page;
	}

}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/impl/PaperServiceImpl.java
================================================
package edu.fjnu.online.service.impl;

import java.io.Serializable;
import java.util.List;
import java.util.Map;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;

import edu.fjnu.online.dao.PaperDao;
import edu.fjnu.online.domain.Paper;
import edu.fjnu.online.domain.Question;
import edu.fjnu.online.service.PaperService;
@Service
public class PaperServiceImpl implements PaperService {

	@Autowired
	PaperDao paperDao;
	public List<Paper> find(Paper paper) {
		return paperDao.find(paper);
	}

	public Paper get(Serializable id) {
		return paperDao.get(id);
	}

	public void insert(Paper paper) {
		paperDao.insert(paper);
	}

	public void update(Paper paper) {
		paperDao.update(paper);
	}

	public void delete(Serializable id) {
		paperDao.delete(id);
	}

	public void delete(Serializable[] ids) {
		paperDao.delete(ids);
	}

	public List<Paper> getUserPaperById(Serializable id) {
		// TODO Auto-generated method stub
		return paperDao.getUserPaperById(id);
	}

	public Paper getPaperDetail(Map map) {
		// TODO Auto-generated method stub
		return paperDao.getPaperDetail(map);
	}

	public void updateUserPaper(Map map) {
		// TODO Auto-generated method stub
		paperDao.updateUserPaper(map);
	}

	public List<Paper> getUndoPaper(Map map) {
		// TODO Auto-generated method stub
		return paperDao.getUndoPaper(map);
	}

	public List<Paper> qryUndoPaper(Map map) {
		// TODO Auto-generated method stub
		return paperDao.qryUndoPaper(map);
	}

	public PageInfo<Paper> findAllPage(Paper paper, Integer pageNo,
			Integer pageSize) {
		pageNo = pageNo == null?1:pageNo;
	    pageSize = pageSize == null?10:pageSize;
	    PageHelper.startPage(pageNo, pageSize);
	    List<Paper> list = paperDao.find(paper);
	    System.out.println(list.toString());
	    //用PageInfo对结果进行包装
	    PageInfo<Paper> page = new PageInfo<Paper>(list);
	    return page;
	}

}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/impl/QuestionServiceImpl.java
================================================
package edu.fjnu.online.service.impl;

import java.util.List;
import java.util.Map;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;

import edu.fjnu.online.dao.QuestionDao;
import edu.fjnu.online.domain.Question;
import edu.fjnu.online.service.QuestionService;
@Service
public class QuestionServiceImpl implements QuestionService {

	@Autowired
	QuestionDao questionDao;
	
	public List<Question> find(Question question) {
		return questionDao.find(question);
	}

	public Question get(int id) {
		return questionDao.get(id);
	}

	public void insert(Question question) {
		questionDao.insert(question);
	}

	public void update(Question question) {
		questionDao.update(question);
	}

	public void delete(int id) {
		questionDao.delete(id);
	}

	public List<Question> createPaper(Map map) {
		// TODO Auto-generated method stub
		return questionDao.createPaper(map);
	}

	public PageInfo<Question> findByPage(Question question, Integer pageNo,
			Integer pageSize) {
		
		pageNo = pageNo == null?1:pageNo;
	    pageSize = pageSize == null?10:pageSize;
	    PageHelper.startPage(pageNo, pageSize);
	    List<Question> list = questionDao.find(question);
	    System.out.println(list.toString());
	    //用PageInfo对结果进行包装
	    PageInfo<Question> page = new PageInfo<Question>(list);
	    return page;
	}

}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/impl/TypeServiceImpl.java
================================================
package edu.fjnu.online.service.impl;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;

import edu.fjnu.online.dao.TypeDao;
import edu.fjnu.online.domain.Course;
import edu.fjnu.online.domain.Type;
import edu.fjnu.online.service.TypeService;

@Service
public class TypeServiceImpl implements TypeService{

	@Autowired
	TypeDao typeDao;
	
	public List<Type> find(Type type) {
		return typeDao.find(type);
	}

	public Type get(int id) {
		return typeDao.get(id);
	}

	public void insert(Type type) {
		typeDao.insert(type);
	}

	public void update(Type type) {
		typeDao.update(type);
	}

	public void delete(int id) {
		typeDao.delete(id);
	}

	public PageInfo<Type> findByPage(Type type, Integer pageNo, Integer pageSize) {
		pageNo = pageNo == null?1:pageNo;
	    pageSize = pageSize == null?10:pageSize;
	    PageHelper.startPage(pageNo, pageSize);
	    List<Type> list = typeDao.find(type);
	    //用PageInfo对结果进行包装
	    PageInfo<Type> page = new PageInfo<Type>(list);
	    return page;
	}

}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/impl/UserServiceImpl.java
================================================
package edu.fjnu.online.service.impl;

import java.io.Serializable;
import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;

import edu.fjnu.online.dao.UserDao;
import edu.fjnu.online.domain.Question;
import edu.fjnu.online.domain.User;
import edu.fjnu.online.service.UserService;
import edu.fjnu.online.util.MD5Util;
@Service
public class UserServiceImpl implements UserService {

	@Autowired
	UserDao userDao;
	
	public List<User> find(User user) {
		// TODO Auto-generated method stub
		return userDao.find(user);
	}

	public User get(Serializable id) {
		// TODO Auto-generated method stub
		return userDao.get(id);
	}

	public void insert(User user) {
		String userPwd = user.getUserPwd();
		//密码加密
		userPwd = MD5Util.getData(userPwd);
		user.setUserPwd(userPwd);
		userDao.insert(user);
	}

	public void update(User user) {
		// TODO Auto-generated method stub
		userDao.update(user);
	}

	public void delete(Serializable id) {
		// TODO Auto-generated method stub
		userDao.delete(id);
	}

	public void delete(Serializable[] ids) {
		// TODO Auto-generated method stub
		
	}

	public User login(User user) {
		// TODO Auto-generated method stub
		User u = get(user.getUserId());
		if(u!=null){
			String userPwd = MD5Util.getData(user.getUserPwd());
			if(userPwd.equals(u.getUserPwd())){
				return u;
			}
		}
		return null;
	}

	public List<User> findPending(User user) {
		// TODO Auto-generated method stub
		return userDao.findPending(user);
	}

	public User getStu(User user) {
		// TODO Auto-generated method stub
		return userDao.getStu(user);
	}

	public PageInfo<User> findByPage(User user, Integer pageNo, Integer pageSize) {
		// TODO Auto-generated method stub
		pageNo = pageNo == null?1:pageNo;
	    pageSize = pageSize == null?10:pageSize;
	    PageHelper.startPage(pageNo, pageSize);
	    List<User> list = userDao.find(user);
	    System.out.println(list.toString());
	    //用PageInfo对结果进行包装
	    PageInfo<User> page = new PageInfo<User>(list);
	    return page;
	}

	public PageInfo<User> findPendingByPage(User user, Integer pageNo,
			Integer pageSize) {
		pageNo = pageNo == null?1:pageNo;
	    pageSize = pageSize == null?10:pageSize;
	    PageHelper.startPage(pageNo, pageSize);
	    List<User> list = userDao.findPending(user);
	    System.out.println(list.toString());
	    //用PageInfo对结果进行包装
	    PageInfo<User> page = new PageInfo<User>(list);
	    return page;
	}

}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/util/Arith.java
================================================
package edu.fjnu.online.util;


// 这是一个数数学计算的class 缩略图生成的时候需要用到。

import java.math.BigDecimal;
import java.util.Random;
public class Arith {
	//默认除法运算精度
    private static final int DEF_DIV_SCALE = 10;
     /**
       * 提供精确的加法运算。
       * @param v1 被加数
       * @param v2 加数
       * @return 两个参数的和
       */
      public static double add(double v1,double v2){
        BigDecimal b1 = new BigDecimal(Double.toString(v1));
        BigDecimal b2 = new BigDecimal(Double.toString(v2));
        return b1.add(b2).doubleValue();
      } 
      /**
       * 提供精确的减法运算。
       * @param v1 被减数
       * @param v2 减数
       * @return 两个参数的差
       */
      public static double sub(double v1,double v2){
        BigDecimal b1 = new BigDecimal(Double.toString(v1));
        BigDecimal b2 = new BigDecimal(Double.toString(v2));
        return b1.subtract(b2).doubleValue();
      }
      /**
       * 提供精确的乘法运算。
       * @param v1 被乘数
       * @param v2 乘数
       * @return 两个参数的积
       */
    public static double mul(double v1,double v2){
        BigDecimal b1 = new BigDecimal(Double.toString(v1));
        BigDecimal b2 = new BigDecimal(Double.toString(v2));
        return b1.multiply(b2).doubleValue();
    }
      /**
       * 提供(相对)精确的除法运算,当发生除不尽的情况时,精确到
       * 小数点以后10位,以后的数字四舍五入。
       * @param v1 被除数
       * @param v2 除数
       * @return 两个参数的商
       */
      public static double div(double v1,double v2){
        return div(v1,v2,DEF_DIV_SCALE);
      }
      /**
       * 提供(相对)精确的除法运算。当发生除不尽的情况时,由scale参数指
       * 定精度,以后的数字四舍五入。
       * @param v1 被除数
       * @param v2 除数
       * @param scale 表示表示需要精确到小数点以后几位。
       * @return 两个参数的商
       */
      public static double div(double v1,double v2,int scale){
        if(scale<0){
          throw new IllegalArgumentException(
          "The scale must be a positive integer or zero");
        }
        BigDecimal b1 = new BigDecimal(Double.toString(v1));
        BigDecimal b2 = new BigDecimal(Double.toString(v2));
        return b1.divide(b2,scale,BigDecimal.ROUND_HALF_UP).doubleValue();
      }
      /**
       * 提供精确的小数位四舍五入处理。
       * @param v 需要四舍五入的数字
       * @param scale 小数点后保留几位
       * @return 四舍五入后的结果
       */
      public static double round(double v,int scale){
        if(scale<0){
          throw new IllegalArgumentException(
          "The scale must be a positive integer or zero");
        }
        BigDecimal b = new BigDecimal(Double.toString(v));
        BigDecimal one = new BigDecimal("1");
        return b.divide(one,scale,BigDecimal.ROUND_HALF_UP).doubleValue();
      }
      
      //非整除则进位 by tony 20111006
      public int round(int i1,int i2){
    	  int modi = 0;
    	  modi = i1 % i2;
    	  int i = i1/i2;
    	  if(modi==0){
    		  return i;
    	  }else{
    		  return i+1;
    	  }
      }
      
      //使用时一定要注意其大小,不可超出范围
      public int pow(int i1,int i2){
    	  double d1 = (double)i1;
    	  double d2 = (double)i2;
    	  return (int)java.lang.Math.pow(d1, d2);
      }
      
      //对给定数目的自0开始步长为1的数字序列进行乱序
      public static int[] getSequence(int maxnum) {
          int[] sequence = new int[maxnum];
          for(int i = 0; i < maxnum; i++){
              sequence[i] = i;
          }
          Random random = new Random();
          for(int i = 0; i < maxnum; i++){
              int p = random.nextInt(maxnum);
              int tmp = sequence[i];
              sequence[i] = sequence[p];
              sequence[p] = tmp;
          }
          random = null;
          return sequence;
      } 
      
      public static void main(String[] agrs){
    	  Arith arith = new Arith();
    	  int[] i = arith.getSequence(300);
    	  for(int n=0;n<i.length;n++){
    		  System.out.println(i[n]);
    	  }
      }
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/util/ComputeScore.java
================================================
package edu.fjnu.online.util;

import java.math.BigDecimal;
import java.math.RoundingMode;

/**
 * 分数计算
 * @author hspcadmin
 *
 */
public class ComputeScore {

	public static double getScore(String str1,String str2){
		double d = Computeclass.SimilarDegree(str1, str1);
		return d;
	}
	
	public static void main(String[] args) {
		String str1="相似度来计算文本的相似度,然后通过相似度来计算本题的得分,";
		String str2="相似度来计算文本的相似度,然后通过相似度";
		
		double d = Computeclass.SimilarDegree(str1, str2);
		
		String str3 = Computeclass.longestCommonSubstring(str1, str2);
		
		//double d2 = TextSimilarityUtil.getSimilarity(str1, str3);
		// 新方法,如果不需要四舍五入,可以使用RoundingMode.DOWN
		System.out.println(d);
        BigDecimal bg = new BigDecimal(d*5).setScale(1, RoundingMode.DOWN);
        d = bg.doubleValue();
        System.out.println(d);
	}
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/util/Computeclass.java
================================================
package edu.fjnu.online.util;

import java.text.NumberFormat;
import java.util.Locale;

public class Computeclass {
	/* 
     * 计算相似度 
     * */
	/**
	 * 计算相似度
	 * @param strA 
	 * @param strB 
	 * @return
	 */
    public static double SimilarDegree(String strA, String strB){     
        String newStrA = removeSign(strA);      
        String newStrB = removeSign(strB);  
        //用较大的字符串长度作为分母,相似子串作为分子计算出字串相似度  
        int temp = Math.max(newStrA.length(), newStrB.length());      
        int temp2 = longestCommonSubstring(newStrA, newStrB).length();     
        return temp2 * 1.0 / temp;      
    }    
    
      
    /* 
     * 将字符串的所有数据依次写成一行 
     * */  
    public static String removeSign(String str) {     
        StringBuffer sb = new StringBuffer();   
        //遍历字符串str,如果是汉字数字或字母,则追加到ab上面  
        for (char item : str.toCharArray())     
            if (charReg(item)){      
                sb.append(item);    
            }    
        return sb.toString();    
    }    
    
      
    /* 
     * 判断字符是否为汉字,数字和字母, 
     * 因为对符号进行相似度比较没有实际意义,故符号不加入考虑范围。 
     * */  
    public static boolean charReg(char charValue) {      
        return (charValue >= 0x4E00 && charValue <= 0X9FA5) || (charValue >= 'a' && charValue <= 'z')  
                || (charValue >= 'A' && charValue <= 'Z')  || (charValue >= '0' && charValue <= '9');      
    }      
    
      
    /* 
     * 求公共子串,采用动态规划算法。 
     * 其不要求所求得的字符在所给的字符串中是连续的。 
     *  
     * */  
    public static String longestCommonSubstring(String strA, String strB) {     
        char[] chars_strA = strA.toCharArray();  
        char[] chars_strB = strB.toCharArray();   
        int m = chars_strA.length;     
        int n = chars_strB.length;   
          
        /* 
         * 初始化矩阵数据,matrix[0][0]的值为0, 
         * 如果字符数组chars_strA和chars_strB的对应位相同,则matrix[i][j]的值为左上角的值加1, 
         * 否则,matrix[i][j]的值等于左上方最近两个位置的较大值, 
         * 矩阵中其余各点的值为0. 
        */  
        int[][] matrix = new int[m + 1][n + 1];     
        for (int i = 1; i <= m; i++) {    
            for (int j = 1; j <= n; j++) {      
                if (chars_strA[i - 1] == chars_strB[j - 1])     
                    matrix[i][j] = matrix[i - 1][j - 1] + 1;      
                else     
                    matrix[i][j] = Math.max(matrix[i][j - 1], matrix[i - 1][j]);     
            }     
        }  
        /* 
         * 矩阵中,如果matrix[m][n]的值不等于matrix[m-1][n]的值也不等于matrix[m][n-1]的值, 
         * 则matrix[m][n]对应的字符为相似字符元,并将其存入result数组中。 
         *  
         */  
        char[] result = new char[matrix[m][n]];      
        int currentIndex = result.length - 1;     
        while (matrix[m][n] != 0) {     
            if (matrix[n] == matrix[n - 1])    
                n--;     
            else if (matrix[m][n] == matrix[m - 1][n])      
                m--;     
            else {     
                result[currentIndex] = chars_strA[m - 1];     
                currentIndex--;    
                n--;     
                m--;    
            }    
        }      
       return new String(result);     
    }    
      
      
    /* 
     * 结果转换成百分比形式  
     * */     
    public static String similarityResult(double resule){      
        return  NumberFormat.getPercentInstance(new Locale( "en ", "US ")).format(resule);     
    } 
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/util/DateConverter.java
================================================
package edu.fjnu.online.util;

import java.sql.Date;
import java.sql.Timestamp;
import java.text.SimpleDateFormat;

import org.springframework.beans.propertyeditors.CustomDateEditor;
import org.springframework.web.bind.WebDataBinder;
import org.springframework.web.bind.support.WebBindingInitializer;
import org.springframework.web.context.request.WebRequest;

/*
 * 实现自定义日期格式转换,格式为:yyyy-MM-dd
 * 
 * 	
 * 为何在springmvc-servlet.xml中配置不起作用,直接controller中声明起作用
	<!-- 拦截器 -->
	<bean id="annotationMethodHandlerAdapter" class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
		<!-- 日期格式转换 -->
        <property name="webBindingInitializer">
         <bean class="cn.itcast.jk.util.DateConverter"/>
        </property>
	</bean>
	
	
 */
public class DateConverter implements WebBindingInitializer {
	public void initBinder(WebDataBinder binder, WebRequest request) {
		SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
		binder.registerCustomEditor(Date.class, new CustomDateEditor(df, true));
		binder.registerCustomEditor(Timestamp.class, new CustomDateEditor(df, true));
	}
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/util/DownloadUtil.java
================================================
package edu.fjnu.online.util;

import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;

import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;

public class DownloadUtil {
	
	/**
	 * @param filePath 要下载的文件路径
	 * @param returnName 返回的文件名
	 * @param response HttpServletResponse
	 * @param delFlag 是否删除文件
	 */
	protected void download(String filePath,String returnName,HttpServletResponse response,boolean delFlag){
		this.prototypeDownload(new File(filePath), returnName, response, delFlag);
	}


	/**
	 * @param file 要下载的文件
	 * @param returnName 返回的文件名
	 * @param response HttpServletResponse
	 * @param delFlag 是否删除文件
	 */
	protected void download(File file,String returnName,HttpServletResponse response,boolean delFlag){
		this.prototypeDownload(file, returnName, response, delFlag);
	}
	
	/**
	 * @param file 要下载的文件
	 * @param returnName 返回的文件名
	 * @param response HttpServletResponse
	 * @param delFlag 是否删除文件
	 */
	public void prototypeDownload(File file,String returnName,HttpServletResponse response,boolean delFlag){
		// 下载文件
		FileInputStream inputStream = null;
		ServletOutputStream outputStream = null;
		try {
			if(!file.exists()) return;
			response.reset();
			//设置响应类型	PDF文件为"application/pdf",WORD文件为:"application/msword", EXCEL文件为:"application/vnd.ms-excel"。  
			response.setContentType("application/octet-stream;charset=utf-8");

			//设置响应的文件名称,并转换成中文编码
			//returnName = URLEncoder.encode(returnName,"UTF-8");
			returnName = response.encodeURL(new String(returnName.getBytes(),"iso8859-1"));	//保存的文件名,必须和页面编码一致,否则乱码
			
			//attachment作为附件下载;inline客户端机器有安装匹配程序,则直接打开;注意改变配置,清除缓存,否则可能不能看到效果
			response.addHeader("Content-Disposition",   "attachment;filename="+returnName);  
			
			//将文件读入响应流
			inputStream = new FileInputStream(file);
			outputStream = response.getOutputStream();
			int length = 1024;
			int readLength=0;
			byte buf[] = new byte[1024];
			readLength = inputStream.read(buf, 0, length);
			while (readLength != -1) {
				outputStream.write(buf, 0, readLength);
				readLength = inputStream.read(buf, 0, length);
			}
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			try {
				outputStream.flush();
			} catch (IOException e) {
				e.printStackTrace();
			}
			try {
				outputStream.close();
			} catch (IOException e) {
				e.printStackTrace();
			}
			try {
				inputStream.close();
			} catch (IOException e) {
				e.printStackTrace();
			}
			//删除原文件
			
			if(delFlag) {				
				file.delete();
			}
		}
	}

	/**
	 * by tony 2013-10-17
	 * @param byteArrayOutputStream 将文件内容写入ByteArrayOutputStream
	 * @param response HttpServletResponse	写入response
	 * @param returnName 返回的文件名
	 */
	public void download(ByteArrayOutputStream byteArrayOutputStream, HttpServletResponse response, String returnName) throws IOException{
		response.setContentType("application/octet-stream;charset=utf-8");
		returnName = response.encodeURL(new String(returnName.getBytes(),"iso8859-1"));			//保存的文件名,必须和页面编码一致,否则乱码
		response.addHeader("Content-Disposition",   "attachment;filename=" + returnName);  
		response.setContentLength(byteArrayOutputStream.size());
		
		ServletOutputStream outputstream = response.getOutputStream();	//取得输出流
		byteArrayOutputStream.writeTo(outputstream);					//写到输出流
		byteArrayOutputStream.close();									//关闭
		outputstream.flush();											//刷数据
	}
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/util/FormatStyle.java
================================================
package edu.fjnu.online.util;


public class FormatStyle {
	
	public static void main(String[] args) {
		// TODO: Add your code here
		FormatStyle formatStyle = new FormatStyle();
		System.out.println(formatStyle.fileSize("10737418240"));
	}


	public String fileSize(String s1) {
		int iPos = 0;
		String s ="";
		StringBuffer sBuf = new StringBuffer();
		try{
			if(s1.trim().compareTo("")==0){
				return "";
			}
			long g = Long.parseLong("1099511627776");//数字太大,JAVA直接写会无法识别,会引起下面比较失败
			//int i = Integer.parseInt(s1);
			double i = Double.parseDouble(s1);

			if(i<=0){
				sBuf.append("");
			}else if(i<1024){
				sBuf.append(i).append(" B");	//四舍五入
				iPos = sBuf.lastIndexOf(".00 B");	
				if(iPos>0){
					sBuf.delete(iPos,sBuf.length()-2);	
				}
			}else if(i<1024*1024){
				sBuf.append(new java.text.DecimalFormat(".00").format(i/1024)).append(" KB");	//四舍五入
				iPos = sBuf.lastIndexOf(".00 KB");	
				if(iPos>0){
					sBuf.delete(iPos,sBuf.length()-3);	
				}
			}else if(i<1024*1024*1024){
				sBuf.append(new java.text.DecimalFormat(".00").format(i/(1024*1024))).append(" M");	//四舍五入
				iPos = sBuf.lastIndexOf(".00 M");
				if(iPos>0){
					sBuf.delete(iPos,sBuf.length()-2);	
				}
			}else{
				sBuf.append(new java.text.DecimalFormat(".00").format(i/(1024*1024*1024))).append(" G");	//四舍五入
				iPos = sBuf.lastIndexOf(".00 G");
				if(iPos>0){
					sBuf.delete(iPos,sBuf.length()-2);	
				}
			}			
		}catch(Exception e){
			return "";
		}
		return sBuf.toString();
	}
	
	
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/util/MD5Util.java
================================================
package edu.fjnu.online.util;

import java.security.MessageDigest;

public class MD5Util {
	public static String getData(String str) {
		try {
			MessageDigest digest = MessageDigest.getInstance("md5");
			byte[] data = digest.digest(str.getBytes());
			StringBuilder sb = new StringBuilder();
			for (int i = 0; i < data.length; i++) {
				String result = Integer.toHexString(data[i] & 0xff);
				String temp = null;
				if (result.length() == 1) {
					temp = "0" + result;
				} else {
					temp = result;
				}
				sb.append(temp);
			}
			return sb.toString();
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return null;
	}
	
	public static void main(String[] args) {
		System.out.println("e10adc3949ba59abbe56e057f20f883e".equals(getData("123456")));
		System.out.println(getData("123456"));
	}
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/util/MybatisUtil.java
================================================
package edu.fjnu.online.util;

import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

public class MybatisUtil {
	private static SqlSessionFactory factory;
	//利用静态块初始化
	static{
		try{
			InputStream inputStream = Resources.getResourceAsStream("MybatisTestConfig.xml");
			Properties properties = Resources.getResourceAsProperties("jdbc.properties");		//获取属性文件
			factory = new SqlSessionFactoryBuilder().build(inputStream, properties);
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
	
	//获得session对象
	public static SqlSession openSession(){
		return factory.openSession();
	}
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/util/TextSimilarityUtil.java
================================================
package edu.fjnu.online.util;

import java.io.UnsupportedEncodingException;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

public class TextSimilarityUtil {

	public static double getSimilarity(String doc1, String doc2) {  
        if (doc1 != null && doc1.trim().length() > 0 && doc2 != null&& doc2.trim().length() > 0) {  
              
            Map<Integer, int[]> AlgorithmMap = new HashMap<Integer, int[]>();  
              
            //将两个字符串中的中文字符以及出现的总数封装到,AlgorithmMap中  
            for (int i = 0; i < doc1.length(); i++) {  
                char d1 = doc1.charAt(i);  
                if(isHanZi(d1)){//标点和数字不处理  
                    int charIndex = getGB2312Id(d1);//保存字符对应的GB2312编码  
                    if(charIndex != -1){  
                        int[] fq = AlgorithmMap.get(charIndex);  
                        if(fq != null && fq.length == 2){  
                            fq[0]++;//已有该字符,加1  
                        }else {  
                            fq = new int[2];  
                            fq[0] = 1;  
                            fq[1] = 0;  
                            AlgorithmMap.put(charIndex, fq);//新增字符入map  
                        }  
                    }  
                }  
            }  
  
            for (int i = 0; i < doc2.length(); i++) {  
                char d2 = doc2.charAt(i);  
                if(isHanZi(d2)){  
                    int charIndex = getGB2312Id(d2);  
                    if(charIndex != -1){  
                        int[] fq = AlgorithmMap.get(charIndex);  
                        if(fq != null && fq.length == 2){  
                            fq[1]++;  
                        }else {  
                            fq = new int[2];  
                            fq[0] = 0;  
                            fq[1] = 1;  
                            AlgorithmMap.put(charIndex, fq);  
                        }  
                    }  
                }  
            }  
              
            Iterator<Integer> iterator = AlgorithmMap.keySet().iterator();  
            double sqdoc1 = 0;  
            double sqdoc2 = 0;  
            double denominator = 0;   
            while(iterator.hasNext()){  
                int[] c = AlgorithmMap.get(iterator.next());  
                denominator += c[0]*c[1];  
                sqdoc1 += c[0]*c[0];  
                sqdoc2 += c[1]*c[1];  
            }  
              
            return denominator / Math.sqrt(sqdoc1*sqdoc2);//余弦计算  
        } else {  
            throw new NullPointerException(" the Document is null or have not cahrs!!");  
        }  
    }  
  
    public static boolean isHanZi(char ch) {  
        // 判断是否汉字  
        return (ch >= 0x4E00 && ch <= 0x9FA5);  
        /*if (ch >= 0x4E00 && ch <= 0x9FA5) {//汉字 
            return true; 
        }else{ 
            String str = "" + ch; 
            boolean isNum = str.matches("[0-9]+");  
            return isNum; 
        }*/  
        /*if(Character.isLetterOrDigit(ch)){ 
            String str = "" + ch; 
            if (str.matches("[0-9a-zA-Z\\u4e00-\\u9fa5]+")){//非乱码 
                return true; 
            }else return false; 
        }else return false;*/  
    }  
  
    /** 
     * 根据输入的Unicode字符,获取它的GB2312编码或者ascii编码, 
     *  
     * @param ch 输入的GB2312中文字符或者ASCII字符(128个) 
     * @return ch在GB2312中的位置,-1表示该字符不认识 
     */  
    public static short getGB2312Id(char ch) {  
        try {  
            byte[] buffer = Character.toString(ch).getBytes("GB2312");  
            if (buffer.length != 2) {  
                // 正常情况下buffer应该是两个字节,否则说明ch不属于GB2312编码,故返回'?',此时说明不认识该字符  
                return -1;  
            }  
            int b0 = (int) (buffer[0] & 0x0FF) - 161; // 编码从A1开始,因此减去0xA1=161  
            int b1 = (int) (buffer[1] & 0x0FF) - 161;   
            return (short) (b0 * 94 + b1);// 第一个字符和最后一个字符没有汉字,因此每个区只收16*6-2=94个汉字  
        } catch (UnsupportedEncodingException e) {  
            e.printStackTrace();  
        }  
        return -1;  
    }  
      
    public static void main(String[] args) {  
        String str1="精英计划教育一个高中生申请美国名校解决方案的整体服务体系。这个项目纵向综合了前期培训申请,签证三个项目;横向结合了教学培训,教学辅导,留学申请,和后期服务等诸多部门的综合项目";  
        String str2="余弦定理算法:doc1 和doc2 相似度为:0.99425095, 用时:33mm";  
        long start=System.currentTimeMillis();    
        double Similarity=TextSimilarityUtil.getSimilarity(str1, str2);  
        System.out.println("用时:"+(System.currentTimeMillis()-start));   
        System.out.println(Similarity);  
    } 
	
}


================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/util/UtilFuns.java
================================================
package edu.fjnu.online.util;

import java.sql.Timestamp;
import java.text.SimpleDateFormat;
import java.text.ParseException;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
import java.util.StringTokenizer;
import java.util.ArrayList;
import java.text.DecimalFormat;

import java.net.URLEncoder;
import java.net.URLDecoder;
import java.util.Date;


/** UtilFuns is a JavaBean.  */
 public class UtilFuns {


  static public String newLine(){
  	return System.getProperty("line.separator"); 
  }
  

	/* 验证数组是否为空 */
	public static boolean arrayValid(Object[] objects) {
		if (objects != null && objects.length > 0) {
			return true;
		} else {
			return false;
		}
	}

	/* 验证list是否为空 */
	public boolean listValid(List list) {
		if (list != null && list.size() > 0) {
			return true;
		} else {
			return false;
		}
	}
  

  //获得年龄
  public int age(String dateStart, String dateEnd) throws Exception{
	  int yearStart = Integer.parseInt(dateStart.substring(0,4));
	  int yearEnd = Integer.parseInt(dateEnd.substring(0,4));
	  return yearEnd-yearStart;
  }
  
  //是否为奇数
  public boolean isOdd(int i){
	  if(i%2==0){
		  return false;
	  }else{
		  return true;
	  }
  }

  public String cutStr(String str,int len){
  	try{
  		str = str.substring(0,len);
  	}catch(Exception e){
  		return str;
  	}
  	return str;
  }
  
  //返回固定长度串,空白地方用空格填充 by tony 20110926
  public String fixSpaceStr(String str,int len){
	  StringBuffer sBuf = new StringBuffer();
	  try{
		  if(str.length()>len){
			  return str;
		  }else{
			  sBuf.append(str);
			  for(int i=0;i<(len-str.length());i++){
				  sBuf.append(" ");
			  }
			  return sBuf.toString();
		  }
	  }catch(Exception e){
		  return str;
	  }
  }
  
  public String fixSpaceStr(int number,int len){
	  return fixSpaceStr(String.valueOf(number),len);
  }
  
  //前缀空格
  public String prefixSpaceStr(String str,int len){
	  StringBuffer sBuf = new StringBuffer();
	  try{
		  if(str.length()>len){
			  return str;
		  }else{
			  for(int i=0;i<(len-str.length());i++){
				  sBuf.append(" ");
			  }
			  sBuf.append(str);
			  return sBuf.toString();
		  }
	  }catch(Exception e){
		  return str;
	  }
  }
  
  //截取字符,如果超过长度,截取并加省略号 by tony 20101108
  public String suspensionStr(String str,int len){
	  try{
		  str = str.substring(0,len) + "...";
	  }catch(Exception e){
		  return str;
	  }
	  return str;
  }

  //url get方式传递参数 by tony 20110328
  public static String joinUrlParameter(List<String> sList){
	  StringBuffer sBuf = new StringBuffer();
	  for(Iterator it = sList.iterator(); it.hasNext();){
		  sBuf.append("&").append(it.next()).append("=").append(it.next());
	  }
	  return sBuf.substring(1, sBuf.length());	//去掉第一个&符号
  }
  
  /** SplitStr 功能:返回分割后的数组
   * <br>输入参数:String str 设置返回系统时间样式
   * <br>输入参数:String SplitFlag 设置分割字符
   * <br>输出参数:string[] 返回分割后的数组
   * <br>作者:陈子枢
   * <br>时间:2003-9-7
   * <br>用法:
   */
/*
      String s[] = SplitStr("asd asd we sd"," ");
      for (int i=0;i<s.length;i++){
        System.out.println(s[i]);
      }
*/
  static public String[] splitStr(String str,String SplitFlag){
    int i =0;
    try{
      StringTokenizer st = new StringTokenizer(str, SplitFlag);
      String tokens[] = new String[st.countTokens()];
      //System.out.println(st.countTokens());
      while (st.hasMoreElements()) {
        tokens[i] = st.nextToken();
        //System.out.println(tokens[i]);
        i++;
      }
      return tokens;
    }catch(Exception e){
      return null;
    }
  }
  
  //类似google那样实现多个关键字的查询,关键字之间用空格或逗号隔开 by tony 20110523
  //支持的分隔符 英文逗号,中文逗号,空格
  public String[] splitFindStr(String str){
	if(str==null){
		return null;
	}
	String[] aStr = null;
	str = str.replaceAll(",", " ");		//英文逗号
	str = str.replaceAll(",", " ");		//中文逗号
	aStr = this.splitStr(str, " ");		//空格  
	return aStr;
 }
 
  /* 阶梯函数,例如,a,b,c 返回 a;a,b;a,b,c by tony 20110330 */
  static public String[] splitStair(String str,String SplitFlag){
	  try{
		  String[] _temp = splitStr(str, SplitFlag);
		  for(int i=1;i<_temp.length;i++){
			  _temp[i] = _temp[i-1]+SplitFlag+_temp[i];
		  }
		  return _temp;
	  }catch(Exception e){
		  return null;
	  }
  }

  /** SplitStr 功能:将数组合并为一个字符串
   * <br>输入参数:String aStr 要合并数组
   * <br>输入参数:String SplitFlag 设置分割字符
   * <br>输出参数:String 要合并数组
   * <br>作者:陈子枢
   * <br>时间:2004-1-9
   * <br>用法:
   */


  static public String joinStr(String[] aStr,String SplitFlag){
    StringBuffer sBuffer = new StringBuffer();
    if (aStr != null){
      for (int i=0;i<aStr.length;i++){
        sBuffer.append(aStr[i]).append(SplitFlag);
      }
      sBuffer.delete(sBuffer.length() - 1, sBuffer.length()); //去掉最后的分隔符 SplitFlag
    }else{
      sBuffer = sBuffer.append("");
    }
    return sBuffer.toString();
  }

  /* 链接,但中间无链接符号 add by tony 20100322 */
  static public String joinStr(String[] aStr){
    StringBuffer sBuffer = new StringBuffer();
    if (aStr != null){
      for (int i=0;i<aStr.length;i++){
        sBuffer.append(aStr[i]);
      }
    }else{
      sBuffer = sBuffer.append("");
    }
    return sBuffer.toString();
  }
  
  /** JoinStr 
   * <br>功能:将数组合并为一个字符串
   * <br>输入参数:String sPrefix 数组元素加的前缀
   * <br>输入参数:String sSuffix 数组元素加的后缀
   * <br>输入参数:String SplitFlag 设置分割字符
   * <br>输出参数:String 合并后的字符串
   * <br>作者:陈子枢
   * <br>时间:2005-3-17
   * <br>用法:
   */


  static public String joinStr(String[] aStr,String sPrefix,String sSuffix,String SplitFlag){
    StringBuffer sBuffer = new StringBuffer();
    if (aStr != null){
      for (int i=0;i<aStr.length;i++){
        sBuffer.append(sPrefix).append(aStr[i]).append(sSuffix).append(SplitFlag);
      }
      sBuffer.delete(sBuffer.length() - SplitFlag.length(), sBuffer.length()); //去掉最后的分隔符 SplitFlag
    }else{
      sBuffer = sBuffer.append("");
    }
    return sBuffer.toString();
  }
  
  /* 返回用于in查询的串  'x','y' */
  static public String joinInStr(String[] aStr){
	  StringBuffer sBuffer = new StringBuffer();
	  if (aStr != null){
		  for (int i=0;i<aStr.length;i++){
			  sBuffer.append("'").append(aStr[i]).append("'").append(",");
		  }
		  sBuffer.delete(sBuffer.length() - 1, sBuffer.length());
	  }else{
		  sBuffer = sBuffer.append("");
	  }
	  return sBuffer.toString();
  }

  /* 链接,但中间无链接符号 add by tony 20100322 */
  static public String joinStr(String[] aStr,String sPrefix,String sSuffix){
    StringBuffer sBuffer = new StringBuffer();
    if (aStr != null){
      for (int i=0;i<aStr.length;i++){
        sBuffer.append(sPrefix).append(aStr[i]).append(sSuffix);
      }
    }else{
      sBuffer = sBuffer.append("");
    }
    return sBuffer.toString();
  }

  /* 链接len(s)个symbol符号 add by tony 20100407 */
  static public String joinStr(String s, String symbol){
	  StringBuffer sBuf = new StringBuffer();
	  for (int i=0;i<s.length();i++){
		  sBuf.append(symbol);
      }
	  return sBuf.toString();
  }
  
  static public String joinStr(int len, String symbol){
	  StringBuffer sBuf = new StringBuffer();
	  for (int i=0;i<len;i++){
		  sBuf.append(symbol);
      }
	  return sBuf.toString();
  }  
  
  /** SysTime 功能:返回系统时间
 * <br>输入参数:int style 设置返回系统时间样式
 * <br>输出参数:string 返回系统时间样式
 * <br>作者:陈子枢
 * <br>时间:2003-6-24
 * <br>存在问题:中文乱码,但JSP中显示正常。
 */
  static public String SysTime(String strStyle){
    String s = "";
    if (strStyle.compareTo("")==0){
    	strStyle = "yyyy-MM-dd HH:mm:ss";	//default
    }
    java.util.Date date=new java.util.Date();
    SimpleDateFormat dformat=new SimpleDateFormat(strStyle);
    s = dformat.format(date);
    return s;
  }

  static public String sysTime(){
    String s = "";
    java.util.Date date=new java.util.Date();
    SimpleDateFormat dformat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    s = dformat.format(date);
    return s;
  }

  static public String sysDate(){
    String s = "";
    java.util.Date date=new java.util.Date();
    SimpleDateFormat dformat=new SimpleDateFormat("yyyy-MM-dd");
    s = dformat.format(date);
    return s;
  }


  /* add by tony 20091113 */
  public static boolean isNull(Object obj){
    try{
      if(obj==null){
    	  return true;
      }
      return false;
    }catch(Exception e){
      return false;
    }
  }
  
  public static boolean isNotNull(Object obj){
    try{
      if(obj==null){
    	  return false;
      }
      return true;
    }catch(Exception e){
      return true;
    }
  }  

  public static boolean isEmpty(String str){
    try{
      if(str==null || str.equals("null") || str.equals("")){
    	  return true;
      }
      return false;
    }catch(Exception e){
      return false;
    }
  }
  
  public static boolean isEmpty(String strs[]){
	  try{
		  if(strs==null || strs.length<=0){
			  return true;
		  }
		  return false;
	  }catch(Exception e){
		  return false;
	  }
  }

  public static boolean isNotEmpty(String str){
    try{
      if(str==null || str.equals("null") || str.equals("")){
    	  return false;
      }
      return true;
    }catch(Exception e){
      return true;
    }
  }

  public static boolean isNotEmpty(Object obj){
    try{
      if(obj==null || obj.toString().equals("null") || obj.toString().equals("")){
    	  return false;
      }
      return true;
    }catch(Exception e){
      return true;
    }
  }
  
  public static boolean isNotEmpty(List obj){
	  try{
		  if(obj==null || obj.size()<=0){
			  return false;
		  }
		  return true;
	  }catch(Exception e){
		  return true;
	  }
  }
  
  /** 功能:用于转换为null的字段。
   * <br>入参:String strvalue 设置要转换的字符串
   * <br>出参:不为“null”的返回原串;为“null”返回""。
   * <br>作者:陈子枢
   * <br>时间:2003-9-16
   * <p>用法:optionFuns.convertNull(String.valueOf(oi.next()))</p>
   */
  public static String convertNull(String strvalue)
  {
    try{
      if(strvalue.equals("null") || strvalue.length()==0){
        return "";
      }else{
        return strvalue.trim();
      }
    }catch(Exception e){
      return "";
    }
  }

  public static String[] convertNull(String[] aContent)
  {
    try{
      for(int i=0;i<aContent.length;i++){
        if(aContent[i].toLowerCase().compareTo("null")==0){
          aContent[i] = "";
        }
      }
      return aContent;
    }catch(Exception e){
      return null;
    }
  }
    
  public static String convertNull(Object o)
  {
    try{
      String strvalue = String.valueOf(o);
      if(strvalue.equals(null) || strvalue.equals("null") || strvalue.length()==0){
        return "";
      }else{
        return strvalue.trim();
      }
    }catch(Exception e){
      return "";
    }
  }
  
  //将为null的数据转为0,用在数值的值从数据库中读出的情况
  public static int ConvertZero(Object o)
  {
    try{
      String s = convertNull(o);
      if(s==""){
        return 0;
      }else{
        return Integer.parseInt(s);
      }
    }catch(Exception e){
      return 0;
    }
  }
  
  //将为null的数据转为0,用在数值的值从数据库中读出的情况
  public static int cvtPecrent(Object o)
  {
    try{
      String s = convertNull(o);
      if(s==""){
        return 0;
      }else{
        return Integer.parseInt(s);
      }
    }catch(Exception e){
      return 0;
    }
  }  
  
  //if 0 then return "";
  public static String FormatZero(Object o)
  {
    try{
      String s = convertNull(o);
      if(s.compareTo("")==0){
        return "";
      }else{
        return String.valueOf(s);
      }
    }catch(Exception e){
      return "";
    }
  }
  
  //if 0 then return "";
  public static String FormatZero(String s)
  {
    try{
      if(s.compareTo("0")==0){
        return "";
      }else{
        return s;
      }
    }catch(Exception e){
      return "";
    }
  }
  
  //patter="####.000"
  public static String FormatNumber(Object o,String patter)
  {
  	double d = 0;
    try {
      d = Double.parseDouble(String.valueOf(o));
      DecimalFormat df = new DecimalFormat(patter);
      return df.format(d);
    }
    catch (Exception e) {
    	System.out.println(e.getMessage());
       	return "";
    }
  }

  
  //patter="####.00"
  public static String FormatNumber(String s)
  {
  	double d = 0;
    try {
      d = Double.parseDouble(s);
      DecimalFormat df = new DecimalFormat(",###.00");
      return df.format(d);
    }
    catch (Exception e) {
    	System.out.println(e.getMessage());
    	return "";
    }
  }
  
  //只用在表格的输出
  public static String ConvertTD(String strvalue)
  {
    try{
      strvalue = strvalue.trim();
      if(strvalue.equals("null") || strvalue.length()==0){
        return "&nbsp;";
      }else{
        return strvalue;
      }
    }catch(Exception e){
      return "&nbsp;";
    }
  }

  public static String ConvertSpaceTD(Object o)
  {
    try{
      String strvalue = String.valueOf(o);
      strvalue = strvalue.trim();
      if(strvalue.equals("null") || strvalue.length()==0){
        return "&nbsp;";
      }else{
        return " " + strvalue.trim();
      }
    }catch(Exception e){
      return "&nbsp;";
    }
  }
  
  /*
    只转中文,不处理null
    读取记录时去掉数据两边的空格;而录入数据时,维持用户的输入,哪怕用户多输入了空格
    原因在于有时可能用户有意输入空格。例如:备注字段原来有内容,现在用户想清空。
  */
  public static String ConvertCH(String strvalue)
  {
    System.out.println("ConvertCH:"+strvalue);
    try{
      if(strvalue==null){
        return "null";
      }else if(strvalue.length()==0){
        return "";      
      }else{
        strvalue = new String(strvalue.getBytes("ISO8859_1"), "GB2312");
        return strvalue;
      }
    }catch(Exception e){
      return "";
    }
  }
  
  public static String ConvertCStr(String strvalue)
  {
    try{
      strvalue = convertNull(strvalue);
      if(strvalue.equals("")){
        return "";
      }else{
        strvalue = new String(strvalue.getBytes("ISO8859_1"), "GB2312");
        return strvalue;
      }
    }catch(Exception e){
      return "";
    }
  }

  public static String ConvertCStr(Object o)
  {
    String strvalue = "";
    try{
      strvalue = String.valueOf(o);
      strvalue = convertNull(strvalue);
      if(strvalue.equals("")){
        return "";
      }else{
        strvalue = new String(strvalue.getBytes("ISO8859_1"), "GB2312");
        return strvalue;
      }
    }catch(Exception e){
      System.out.println("ConvertCStr:" + e.toString());
      return "";
    }
  }
  
  /**
   *UrlEncoder 进行URL编码
   */
    public String UrlEncoder(String s)
    {
        String s1 = "";
        if(s == null)
            return "";
        try
        {
            s1 = URLEncoder.encode(s);
        }
        catch(Exception e)
        {
            System.out.println("URL Encoder :" + e.toString());
            s1 = "";
        }
        return s1;
    }

  /**
   *URLDecoder 进行URL解码
   */
    public String UrlDecoder(String s)
    {
        String s1 = "";
        if(s == null)
            return "";
        try
        {
            s1 = URLDecoder.decode(s);
        }
        catch(Exception e)
        {
            System.out.println("URL Encoder :" + e.toString());
            s1 = "";
        }
        return s1;
    }
    
  /**
   * 将字符串转化成首字母大写,其余字母小写的格式
   * @param source 传入字符串
   * @return String
   */
  public static String format_Aaa(String source) {

    if (source==null) return null;
    if (source.equals("")) return "";

    String a;
    a = source.substring(0, 1);
    a = a.toUpperCase();
    return a + source.substring(1);

  }
  
  /**
   * 将字符串转换成Long型
   * @param param 传入字符串
   * @return 长整形
   */
  public static long parseLong(String param) {
    long l=0;
    try {
      l = Long.parseLong(param);
    }
    catch (Exception e) {
    }

    return l;
  }

  /**
   * 将字符串转换成Float型
   * @param param 传入字符串
   * @return 浮点型
   */
  public static float parseFloat(String param) {
    float l=0;
    try {
      l = Float.parseFloat(param);
    }
    catch (Exception e) {
    }

    return l;
  }

  /**
   * 将字符串转换成Integer型
   * @param param 传入字符串
   * @return 整形
   */
  public static int parseInt(String param) {
    int l=0;
    try {
      l = Integer.parseInt(param);
    }
    catch (Exception e) {
    }

    return l;
  }


	public static Date parseDate(String currDate, String format) {
	    SimpleDateFormat dtFormatdB = null;
	    try {
	        dtFormatdB = new SimpleDateFormat(format);
	        return dtFormatdB.parse(currDate);
	    }catch (Exception e){
	        dtFormatdB = new SimpleDateFormat("yyyy-MM-dd");
	        try {
	            return dtFormatdB.parse(currDate);
	        }catch (Exception ex){}
	    }
	    return null;
	}

	public static Date parseDate(String currDate) {
	    SimpleDateFormat dtFormatdB = null;
	    dtFormatdB = new SimpleDateFormat("yyyy-MM-dd");
	    try {
	        return dtFormatdB.parse(currDate);
	    }catch (Exception e){
	        try {
	            return dtFormatdB.parse(currDate);
	        }catch (Exception ex){}
	    }
	    return null;
	}
	
	public static Date parseTime(String currDate, String format) {
	    SimpleDateFormat dtFormatdB = null;
	    try {
	        dtFormatdB = new SimpleDateFormat(format);
	        return dtFormatdB.parse(currDate);
	    }catch (Exception e){
	        dtFormatdB = new SimpleDateFormat("HH:mm:ss");
	        try {
	            return dtFormatdB.parse(currDate);
	        }catch (Exception ex){}
	    }
	    return null;
	}

	public static Date parseDateTime(String currDate, String format) {
	    SimpleDateFormat dtFormatdB = null;
	    try {
	        dtFormatdB = new SimpleDateFormat(format);
	        return dtFormatdB.parse(currDate);
	    }catch (Exception e){
	        dtFormatdB = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
	        try {
	            return dtFormatdB.parse(currDate);
	        }catch (Exception ex){}
	    }
	    return null;
	}
	
  /**
   * 将字符串转换成Double型
   * @param param 传入字符串
   * @return double型
   */
  public static double parseDouble(String param) {
    double l=0;
    try {
      l = Double.parseDouble(param);
    }
    catch (Exception e) {
    }

    return l;
  }

  /**
   * s是否存在ArrayList中,存在返回数组下标,不存在返回-1
   */
  public static int existElements(String s,ArrayList aList) {
    try{
      for (int i = 0; i < aList.size(); i ++) {
        if (s.equals(aList.get(i))){
          return i;
        }
      }
    }catch(Exception e){   }
    return -1;
  }

  /**
   * s是否存在String数组中,存在返回数组下标,不存在返回-1
   */
  public static int existElements(String s,String[] a) {
    try{
      for (int i = 0; i < a.length; i ++) {
        if (s.compareTo((a[i].trim()))==0){  
          return i;
        }
      }
    }catch(Exception e){   }
    return -1;
  }
  
  /**
   * 判断对象o是否存在于set对象集合中 create by tony 20090611
   */  
  public static boolean existElements(Object o, Set set) {
	  boolean isExists = false;
	  Iterator it = set.iterator();
	  while(it.hasNext())
	  {
	       Object obj = it.next();
	       if(o.equals(obj))
	       {
	    	   isExists=true;
	    	   break;
	       }
	  }
	  return isExists;
  }

  /**
   * s是否存在ArrayList中,存在返回数组下标,不存在返回-1
   */
  public static int IsIndexOfElements(String s,ArrayList aList) {
    try{
      String s1 = "";
      for (int i = 0; i < aList.size(); i ++) {
        s1 = String.valueOf(aList.get(i));
        if (s1.indexOf(s)!=-1){
          return i;
        }
      }
    }catch(Exception e){   }
    return -1;
  }
  
  /**
   * 将ArrayList转换为一维String数组,并把其中的null换成空字符串
   * @param aList 传入的Arraylist
   */
  public String[] ArrayListToString(ArrayList aList) {
    String[] s = new String[aList.size()];
    for (int i = 0; i < aList.size(); i ++) {
      s[i] = this.convertNull(aList.get(i));
    }
    return s;
  }
  
  
  /**
   * 将数组中的null换成空字符串
   * @param al 传入的Arraylist,同时也是输出结果
   */
  public static void formatArrayList(ArrayList al) {

    for (int i = 0; i < al.size(); i ++) {
      if (al.get(i) == null)
        al.set(i, "");
    }

  }

    /** ComboList 功能:选定在下拉列表框中与查找到数据,相符的那一项内容
     * <br>输入参数:String CurrentValue 查找出的数据库中的数据
     *               String[] content 需要输出的所有下拉列表框的内容
     * <br>输出参数:返回下拉列表
      * <br>注意事项:values为0开始,而且中间不能断开
     */
    public String ComboList(String CurrentValue, String[] content) {
      int i = 0;
      StringBuffer sBuf = new StringBuffer();
      String selected = " selected";
      try{
        sBuf.append("<option value='' selected>--请选择--</option>");
        for (i = 0; i < content.length; i++) {
          sBuf.append("\n<option value='").append(i).append("'");
          if (CurrentValue.compareTo(String.valueOf(i)) == 0) {
            sBuf.append(selected);
          }
          sBuf.append(">").append(content[i]).append("</option>");
        }
        return sBuf.toString();
      }catch(Exception e){
        return "";
      }
    }

    public String ComboListMust(String CurrentValue, String[] content) {
      int i = 0;
      StringBuffer sBuf = new StringBuffer();
      String selected = " selected";
      try{
        for (i = 0; i < content.length; i++) {
          sBuf.append("\n<option value='").append(i).append("'");
          if (CurrentValue.compareTo(String.valueOf(i)) == 0) {
            sBuf.append(selected);
          }
          sBuf.append(">").append(content[i]).append("</option>");
        }
        return sBuf.toString();
      }catch(Exception e){
        return "";
      }
    }
    
    /** ComboList 功能:选定在下拉列表框中与查找到数据,相符的那一项内容
     * <br>输入参数:String CurrentValue 查找出的数据库中的数据
     *               String[] values  需要输出的所有下拉列表框的内容所对应的值
     *               String[] content 需要输出的所有下拉列表框的内容
     * <br>输出参数:返回下拉列表
     * <br>修改:陈子枢
     * <br>修改时间:2003-9-4
     * <br>注意事项:values和content数组个数必须相同.适合从数据库中取值
	<%
	  String[] aContextOPERATE_TYPE = {"定检","轮换","抽检"};
	  out.print(optionFuns.ComboList("",aContextOPERATE_TYPE,aContextOPERATE_TYPE));
	%>
     */
    public String ComboList(String CurrentValue,String[] values, String[] content) {
      int i = 0;
      StringBuffer sBuf = new StringBuffer();
      String selected = " selected";

      try{
    	if(CurrentValue==null){
    		CurrentValue = "";
    	}
        sBuf.append("<option value='' selected>--请选择--</option>");
        for (i = 0; i < content.length; i++) {
          sBuf.append("<option value='").append(values[i]).append("'");
          if (CurrentValue.compareTo(values[i]) == 0) {
            sBuf.append(selected);
          }
          sBuf.append(">").append(content[i]).append("</option>");
        }
        return sBuf.toString();
      }catch(Exception e){
        return "";
      }
    }

    public String ComboListMust(String CurrentValue,String[] values, String[] content) {
      int i = 0;
      StringBuffer sBuf = new StringBuffer();
      String selected = " selected";

      try{
        for (i = 0; i < content.length; i++) {
          sBuf.append("<option value='").append(values[i]).append("'");
          if (CurrentValue.compareTo(values[i]) == 0) {
            sBuf.append(selected);
          }
          sBuf.append(">").append(content[i]).append("</option>");
        }
        return sBuf.toString();
      }catch(Exception e){
        return "";
      }
    } 
    
  /** StrToTimestamp 功能:将字符串转换为Timestamp 。
   * <br>输入参数:String timestampStr 设置要转换的字符串
   *              String pattern 要转换的format
   * <br>输出参数:如果格式正确返回格式后的字符串。
   *              不正确返回系统日期。
   * <br>作者:陈子枢
   * <br>时间:2003-8-26
   */
  public static Timestamp StrToTimestamp(String timestampStr,String pattern) throws ParseException {
    java.util.Date date = null;
    SimpleDateFormat format = new SimpleDateFormat(pattern);
    try {
      date = format.parse(timestampStr);
    } catch (ParseException ex) {
      throw ex;
    }
    return date == null ? null : new Timestamp(date.getTime());
  }

  //ex:utilFuns.StrToDateTimeFormat("2005-12-01 00:00:00.0,"yyyy-MM-dd")
  public static String StrToDateTimeFormat(String timestampStr,String pattern) throws ParseException {
    String s ="";
    try{
      s = String.valueOf(StrToTimestamp(timestampStr, pattern));
      s = s.substring(0,pattern.length());
    }catch(Exception e){ }
    return s;
  }

  //ex:utilFuns.StrToDateTimeFormat("2005-12-01 00:00:00.0,"yyyy-MM-dd")
  public static String dateTimeFormat(Date date,String pattern) throws ParseException {
    String s ="";
    try{
        SimpleDateFormat dformat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        s = dformat.format(date);
        s = String.valueOf(StrToTimestamp(s, pattern));
        s = s.substring(0,pattern.length());
    }catch(Exception e){ }
    return s;
  }
  public static String dateTimeFormat(Date date) throws ParseException {
	  String s ="";
	  try{
		  SimpleDateFormat dformat = new SimpleDateFormat("yyyy-MM-dd");
		  s = dformat.format(date);
		  s = String.valueOf(StrToTimestamp(s, "yyyy-MM-dd"));
		  s = s.substring(0,"yyyy-MM-dd".length());
	  }catch(Exception e){ }
	  return s;
  }
  
  //add by tony 20100228 转换中文 格式必须为:"yyyy-MM-dd HH:mm:ss"的一部分
  public static String formatDateTimeCN(String date) throws ParseException {
	  String s ="";
	  try{
		  if(UtilFuns.isEmpty(date)){
			  return "";
		  }
		  if(date.indexOf(".")>-1){
			  date = date.substring(0, date.indexOf("."));
		  }
		  if(date.length()==4){			//yyyy
			  s = date+"年";
		  }else if(date.length()==7){	//yyyy-MM
			  s = date.replaceAll("-0", "-").replaceFirst("-", "年")+"月";
		  }else if(date.length()==10){	//yyyy-MM-dd
			  s = date.replaceAll("-0", "-").replaceFirst("-", "年").replaceFirst("-", "月")+"日";
		  }else if(date.length()==2){	//HH
			  s = date+"时";
		  }else if(date.length()==5){	//HH:mm
			  s = date.replaceAll(":0", ":").replaceFirst(":", "时")+"分";
		  }else if(date.length()==8){	//HH:mm:ss
			  s = date.replaceAll(":0", ":").replaceFirst(":", "时").replaceFirst(":", "分")+"秒";
		  }else if(date.length()==13){	//yyyy-MM-dd HH
			  s = date.replaceAll("-0", "-").replaceFirst("-", "年").replaceFirst("-", "月").replaceAll(" 0", " ").replaceFirst(" ", "日")+"时";
		  }else if(date.length()==16){	//yyyy-MM-dd HH:mm
			  s = date.replaceAll("-0", "-").replaceFirst("-", "年").replaceFirst("-", "月").replaceAll(" 0", " ").replaceFirst(" ", "日").replaceAll(":0", ":").replaceFirst(":", "时")+"分";
		  }else if(date.length()==19){	//yyyy-MM-dd HH:mm:ss
			  s = date.replaceAll("-0", "-").replaceFirst("-", "年").replaceFirst("-", "月").replaceAll(" 0", " ").replaceFirst(" ", "日").replaceAll(":0", ":").replaceFirst(":", "时").replaceFirst(":", "分")+"秒";
		  }
		  s = s.replaceAll("0[时分秒]", "");	//正则 0时0分0秒的都替换为空
	  }catch(Exception e){ }
	  
	  return s;
  }
  
  //add by tony 2011-07-26 返回英文格式日期 oct.10.2011
  public static String formatDateEN(String date) throws ParseException {
	  String s ="";
	  int whichMonth = 1;
	  try{
		  if(UtilFuns.isEmpty(date)){
			  return "";
		  }
		  String[] aString = date.replaceAll("-0", "-").split("-");
		  whichMonth = Integer.parseInt(aString[1]);
		  if(whichMonth==1){
			  s = "Jan";
		  }else if(whichMonth==2){
			  s = "Feb";
		  }else if(whichMonth==3){
			  s = "Mar";
		  }else if(whichMonth==4){
			  s = "Apr";
		  }else if(whichMonth==5){
			  s = "May";
		  }else if(whichMonth==6){
			  s = "Jun";
		  }else if(whichMonth==7){
			  s = "Jul";
		  }else if(whichMonth==8){
			  s = "Aug";
		  }else if(whichMonth==9){
			  s = "Sept";
		  }else if(whichMonth==10){
			  s = "Oct";
		  }else if(whichMonth==11){
			  s = "Nov";
		  }else if(whichMonth==12){
			  s = "Dec";
		  }
		  s = s+"."+aString[2]+","+aString[0];
		  
	  }catch(Exception e){ }
	  
	  return s;
  }

  //返回年月格式 2010-7
  public String formatShortMonth(String strDate){
	  return strDate.substring(0,7).replaceAll("-0", "-");
  }
  
  //返回年月格式 2010-07
  public String formatMonth(String strDate){
	  return strDate.substring(0,7);
  }
  
  
  
  //删除最后1个字符
  public static String delLastChar(String s){
    try{
      if(s.length()>0){
        s = s.substring(0,s.length()-1);  
      }      
    }catch(Exception e){
      return "";
    }
    return s;
  }
  
  //删除最后len个字符
  public static String delLastChars(String s,int len){
    try{
      if(s.length()>0){
        s = s.substring(0,s.length()-len);  
      }      
    }catch(Exception e){
      return "";
    }
    return s;
  }
  
  //替换网页用字符-配合FCKEditor使用 .replaceAll("'","&apos;") //for viewpage
  public String htmlReplaceAll(String s){
	  try{
		  StringBuffer sBuf = new StringBuffer();
		  //.replaceAll("\\\\","\\\\\\\\").replaceAll("&","&amp;")
		  sBuf.append(s.replaceAll(" ","&nbsp;").replaceAll("<","&lt;").replaceAll(">","&gt;").replaceAll("\"","&quot;").replaceAll("\n","<br\\>"));
		  return sBuf.toString();
	  }catch(Exception e){
		  return "";
	  }
  }
  
  //for viewpage by jstl/make html
  public static String htmlNewline(String s){
	  try{
		  //如不替换空格,html解释时会自动把多个空格显示为一个空格,这样当我们通过空格来布局时就出现textarea中和html页面展现不一致的情况 tony
		  //s.replaceAll(" ","&nbsp;") 不能进行空格的替换,否则页面内容中如果有<img src="xxx.jpg" \>等标签,内容就会显示乱;<img&nbsp;src="xxx.jpg"nbsp;\>
		  return s.replaceAll(" ","&nbsp;").replaceAll("\n","<br\\>");  
	  }catch(Exception e){
		  return "";
	  }
  }
  

  /** getPassString 功能:用于转换为后几位的为*。
   * <br>输入参数:String strvalue 设置要转换的字符串
   *              int Flag 位数。
   * <br>输出参数:。
   * <br>作者:范波
   * <br>时间:2006-8-7
   * <br>存在问题:
   * <br>用法:
   *          <%=utilFuns.ConvertString("abcdef",3)%>
   */
  public static String getPassString( String strvalue, int Flag ) {
    try {
      if ( strvalue.equals("null") || strvalue.compareTo("")==0){
        return "";
      } else {
        int intStrvalue = strvalue.length();
        if ( intStrvalue > Flag ) {
          strvalue = strvalue.substring( 0, intStrvalue - Flag );

        }
        for ( int i = 0; i < Flag; i++ ) {
          strvalue = strvalue + "*";
        }

        //System.out.print( "strvalue:" + strvalue );
        return strvalue;
      }
    }
    catch (Exception e) {
      return strvalue;
    }
  }
  
 /** getPassString 功能:用于转换为后几位的为*。
 * <br>输入参数:String strvalue 设置要转换的字符串
 *              int Flag 起位数。
 *              int sFlag 末位数。 
 * <br>输出参数:。
 * <br>作者:范波
 * <br>时间:2006-8-7
 * <br>存在问题:
 * <br>用法:
 *          <%=optionFuns.getPassString(String.valueOf(oi.next()),3)%>
 */
public static String getPassString( String strvalue, int Flag, int sFlag ,int iPassLen ) {
  try {
    
    if ( strvalue.equals( "null" ) ) {
      return "";
    } else {
      String strvalue1="";
      String strvalue2="";
      int intStrvalue = strvalue.length();
      if(sFlag>=Flag){
        if ( intStrvalue > Flag ) {
          strvalue1 = strvalue.substring( 0,  Flag );
          strvalue2 = strvalue.substring(  sFlag, intStrvalue );
        } else {
          strvalue1 = "";
          strvalue2 = "";
        }
        for ( int i = 0; i < iPassLen; i++ ) {
          strvalue1 = strvalue1 + "*";
        }
        strvalue=strvalue1+strvalue2;
      }
      //System.out.print( "strvalue:" + strvalue );
      return strvalue;
    }
  }
  catch (Exception e) {
    return strvalue;
  }
  } 
  
  
  /* 
	by czs 2006-8-17
	OPTION:
		取得字符串iStartPos位置到iEndPos位置,将中间这部分转换iPatternLen个sPattern
	EXSAMPLE:
		getPatternString("CHEN ZISHU",5,7,"*",3)
		RESULT: CHEN ***SHU

		getPatternString("CHEN ZISHU",10,0,".",3)
		RESULT: CHEN******

  */
  public static String getPatternString( String s, int iStartPos, int iEndPos, String sPattern, int iPatternLen ) {
    try {
	  if (iEndPos==0) {
		iEndPos = s.length();
	  }
	  
	  String sStartStr = "";
	  String sCenterStr = "";
	  String sEndStr = "";
	  
      if ( s.equals("null")){
        return "";
      } else {
        int ints = s.length();
        if ( ints > iStartPos ) {
          sStartStr = s.substring( 0, iStartPos );
        }else{
          return s;
        }
		if ( ints > iEndPos) {
          sEndStr = s.substring( iEndPos, ints );
		}
        for ( int i = 0; i < iPatternLen; i++ ) {
          sCenterStr = sCenterStr + sPattern;
        }
        return sStartStr + sCenterStr + sEndStr;
      }
    }
    catch (Exception e) {
      System.out.println(e);
      return s;
    }
  }

  public static String getPatternString( String s, int iStartPos, String sPattern, int iPatternLen ) {
    return getPatternString(s,iStartPos,0,sPattern,iPatternLen);
  }

  public static String getPatternString( String s, int iStartPos, String sPattern ) {
    return getPatternString(s,iStartPos,0,sPattern,3);
  }

  
    /** getQQString 功能:用于转换为后几位的为*。
* <br>输入参数:String strvalue 设置要转换的字符串
*               
* <br>输出参数:。
* <br>作者:范波
* <br>时间:2006-8-7
* <br>存在问题:
* <br>用法:
*          <%=optionFuns.getQQString(String.valueOf(oi.next()))%>
*/
public static String getQQString( String strvalue ) {
	try {
	  String QQ="";
	  if ( strvalue.equals("") ) {
	    return "";
	  } else {
	     QQ="<img src=\"http://wpa.qq.com/pa?p=1:"+strvalue
	        +":4\">"
	        +" <SPAN title=\"有事叫我!\" style=\"CURSOR: hand\""
	        +" onclick=\"window.open('http://wpa.qq.com/msgrd?V=1&amp;Uin="+strvalue
	        +"&amp;Site=21pan&amp;Menu=yes')\">"+strvalue+"</SPAN>";
	    }
	    strvalue=QQ;
	    //System.out.print( "strvalue:" + strvalue );
	    return strvalue;
	  
	}
	
	catch (Exception e) {
	  return strvalue;
	}
}

	public String getNoExistString(String allString, String existString){
		return this.getNoExistString(this.splitStr(allString, ","), existString);
	}
	
	/* 返回existString中的每个字串不在allString中的 */
	public String getNoExistString(String[] allString, String existString){
		existString = existString + ",";
		if(allString==null&&allString.length==0){
			return "";
		}
		StringBuffer sBuf = new StringBuffer();
		for(int i=0;i<allString.length;i++){
			if(existString.indexOf(allString[i])==-1){
				sBuf.append(allString[i]).append(",");
			}
		}
		if(sBuf.length()>1){
			sBuf.delete(sBuf.length()-1, sBuf.length());
		}
		return sBuf.toString();
	}
	
  public static void main(String[] args) throws Exception {

//	  
//	  
//	  java.util.List aList = new ArrayList();
//	  System.out.println(UtilFuns.isNotEmpty(aList));
//	  
//	  System.out.println(uf.formatDateTimeCN("2011"));
//	  System.out.println(uf.formatDateTimeCN("2011-01"));
//	  System.out.println(uf.formatDateTimeCN("2011-01-02"));
//	  System.out.println(uf.formatDateTimeCN("2011-01-02 03"));
//	  System.out.println(uf.formatDateTimeCN("2011-01-02 13:05"));
//	  System.out.println(uf.formatDateTimeCN("2011-01-02 13:05:05"));
//	  System.out.println(uf.formatDateTimeCN("03"));
//	  System.out.println(uf.formatDateTimeCN("13:05"));
//	  System.out.println(uf.formatDateTimeCN("13:05:05"));
	  
//	  UtilFuns uf = new UtilFuns();
//	  System.out.println(uf.getNoExistString("1,2,3", "1,2,3,4"));
//	  System.out.println(uf.getNoExistString("安全,生产,营销", "生产,营销"));
//	  System.out.println("finish!");
	  
//	  Set<String> set = new HashSet<String>();
//	  set.add("abc");
//	  set.add("xyz"); 
//	  set.add("abc");  
//	  for(Iterator<String> it = set.iterator();it.hasNext();){
//	   System.out.println(it.next());   
//	  } 
	
  	/*
    System.out.println(SysTime("yyyy-MM-dd"));
    System.out.println(SysTime("yyyy-MM-dd HH:mm:ss"));
    
    System.out.println(Double.parseDouble("12.11"));
    System.out.println(FormatNumber("12.11000000000f"));
    
    System.out.println(getPatternString("CHEN ZISHU",8,0,".",3));
    */
    
    //System.out.println(SysTime("yyyy年MM月"));
    //System.out.println(SysTime("yyyyMM"));
    //System.out.println(ConvertSpaceTD(""));
    //System.out.println(ConvertTD(""));
    
		/* process the stat data Start 
		Statement stmt1 = conn.createStatement(); 
		String sTableName = find_Type;
		String sUserName = findName;
		StringBuffer sBuffer = new StringBuffer();

		//Step 1 clear Table userState
		sBuffer.append("delete * from userStat;");

		//Step 2 read username from User_P and write inputnum in it
		sBuffer.append("select User_P.loginname,").append(sTableName).append(".createby,count(").append(sTableName).append(".createby)")
			.append(" from ").append(sTableName).append("")
			.append(" right join")
			.append(" User_P")
			.append(" on User_P.loginname=").append(sTableName).append(".createby")
			.append(" where 1=1");
		if (find_Name.compareTo("")!=0){
			sBuffer.append(" and ").append(sTableName).append(".createby='").append(sTableName).append("'");
		}
		if (find_DateStart.compareTo("")!=0){
			sBuffer.append(" and createdate<='").append(find_DateStart).append(" 00:00:00'");
		}
		if (find_DateStart.compareTo("")!=0){
			sBuffer.append(" and createdate>='").append(find_DateEnd).append(" 23:59:59'");
		}
		sBuffer.append(" group by ").append(sTableName).append(".createby")
			.append(";");


		//Step 3 read updatenum
		sBuffer.append("select count(updateby) from ").append(sTableName).append("")
			.append(" where ").append(sTableName).append(".updateby=''")
			.append(" and updatedate<='").append(find_DateStart).append(" 00:00:00'")
			.append(" and updatedate>='").append(find_DateEnd).append(" 23:59:59'")
			.append(";");

		//Step 4 update the userStat.updatenum value
		sBuffer.append("update userStat set updatenum='3' where updateby='").append(sTableName).append("'")
			.append(";");

		sBuffer.toString();

		 process the stat data End */

/*    
    try{
      System.out.println(SysDate());
       System.out.println(StrToDateTimeFormat("2003-08-21 18:28:47", "yyyy-MM-"));
    }catch(Exception e){
       
    }
    String s[] = SplitStr("asd,asd,we,sd",",");
    for (int curLayNum=0;curLayNum<s.length;curLayNum++){
      System.out.println(s[curLayNum]);
    }
    System.out.println(JoinStr(s,","));

    System.out.println(ReturnSysTime("yyyy-MM-dd"));
    //System.out.println(CoverDate(ReturnSysTime("yyyy-MM-dd HH:mm:ss"),"yyyy-MM-dd"));
    try {
      System.out.println(StrToTimestamp("2003-08-21 18:28:47", "yyyy-MM"));
      System.out.println(StrToDateTimeFormat("2003-08-21 18:28:47", "yyyy-MM"));
    }
    catch (ParseException ex) {
    }

    try {
      System.out.println(StrToTimestamp("2003-08-26", "yyyy-MM-dd"));
    }
    catch (ParseException ex) {
      System.out.println("StrToTimestamp error.");
    }*/
	  
	  System.out.println("finish!");
  }

/*
<script language=JavaScript>

  var today = new Date();
  var strDate = (today.getFullYear() + "年" +
(today.getMonth() + 1) + "月" + today.getDate() + "日 ");
  var n_day = today.getDay();
  switch (n_day)
  {
  case 0:{
  strDate = strDate + "星期日"
  }break;
  case 1:{
  strDate = strDate + "星期一"
  }break;
  case 2:{
  strDate = strDate + "星期二"
  }break;
  case 3:{
  strDate = strDate + "星期三"
  }break;
  case 4:{
  strDate = strDate + "星期四"
  }break;
  case 5:{
  strDate = strDate + "星期五"
  }break;
  case 6:{
  strDate = strDate + "星期六"
  }break;
  case 7:{
  strDate = strDate + "星期日"
  }break;
  }
  document.write(strDate);

</script>
*/

	public String replaceLast(String string, String toReplace, String replacement) {
		int pos = string.lastIndexOf(toReplace);
		if (pos > -1) {
			return string.substring(0, pos) + replacement + string.substring(pos + toReplace.length(), string.length());
		} else {
			return string;
		} 
	} 
	
	public static String getROOTPath(){
		UtilFuns uf = new UtilFuns();
		return uf.getClass().getResource("/").getPath().replace("/WEB-INF/classes/", "/").substring(1);
	}
	public String getClassRootPath(){
		return this.getClass().getResource("/").getPath();
	}
}

================================================
FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/util/file/FileUtil.java
================================================
package edu.fjnu.online.util.file;

import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.nio.channels.FileChannel;
import java.util.ArrayList;
import java.util.List;

import edu.fjnu.online.util.FormatStyle;
import edu.fjnu.online.util.UtilFuns;

public class FileUtil {

  /* ======================================== *
   * Class Methods
   * ======================================== */

   
	public String getFileExt(String s){
	    String s1 = new String();
	    int i = 0;
	    int j = 0;
	    if(s == null)
	        return null;
	    i = s.lastIndexOf(46) + 1;
	    j = s.length();
	    s1 = s.substring(i, j);
	    if(s.lastIndexOf(46) > 0)
	        return s1.toLowerCase();
	    else
	        return "";
	}
	

    private String getNameWithoutExtension(String fileName){
        return fileName.substring(0, fileName.lastIndexOf("."));
    }
	
	public boolean isImgFile(String file)
	{
		if(UtilFuns.isNotEmpty(file)){
			String s1 = "."+this.getFileExt(file);
			if(".jpg.jpeg.bmp.gif.png".indexOf(s1)>-1){
				return true;
			}
		}
		return false;
	}
	
	public String getFileName(String s){
		try{
			s = s.replaceAll("/", "\\\\");
			int fileIndex= s.lastIndexOf("\\")+1;
			return s.substring(fileIndex,s.length());
		}catch(Exception e){
			return "";
		}
	}
	
	public String getFilePath(String s){
		try{
			s = s.replaceAll("/", "\\\\");
			int fileIndex= s.lastIndexOf("\\");
			return s.substring(0,fileIndex);
		}catch(Exception e){
			return "";
		}
	}
	
	/* 目录下已经有同名文件,则文件重命名,增加文件序号 add by tony 20110712 */
	public String newFile(String sPath, String sFile){
		String newFileName = new String();
		String withoutExt = new String();
		File curFile = new File(sPath + "\\" + sFile);
		if (curFile.exists()) {
			for(int counter = 1; curFile.exists(); counter++){
				withoutExt = this.getNameWithoutExtension(curFile.getName());
				if(withoutExt.endsWith(counter-1 + ")")){
					withoutExt = withoutExt.substring(0,withoutExt.indexOf("("));		//idea
				}
                newFileName = withoutExt + "(" + counter + ")" + "." + getFileExt(curFile.getName());
                curFile = new File(sPath + "\\" + newFileName);
            }
		}else{
			newFileName = curFile.getName();
		}
		return newFileName;
	}
    
  /* 只清空文件夹,不删除文件夹 */
  public static synchronized void clearDir(String dir_path)
   throws FileNotFoundException {
    
    File file = new File(dir_path);
    if (!file.exists()) {
      throw new FileNotFoundException();
    }
    if (file.isDirectory()) {
      File[] fe = file.listFiles();
      for (int i = 0; i < fe.length; i++) {
        deleteFiles(fe[i].toString());
        fe[i].delete(); //删除已经是空的子目录
      }
    }
  }
   
  //ex: deleteDir(new File("c://aaa"));
  /* 清空文件夹,并删除文件夹 */
  public static synchronized void deleteDir(String dir_path)
   throws FileNotFoundException,IOException {
	deleteDir(new File(dir_path));
  }
  
  //ex: deleteDir(new File("c://aaa"));
  /* 清空文件夹,并删除文件夹 */
  public static synchronized void deleteDir(File f)
  throws FileNotFoundException,IOException {
	  
	  if(!f.exists()){//文件夹不存在不存在
		  throw new IOException("指定目录不存在:"+f.getName());
	  }
	  boolean rslt=true;//保存中间结果
	  if(!(rslt=f.delete())){//先尝试直接删除
		  //若文件夹非空。枚举、递归删除里面内容
		  File subs[] = f.listFiles();
		  for (int i = 0; i <= subs.length - 1; i++) {
			  if (subs[i].isDirectory())
				  deleteDir(subs[i]);//递归删除子文件夹内容
			  rslt = subs[i].delete();//删除子文件夹本身
		  }
		  rslt = f.delete();//删除此文件夹本身
	  }
	  //if(!rslt)
	  // throw new IOException("无法删除:"+f.getName());
	  //return;
  }
     
  //路径中的多层目录,如果不存在,则建立(mkdir-只可建最后一层目录)
  public static synchronized void makeDir(String dirPath)
   throws FileNotFoundException {
	String s = "";

	dirPath = dirPath.replaceAll("\\t","/t"); 	//replace tab key
	dirPath = dirPath.replaceAll("\\\\","/");
	String[] aPath = dirPath.split("/");
	for (int i=0;i<aPath.length;i++){
		s = s + aPath[i] + "/";
		//System.out.println(s);
	    File d = new File(s);
		if(!d.exists()){
			d.mkdir();
		}
	}
  }

  //修改目录名称或文件名称 dir and file
  public static synchronized void rename(String sOld,String sNew)
   throws FileNotFoundException {
   	boolean b = false;
	File d = new File(sOld);
	if(d.exists()){
		b = d.renameTo(new File(sNew));
	}
  }
  
  public static synchronized String formulaDirName(String dirName){
	  dirName = dirName.replaceAll("/","\\\\");
	  return dirName;
  }
  
  public static synchronized String formulaPath(String dirName){
	  dirName = dirName.replaceAll("\\\\","/");
	  return dirName;
  }

  public static synchronized String lastDir(String dir_path){
    if(dir_path.trim().compareTo("")==0){
      return "";
    }else{
      //两个位置,谁后取谁。因为路径中常包含这两种标识
      int i= dir_path.lastIndexOf("\\")>dir_path.lastIndexOf("/")?dir_path.lastIndexOf("\\"):dir_path.lastIndexOf("/");
      if(i>0){
    	  return dir_path.substring(i);
      }else{
    	  return "";
      }
    }
  }
  
  //删除给定的文件
  public static void deleteFile(String FileName) {
    File f2 = new File(FileName);
    f2.delete(); //del file
    f2 = null;
  }
  
/*
 *删除目录下的所有文件
 **/
  public static boolean deleteFiles(String dir) {
    if(dir==null || "".equals(dir))
      return true;

    File f0 = new File(dir);
    if( !f0.isDirectory() )
      return false;
    File[] files = f0.listFiles();
    boolean status = true;
    for(int i=0; i<files.length; i++) {
      File f = files[i];
      if( !f.isFile() )
        continue;

      boolean b = f.delete();
      status = ( status && b );
    }
    return status;
  }


  /** Deletes each file in <tt>files</tt> which is under <tt>path</tt>.
   * It does not delete directory.
   *
   * @param path
   * @param files
   * @return <tt>true</tt> if and only if all the files are successfully
   *   deleted; <tt>false</tt> otherwise.
   */
  public static boolean deleteFiles(String path, String[] files) {
    if(path==null || files==null)
      return true;

    boolean status = true;
    for(int i=0; i<files.length; i++) {
      File f = new File(path, files[i]);
      if( !f.isFile() )
        continue;
		//?  (f.getAbsoluteFile()).
      boolean b = f.delete();
      status = ( status && b );
    }
    return status;
  }
  
  public static boolean deleteFiles(List files) {
	  
    if(files==null || files.size()<=0)
      return true;
    
    String fileName = "";
    boolean status = true;
    for(int i=0; i<files.size(); i++) {
      fileName = (String)files.get(i);
      File f = new File(fileName);
      if( !f.isFile() )
        continue;
		//?  (f.getAbsoluteFile()).
      boolean b = f.delete();
      status = ( status && b );
    }
    return status;
  }

  /** Copies byte-content of <tt>f</tt> to <tt>os</tt>.
   *
   * @param f
   * @param os
   * @throws IOException
   */
  public static void fileToOutputStream(File f, OutputStream os)
      throws IOException {
    //
    InputStream is = new BufferedInputStream( new FileInputStream(f) );
    byte[] barr = new byte[1024];
    int count;
    while(true) {
      count = is.read(barr);
      if(count == -1)
        break;

      os.write(barr, 0, count);
    }
    is.close();
    return;
  }
  //读日志文件 "c:\\Log.txt"
  //输入参数:sFile = Path + FileName 文件路径+文件名称
  public List<String> readTxtFile(String sFile) {
	String str = "";
    List<String> sList = new ArrayList<String>();
    try {
      FileReader fr = new FileReader(sFile);
      BufferedReader bfr = new BufferedReader(fr);
      while((str = bfr.readLine())!=null){
    	  sList.add(str);
      }
      fr.close();
    }catch (IOException ex){System.out.println("readTxtFile IOException Error."+ex.getMessage());
    }catch (Exception ex) {System.out.println("readTxtFile Exception Error."+ex.getMessage());}
    return sList;
  }
  
  public String WriteTxt(String sPath,String sFile,String sContent) {
  	String s = "";
  	File d=new File(sPath);//建立代表Sub目录的File对象,并得到它的一个引用
  	if(!d.exists()){//检查Sub目录是否存在
  		d.mkdir();//建立Sub目录
  	}
  	
	try {
      FileWriter fw = new FileWriter(sPath + "\\" + sFile,true);
      BufferedWriter bfw = new BufferedWriter(fw);
      bfw.write(sContent);
      bfw.flush();
      fw.close();
    }catch (IOException ex){ s = "WriteTxt IOException Error."; 
    }catch (Exception ex) { s = "WriteTxt Exception Error.";}
    
	return s;
  }
  
  /* 创建新文本文件,如果文件已经存在则覆盖 */
  public String createTxt(String sPathFile,String sContent) throws FileNotFoundException {
  	String s = "";
  	String sPath = this.getFilePath(sPathFile);
  	String sFile = this.getFileName(sPathFile);
  	
  	File d=new File(sPath);		//建立代表Sub目录的File对象,并得到它的一个引用
  	if(!d.exists()){			//检查Sub目录是否存在
  		this.makeDir(sPath); 	//建立Sub目录
  	}
  	
	try {
      FileWriter fw = new FileWriter(sPath + "\\" + sFile,false);
      BufferedWriter bfw = new BufferedWriter(fw);
      bfw.write(sContent);
      bfw.flush();
      fw.close();
    }catch (IOException ex){ s = "createTxt IOException Error."; 
    }catch (Exception ex) { s = "createTxt Exception Error.";}
    
	return s;
  }
  
  /* 创建新文本文件,如果文件已经存在则覆盖 */
  public String createTxt(String sPath,String sFile,String sContent) throws FileNotFoundException {
	  String s = "";
	  File d=new File(sPath);		//建立代表Sub目录的File对象,并得到它的一个引用
	  if(!d.exists()){			//检查Sub目录是否存在
		  this.makeDir(sPath); 	//建立Sub目录
	  }
	  
	  try {
		  FileWriter fw = new FileWriter(sPath + "\\" + sFile,false);
		  BufferedWriter bfw = new BufferedWriter(fw);
		  bfw.write(sContent);
		  bfw.flush();
		  fw.close();
	  }catch (IOException ex){ s = "createTxt IOException Error."; 
	  }catch (Exception ex) { s = "createTxt Exception Error.";}
	  
	  return s;
  }
  
  /* 创建新文本文件,如果文件已经存在则覆盖,在文件后追加内容 文件格式:encode:UTF-8  add by tony 20100118 */
  public String createTxt(String sPath,String sFile,String sContent,String enCoding) throws FileNotFoundException {
  	String s = "";
  	File d=new File(sPath);		//建立代表Sub目录的File对象,并得到它的一个引用
  	if(!d.exists()){			//检查Sub目录是否存在
  		this.makeDir(sPath); 	//建立Sub目录
  	}
  	
	try {
		OutputStreamWriter out = new OutputStreamWriter(new FileOutputStream(sPath + "\\" + sFile), enCoding);
	    out.write(sContent);
	    out.flu
Download .txt
gitextract_z89967oo/

└── Check Maven Webapp/
    ├── .classpath
    ├── .project
    ├── .settings/
    │   ├── .jsdtscope
    │   ├── com.genuitec.eclipse.core.prefs
    │   ├── org.eclipse.core.resources.prefs
    │   ├── org.eclipse.jdt.core.prefs
    │   ├── org.eclipse.ltk.core.refactoring.prefs
    │   ├── org.eclipse.m2e.core.prefs
    │   ├── org.eclipse.wst.common.component
    │   ├── org.eclipse.wst.common.project.facet.core.xml
    │   ├── org.eclipse.wst.jsdt.ui.superType.container
    │   ├── org.eclipse.wst.jsdt.ui.superType.name
    │   └── org.eclipse.wst.validation.prefs
    ├── pom.xml
    ├── src/
    │   └── main/
    │       ├── java/
    │       │   └── edu/
    │       │       └── fjnu/
    │       │           └── online/
    │       │               ├── common/
    │       │               │   └── springdao/
    │       │               │       ├── AppContext.java
    │       │               │       └── SQLDAO.java
    │       │               ├── controller/
    │       │               │   ├── BaseController.java
    │       │               │   ├── admin/
    │       │               │   │   ├── CourseController.java
    │       │               │   │   ├── GradeController.java
    │       │               │   │   ├── PaperController.java
    │       │               │   │   ├── QuestionController.java
    │       │               │   │   ├── TypeController.java
    │       │               │   │   └── UserController.java
    │       │               │   └── user/
    │       │               │       ├── ErrorBookController.java
    │       │               │       ├── PaperMgController.java
    │       │               │       └── StuController.java
    │       │               ├── dao/
    │       │               │   ├── BaseDao.java
    │       │               │   ├── CourseDao.java
    │       │               │   ├── ErrorBookDao.java
    │       │               │   ├── GradeDao.java
    │       │               │   ├── PaperDao.java
    │       │               │   ├── QuestionDao.java
    │       │               │   ├── TypeDao.java
    │       │               │   ├── UserDao.java
    │       │               │   └── impl/
    │       │               │       ├── BaseDaoImpl.java
    │       │               │       ├── CourseDaoImpl.java
    │       │               │       ├── ErrorBookDaoImpl.java
    │       │               │       ├── GradeDaoImpl.java
    │       │               │       ├── PaperDaoImpl.java
    │       │               │       ├── QuestionDaoImpl.java
    │       │               │       ├── TypeDaoImpl.java
    │       │               │       └── UserDaoImpl.java
    │       │               ├── domain/
    │       │               │   ├── Course.java
    │       │               │   ├── ErrorBook.java
    │       │               │   ├── Factory.java
    │       │               │   ├── Grade.java
    │       │               │   ├── MsgItem.java
    │       │               │   ├── Paper.java
    │       │               │   ├── Question.java
    │       │               │   ├── Type.java
    │       │               │   └── User.java
    │       │               ├── pagination/
    │       │               │   ├── Page.java
    │       │               │   └── PageInterceptor.java
    │       │               ├── service/
    │       │               │   ├── CourseService.java
    │       │               │   ├── ErrorBookService.java
    │       │               │   ├── GradeService.java
    │       │               │   ├── PaperService.java
    │       │               │   ├── QuestionService.java
    │       │               │   ├── TypeService.java
    │       │               │   ├── UserService.java
    │       │               │   └── impl/
    │       │               │       ├── CourseServiceImpl.java
    │       │               │       ├── ErrorBookServiceImpl.java
    │       │               │       ├── GradeServiceImpl.java
    │       │               │       ├── PaperServiceImpl.java
    │       │               │       ├── QuestionServiceImpl.java
    │       │               │       ├── TypeServiceImpl.java
    │       │               │       └── UserServiceImpl.java
    │       │               └── util/
    │       │                   ├── Arith.java
    │       │                   ├── ComputeScore.java
    │       │                   ├── Computeclass.java
    │       │                   ├── DateConverter.java
    │       │                   ├── DownloadUtil.java
    │       │                   ├── FormatStyle.java
    │       │                   ├── MD5Util.java
    │       │                   ├── MybatisUtil.java
    │       │                   ├── TextSimilarityUtil.java
    │       │                   ├── UtilFuns.java
    │       │                   └── file/
    │       │                       └── FileUtil.java
    │       ├── resources/
    │       │   ├── beans.xml
    │       │   ├── edu/
    │       │   │   └── fjnu/
    │       │   │       └── online/
    │       │   │           └── mapper/
    │       │   │               ├── Course.xml
    │       │   │               ├── ErrorBook.xml
    │       │   │               ├── Factory.xml
    │       │   │               ├── Grade.xml
    │       │   │               ├── Paper.xml
    │       │   │               ├── Question.xml
    │       │   │               ├── Type.xml
    │       │   │               └── User.xml
    │       │   ├── jdbc.properties
    │       │   ├── springmvc-servlet.xml
    │       │   └── sqlMapConfig.xml
    │       └── webapp/
    │           ├── WEB-INF/
    │           │   ├── pages/
    │           │   │   ├── admin/
    │           │   │   │   ├── course-mgt.jsp
    │           │   │   │   ├── course-reg.jsp
    │           │   │   │   ├── course-upd.jsp
    │           │   │   │   ├── grade-mgt.jsp
    │           │   │   │   ├── grade-reg.jsp
    │           │   │   │   ├── grade-upd.jsp
    │           │   │   │   ├── index.jsp
    │           │   │   │   ├── info-deal.jsp
    │           │   │   │   ├── info-det.jsp
    │           │   │   │   ├── info-mgt.jsp
    │           │   │   │   ├── info-qry.jsp
    │           │   │   │   ├── info-reg.jsp
    │           │   │   │   ├── info-upd.jsp
    │           │   │   │   ├── login.jsp
    │           │   │   │   ├── paper-mgt.jsp
    │           │   │   │   ├── paper-qry.jsp
    │           │   │   │   ├── paper-reg.jsp
    │           │   │   │   ├── question-mgt.jsp
    │           │   │   │   ├── question-qry.jsp
    │           │   │   │   ├── question-reg.jsp
    │           │   │   │   ├── question-upd.jsp
    │           │   │   │   ├── type-info.jsp
    │           │   │   │   ├── type-mgt.jsp
    │           │   │   │   ├── type-qry.jsp
    │           │   │   │   ├── type-reg.jsp
    │           │   │   │   └── type-upd.jsp
    │           │   │   ├── base.jsp
    │           │   │   ├── baseinfo/
    │           │   │   │   ├── left.jsp
    │           │   │   │   └── main.jsp
    │           │   │   ├── baselist.jsp
    │           │   │   ├── bases.jsp
    │           │   │   ├── home/
    │           │   │   │   ├── fmain.jsp
    │           │   │   │   ├── left.jsp
    │           │   │   │   ├── olmsgList.jsp
    │           │   │   │   └── title.jsp
    │           │   │   ├── index1.jsp
    │           │   │   └── user/
    │           │   │       ├── about.html
    │           │   │       ├── about.jsp
    │           │   │       ├── index.html
    │           │   │       ├── index.jsp
    │           │   │       ├── login.html
    │           │   │       ├── login.jsp
    │           │   │       ├── mybooks.html
    │           │   │       ├── mybooks.jsp
    │           │   │       ├── mypaper.html
    │           │   │       ├── mypaper.jsp
    │           │   │       ├── onlinecheck.html
    │           │   │       ├── paperdetail.jsp
    │           │   │       ├── qrypaper.jsp
    │           │   │       ├── regist.html
    │           │   │       ├── regist.jsp
    │           │   │       ├── regist1.jsp
    │           │   │       ├── scorequery.html
    │           │   │       ├── scorequery.jsp
    │           │   │       ├── tomypaper.jsp
    │           │   │       ├── userinfo.html
    │           │   │       └── userinfo.jsp
    │           │   └── web.xml
    │           ├── components/
    │           │   ├── chart/
    │           │   │   ├── amcolumn/
    │           │   │   │   ├── amcharts_key.txt
    │           │   │   │   ├── amcolumn.swf
    │           │   │   │   ├── amcolumn_data.txt
    │           │   │   │   ├── amcolumn_data.xml
    │           │   │   │   ├── amcolumn_data333.txt
    │           │   │   │   ├── amcolumn_settings.xml
    │           │   │   │   ├── export.aspx
    │           │   │   │   ├── export.aspx.cs
    │           │   │   │   ├── export.php
    │           │   │   │   ├── fonts/
    │           │   │   │   │   ├── arial.fla
    │           │   │   │   │   ├── arial.swf
    │           │   │   │   │   ├── garamond.swf
    │           │   │   │   │   ├── tahoma.swf
    │           │   │   │   │   └── times new roman.swf
    │           │   │   │   ├── patterns/
    │           │   │   │   │   ├── diagonal.fla
    │           │   │   │   │   ├── diagonal.swf
    │           │   │   │   │   ├── horizontal.fla
    │           │   │   │   │   ├── horizontal.swf
    │           │   │   │   │   ├── vertical.fla
    │           │   │   │   │   └── vertical.swf
    │           │   │   │   ├── plugins/
    │           │   │   │   │   └── value_indicator.swf
    │           │   │   │   └── swfobject.js
    │           │   │   ├── amline_1.6.4.1/
    │           │   │   │   ├── amline/
    │           │   │   │   │   ├── amcharts_key.txt
    │           │   │   │   │   ├── amline.swf
    │           │   │   │   │   ├── amline_data.txt
    │           │   │   │   │   ├── amline_data.xml
    │           │   │   │   │   ├── amline_settings.xml
    │           │   │   │   │   ├── export.aspx
    │           │   │   │   │   ├── export.aspx.cs
    │           │   │   │   │   ├── export.php
    │           │   │   │   │   ├── fonts/
    │           │   │   │   │   │   ├── arial.swf
    │           │   │   │   │   │   ├── garamond.swf
    │           │   │   │   │   │   ├── georgia.swf
    │           │   │   │   │   │   ├── tahoma.fla
    │           │   │   │   │   │   ├── tahoma.swf
    │           │   │   │   │   │   └── times new roman.swf
    │           │   │   │   │   ├── plugins/
    │           │   │   │   │   │   └── value_indicator.swf
    │           │   │   │   │   └── swfobject.js
    │           │   │   │   ├── amline.html
    │           │   │   │   ├── changelog.txt
    │           │   │   │   ├── examples/
    │           │   │   │   │   ├── auto_resizing_chart/
    │           │   │   │   │   │   ├── amline_data.xml
    │           │   │   │   │   │   ├── amline_settings.xml
    │           │   │   │   │   │   └── index.html
    │           │   │   │   │   ├── chart_with_data_gaps/
    │           │   │   │   │   │   ├── amline_data.txt
    │           │   │   │   │   │   ├── amline_settings.xml
    │           │   │   │   │   │   └── index.html
    │           │   │   │   │   ├── chart_with_scroller/
    │           │   │   │   │   │   ├── amline_data.xml
    │           │   │   │   │   │   ├── amline_settings.xml
    │           │   │   │   │   │   ├── bg.swf
    │           │   │   │   │   │   ├── bomb.swf
    │           │   │   │   │   │   └── index.html
    │           │   │   │   │   ├── data_and_settings_inisde_html/
    │           │   │   │   │   │   └── index.html
    │           │   │   │   │   ├── javascript_control/
    │           │   │   │   │   │   ├── amline_data.xml
    │           │   │   │   │   │   ├── amline_settings.xml
    │           │   │   │   │   │   └── index.html
    │           │   │   │   │   ├── multiple_charts_on_one_page/
    │           │   │   │   │   │   ├── amline_data1.txt
    │           │   │   │   │   │   ├── amline_data2.txt
    │           │   │   │   │   │   ├── amline_settings1.xml
    │           │   │   │   │   │   ├── amline_settings2.xml
    │           │   │   │   │   │   └── index.html
    │           │   │   │   │   ├── no_interactivity/
    │           │   │   │   │   │   ├── amline_data.xml
    │           │   │   │   │   │   ├── amline_settings.xml
    │           │   │   │   │   │   └── index.html
    │           │   │   │   │   ├── stacked_area_chart/
    │           │   │   │   │   │   ├── amline_data.xml
    │           │   │   │   │   │   ├── amline_settings.xml
    │           │   │   │   │   │   └── index.html
    │           │   │   │   │   └── value_indicator_plugin/
    │           │   │   │   │       ├── amline_data.xml
    │           │   │   │   │       ├── amline_settings.xml
    │           │   │   │   │       └── index.html
    │           │   │   │   ├── licence.txt
    │           │   │   │   └── readme.txt
    │           │   │   └── ampie_1.6.4.1/
    │           │   │       ├── ampie/
    │           │   │       │   ├── amcharts_key.txt
    │           │   │       │   ├── ampie.swf
    │           │   │       │   ├── ampie_data.txt
    │           │   │       │   ├── ampie_data.xml
    │           │   │       │   ├── ampie_settings.xml
    │           │   │       │   ├── export.aspx
    │           │   │       │   ├── export.aspx.cs
    │           │   │       │   ├── export.php
    │           │   │       │   ├── patterns/
    │           │   │       │   │   ├── diagonal.fla
    │           │   │       │   │   ├── diagonal.swf
    │           │   │       │   │   ├── horizontal.fla
    │           │   │       │   │   ├── horizontal.swf
    │           │   │       │   │   ├── vertical.fla
    │           │   │       │   │   └── vertical.swf
    │           │   │       │   ├── swfobject.js
    │           │   │       │   └── xx.xml
    │           │   │       ├── ampie.html
    │           │   │       ├── changelog.txt
    │           │   │       ├── examples/
    │           │   │       │   ├── ampie/
    │           │   │       │   │   ├── ampie1/
    │           │   │       │   │   │   ├── ampie_data.txt
    │           │   │       │   │   │   └── ampie_settings.xml
    │           │   │       │   │   ├── ampie3/
    │           │   │       │   │   │   ├── ampie_data.xml
    │           │   │       │   │   │   └── ampie_settings.xml
    │           │   │       │   │   ├── ampie4/
    │           │   │       │   │   │   ├── ampie_data1.txt
    │           │   │       │   │   │   ├── ampie_data2.txt
    │           │   │       │   │   │   ├── ampie_settings1.xml
    │           │   │       │   │   │   └── ampie_settings2.xml
    │           │   │       │   │   ├── ampie5/
    │           │   │       │   │   │   ├── ampie_data.xml
    │           │   │       │   │   │   ├── ampie_settings.xml
    │           │   │       │   │   │   └── bg.swf
    │           │   │       │   │   └── js/
    │           │   │       │   │       ├── ampie_data.xml
    │           │   │       │   │       └── ampie_settings.xml
    │           │   │       │   ├── ampie1.html
    │           │   │       │   ├── ampie2.html
    │           │   │       │   ├── ampie3.html
    │           │   │       │   ├── ampie4.html
    │           │   │       │   ├── ampie5.html
    │           │   │       │   ├── js_example.html
    │           │   │       │   └── multiple_charts_on_one_page/
    │           │   │       │       ├── ampie_data1.txt
    │           │   │       │       ├── ampie_data2.txt
    │           │   │       │       ├── ampie_settings1.xml
    │           │   │       │       ├── ampie_settings2.xml
    │           │   │       │       └── index.html
    │           │   │       ├── licence.txt
    │           │   │       └── readme.txt
    │           │   └── jquery-ui/
    │           │       └── jquery-1.2.6.js
    │           ├── css/
    │           │   ├── WdatePicker.css
    │           │   ├── base.css
    │           │   ├── bootstrap.css
    │           │   ├── extreme/
    │           │   │   ├── extremecomponents.css
    │           │   │   └── extremesite.css
    │           │   ├── home.css
    │           │   ├── index.css
    │           │   ├── info-mgt.css
    │           │   ├── info-reg.css
    │           │   ├── jquery.dialog.css
    │           │   ├── jquery.searchableSelect.css
    │           │   ├── login.css
    │           │   ├── reset.css
    │           │   ├── style.css
    │           │   ├── supersized.css
    │           │   ├── swipebox.css
    │           │   ├── time.css
    │           │   └── userlogin.css
    │           ├── images/
    │           │   └── olmsg/
    │           │       ├── mouse149.ANI
    │           │       ├── shubiao.ani
    │           │       └── wish1.swf
    │           ├── index.jsp
    │           ├── js/
    │           │   ├── WdatePicker.js
    │           │   ├── bootstrap.js
    │           │   ├── calendar.js
    │           │   ├── classie.js
    │           │   ├── common.js
    │           │   ├── core.js
    │           │   ├── datepicker/
    │           │   │   ├── My97DatePicker.htm
    │           │   │   ├── WdatePicker.js
    │           │   │   ├── calendar.js
    │           │   │   ├── config.js
    │           │   │   ├── lang/
    │           │   │   │   ├── en.js
    │           │   │   │   ├── zh-cn.js
    │           │   │   │   └── zh-tw.js
    │           │   │   ├── readme.txt
    │           │   │   └── skin/
    │           │   │       ├── WdatePicker.css
    │           │   │       ├── default/
    │           │   │       │   └── datepicker.css
    │           │   │       └── whyGreen/
    │           │   │           └── datepicker.css
    │           │   ├── dtree/
    │           │   │   ├── ckdtree/
    │           │   │   │   ├── api.html
    │           │   │   │   ├── dtree.css
    │           │   │   │   ├── dtree.js
    │           │   │   │   └── example01.html
    │           │   │   ├── dtree/
    │           │   │   │   ├── bzgk.html
    │           │   │   │   ├── dept.html
    │           │   │   │   ├── dtree.css
    │           │   │   │   ├── dtree.js
    │           │   │   │   ├── dtreebak.js
    │           │   │   │   └── example01.html
    │           │   │   └── tdtree/
    │           │   │       ├── api.html
    │           │   │       ├── dtree.css
    │           │   │       ├── dtree.js
    │           │   │       ├── example01.html
    │           │   │       └── frame.html
    │           │   ├── easing.js
    │           │   ├── index.js
    │           │   ├── jquery-1.10.1.js
    │           │   ├── jquery.dialog.js
    │           │   ├── jquery.js
    │           │   ├── jquery.pagination.js
    │           │   ├── jquery.searchableSelect.js
    │           │   ├── lang/
    │           │   │   ├── en.js
    │           │   │   ├── zh-cn.js
    │           │   │   └── zh-tw.js
    │           │   ├── modernizr.custom.js
    │           │   ├── move-top.js
    │           │   ├── scripts.js
    │           │   ├── skin/
    │           │   │   ├── WdatePicker.css
    │           │   │   ├── default/
    │           │   │   │   └── datepicker.css
    │           │   │   └── whyGreen/
    │           │   │       └── datepicker.css
    │           │   ├── supersized-init.js
    │           │   ├── tabledo.js
    │           │   └── uisearch.js
    │           ├── make/
    │           │   └── xlsprint/
    │           │       ├── OFFER.xls
    │           │       ├── SALES.xls
    │           │       ├── SAMPLE.xls
    │           │       ├── tCONTRACT.xls
    │           │       ├── tEXPORT.xls
    │           │       ├── tFINANCE.xls
    │           │       ├── tHOMEPARKINGLIST.xls
    │           │       ├── tINVOICE.xls
    │           │       ├── tOUTPRODUCT.xls
    │           │       ├── tPARKINGLIST.xls
    │           │       ├── tSHIPPINGORDER.xls
    │           │       └── txOutProduct.xls
    │           ├── skin/
    │           │   └── default/
    │           │       ├── css/
    │           │       │   ├── default.css
    │           │       │   ├── login.css
    │           │       │   ├── main.css
    │           │       │   ├── table.css
    │           │       │   └── title.css
    │           │       └── js/
    │           │           └── toggle.js
    │           └── sql/
    │               └── onlinetest.sql
    └── target/
        ├── Check/
        │   ├── WEB-INF/
        │   │   ├── classes/
        │   │   │   ├── beans.xml
        │   │   │   ├── edu/
        │   │   │   │   └── fjnu/
        │   │   │   │       └── online/
        │   │   │   │           └── mapper/
        │   │   │   │               ├── Course.xml
        │   │   │   │               ├── ErrorBook.xml
        │   │   │   │               ├── Factory.xml
        │   │   │   │               ├── Grade.xml
        │   │   │   │               ├── Paper.xml
        │   │   │   │               ├── Question.xml
        │   │   │   │               ├── Type.xml
        │   │   │   │               └── User.xml
        │   │   │   ├── jdbc.properties
        │   │   │   ├── springmvc-servlet.xml
        │   │   │   └── sqlMapConfig.xml
        │   │   ├── lib/
        │   │   │   ├── aopalliance-1.0.jar
        │   │   │   ├── c3p0-0.9.1.2.jar
        │   │   │   ├── com.springsource.org.aspectj.weaver-1.6.8.RELEASE.jar
        │   │   │   ├── commons-codec-1.5.jar
        │   │   │   ├── commons-fileupload-1.2.2.jar
        │   │   │   ├── commons-io-2.0.1.jar
        │   │   │   ├── commons-logging-1.1.1.jar
        │   │   │   ├── dom4j-1.6.1.jar
        │   │   │   ├── hamcrest-core-1.1.jar
        │   │   │   ├── jackson-core-asl-1.9.11.jar
        │   │   │   ├── jackson-mapper-asl-1.9.11.jar
        │   │   │   ├── jcommon-1.0.16.jar
        │   │   │   ├── jfreechart-1.0.13.jar
        │   │   │   ├── jsp-api-2.1.jar
        │   │   │   ├── jsqlparser-0.9.1.jar
        │   │   │   ├── jstl-api-1.2.jar
        │   │   │   ├── jstl-impl-1.2.jar
        │   │   │   ├── junit-4.9.jar
        │   │   │   ├── jxl-2.4.2.jar
        │   │   │   ├── log4j-1.2.13.jar
        │   │   │   ├── mybatis-3.2.2.jar
        │   │   │   ├── mybatis-spring-1.2.0.jar
        │   │   │   ├── mysql-connector-java-5.1.10.jar
        │   │   │   ├── pagehelper-4.0.0.jar
        │   │   │   ├── poi-3.9.jar
        │   │   │   ├── poi-ooxml-3.9.jar
        │   │   │   ├── poi-ooxml-schemas-3.9.jar
        │   │   │   ├── servlet-api-2.5.jar
        │   │   │   ├── spring-aop-3.2.2.RELEASE.jar
        │   │   │   ├── spring-beans-3.2.2.RELEASE.jar
        │   │   │   ├── spring-context-3.2.2.RELEASE.jar
        │   │   │   ├── spring-core-3.2.2.RELEASE.jar
        │   │   │   ├── spring-expression-3.2.2.RELEASE.jar
        │   │   │   ├── spring-jdbc-3.2.2.RELEASE.jar
        │   │   │   ├── spring-orm-3.2.2.RELEASE.jar
        │   │   │   ├── spring-tx-3.2.2.RELEASE.jar
        │   │   │   ├── spring-web-3.2.2.RELEASE.jar
        │   │   │   ├── spring-webmvc-3.2.2.RELEASE.jar
        │   │   │   ├── stax-api-1.0.1.jar
        │   │   │   ├── xml-apis-1.0.b2.jar
        │   │   │   └── xmlbeans-2.3.0.jar
        │   │   ├── pages/
        │   │   │   ├── admin/
        │   │   │   │   ├── course-mgt.jsp
        │   │   │   │   ├── course-reg.jsp
        │   │   │   │   ├── course-upd.jsp
        │   │   │   │   ├── grade-mgt.jsp
        │   │   │   │   ├── grade-reg.jsp
        │   │   │   │   ├── grade-upd.jsp
        │   │   │   │   ├── index.jsp
        │   │   │   │   ├── info-deal.jsp
        │   │   │   │   ├── info-det.jsp
        │   │   │   │   ├── info-mgt.jsp
        │   │   │   │   ├── info-qry.jsp
        │   │   │   │   ├── info-reg.jsp
        │   │   │   │   ├── info-upd.jsp
        │   │   │   │   ├── login.jsp
        │   │   │   │   ├── paper-mgt.jsp
        │   │   │   │   ├── paper-qry.jsp
        │   │   │   │   ├── paper-reg.jsp
        │   │   │   │   ├── question-mgt.jsp
        │   │   │   │   ├── question-qry.jsp
        │   │   │   │   ├── question-reg.jsp
        │   │   │   │   ├── question-upd.jsp
        │   │   │   │   ├── type-info.jsp
        │   │   │   │   ├── type-mgt.jsp
        │   │   │   │   ├── type-qry.jsp
        │   │   │   │   ├── type-reg.jsp
        │   │   │   │   └── type-upd.jsp
        │   │   │   ├── base.jsp
        │   │   │   ├── baseinfo/
        │   │   │   │   ├── left.jsp
        │   │   │   │   └── main.jsp
        │   │   │   ├── baselist.jsp
        │   │   │   ├── bases.jsp
        │   │   │   ├── home/
        │   │   │   │   ├── fmain.jsp
        │   │   │   │   ├── left.jsp
        │   │   │   │   ├── olmsgList.jsp
        │   │   │   │   └── title.jsp
        │   │   │   ├── index1.jsp
        │   │   │   └── user/
        │   │   │       ├── index.html
        │   │   │       ├── index.jsp
        │   │   │       ├── login.html
        │   │   │       ├── login.jsp
        │   │   │       ├── mybooks.html
        │   │   │       ├── mybooks.jsp
        │   │   │       ├── mypaper.html
        │   │   │       ├── mypaper.jsp
        │   │   │       ├── onlinecheck.html
        │   │   │       ├── paperdetail.jsp
        │   │   │       ├── qrypaper.jsp
        │   │   │       ├── regist.html
        │   │   │       ├── regist.jsp
        │   │   │       ├── regist1.jsp
        │   │   │       ├── scorequery.html
        │   │   │       ├── scorequery.jsp
        │   │   │       ├── tomypaper.jsp
        │   │   │       ├── userinfo.html
        │   │   │       └── userinfo.jsp
        │   │   └── web.xml
        │   ├── components/
        │   │   ├── chart/
        │   │   │   ├── amcolumn/
        │   │   │   │   ├── amcharts_key.txt
        │   │   │   │   ├── amcolumn.swf
        │   │   │   │   ├── amcolumn_data.txt
        │   │   │   │   ├── amcolumn_data.xml
        │   │   │   │   ├── amcolumn_data333.txt
        │   │   │   │   ├── amcolumn_settings.xml
        │   │   │   │   ├── export.aspx
        │   │   │   │   ├── export.aspx.cs
        │   │   │   │   ├── export.php
        │   │   │   │   ├── fonts/
        │   │   │   │   │   ├── arial.fla
        │   │   │   │   │   ├── arial.swf
        │   │   │   │   │   ├── garamond.swf
        │   │   │   │   │   ├── tahoma.swf
        │   │   │   │   │   └── times new roman.swf
        │   │   │   │   ├── patterns/
        │   │   │   │   │   ├── diagonal.fla
        │   │   │   │   │   ├── diagonal.swf
        │   │   │   │   │   ├── horizontal.fla
        │   │   │   │   │   ├── horizontal.swf
        │   │   │   │   │   ├── vertical.fla
        │   │   │   │   │   └── vertical.swf
        │   │   │   │   ├── plugins/
        │   │   │   │   │   └── value_indicator.swf
        │   │   │   │   └── swfobject.js
        │   │   │   ├── amline_1.6.4.1/
        │   │   │   │   ├── amline/
        │   │   │   │   │   ├── amcharts_key.txt
        │   │   │   │   │   ├── amline.swf
        │   │   │   │   │   ├── amline_data.txt
        │   │   │   │   │   ├── amline_data.xml
        │   │   │   │   │   ├── amline_settings.xml
        │   │   │   │   │   ├── export.aspx
        │   │   │   │   │   ├── export.aspx.cs
        │   │   │   │   │   ├── export.php
        │   │   │   │   │   ├── fonts/
        │   │   │   │   │   │   ├── arial.swf
        │   │   │   │   │   │   ├── garamond.swf
        │   │   │   │   │   │   ├── georgia.swf
        │   │   │   │   │   │   ├── tahoma.fla
        │   │   │   │   │   │   ├── tahoma.swf
        │   │   │   │   │   │   └── times new roman.swf
        │   │   │   │   │   ├── plugins/
        │   │   │   │   │   │   └── value_indicator.swf
        │   │   │   │   │   └── swfobject.js
        │   │   │   │   ├── amline.html
        │   │   │   │   ├── changelog.txt
        │   │   │   │   ├── examples/
        │   │   │   │   │   ├── auto_resizing_chart/
        │   │   │   │   │   │   ├── amline_data.xml
        │   │   │   │   │   │   ├── amline_settings.xml
        │   │   │   │   │   │   └── index.html
        │   │   │   │   │   ├── chart_with_data_gaps/
        │   │   │   │   │   │   ├── amline_data.txt
        │   │   │   │   │   │   ├── amline_settings.xml
        │   │   │   │   │   │   └── index.html
        │   │   │   │   │   ├── chart_with_scroller/
        │   │   │   │   │   │   ├── amline_data.xml
        │   │   │   │   │   │   ├── amline_settings.xml
        │   │   │   │   │   │   ├── bg.swf
        │   │   │   │   │   │   ├── bomb.swf
        │   │   │   │   │   │   └── index.html
        │   │   │   │   │   ├── data_and_settings_inisde_html/
        │   │   │   │   │   │   └── index.html
        │   │   │   │   │   ├── javascript_control/
        │   │   │   │   │   │   ├── amline_data.xml
        │   │   │   │   │   │   ├── amline_settings.xml
        │   │   │   │   │   │   └── index.html
        │   │   │   │   │   ├── multiple_charts_on_one_page/
        │   │   │   │   │   │   ├── amline_data1.txt
        │   │   │   │   │   │   ├── amline_data2.txt
        │   │   │   │   │   │   ├── amline_settings1.xml
        │   │   │   │   │   │   ├── amline_settings2.xml
        │   │   │   │   │   │   └── index.html
        │   │   │   │   │   ├── no_interactivity/
        │   │   │   │   │   │   ├── amline_data.xml
        │   │   │   │   │   │   ├── amline_settings.xml
        │   │   │   │   │   │   └── index.html
        │   │   │   │   │   ├── stacked_area_chart/
        │   │   │   │   │   │   ├── amline_data.xml
        │   │   │   │   │   │   ├── amline_settings.xml
        │   │   │   │   │   │   └── index.html
        │   │   │   │   │   └── value_indicator_plugin/
        │   │   │   │   │       ├── amline_data.xml
        │   │   │   │   │       ├── amline_settings.xml
        │   │   │   │   │       └── index.html
        │   │   │   │   ├── licence.txt
        │   │   │   │   └── readme.txt
        │   │   │   └── ampie_1.6.4.1/
        │   │   │       ├── ampie/
        │   │   │       │   ├── amcharts_key.txt
        │   │   │       │   ├── ampie.swf
        │   │   │       │   ├── ampie_data.txt
        │   │   │       │   ├── ampie_data.xml
        │   │   │       │   ├── ampie_settings.xml
        │   │   │       │   ├── export.aspx
        │   │   │       │   ├── export.aspx.cs
        │   │   │       │   ├── export.php
        │   │   │       │   ├── patterns/
        │   │   │       │   │   ├── diagonal.fla
        │   │   │       │   │   ├── diagonal.swf
        │   │   │       │   │   ├── horizontal.fla
        │   │   │       │   │   ├── horizontal.swf
        │   │   │       │   │   ├── vertical.fla
        │   │   │       │   │   └── vertical.swf
        │   │   │       │   ├── swfobject.js
        │   │   │       │   └── xx.xml
        │   │   │       ├── ampie.html
        │   │   │       ├── changelog.txt
        │   │   │       ├── examples/
        │   │   │       │   ├── ampie/
        │   │   │       │   │   ├── ampie1/
        │   │   │       │   │   │   ├── ampie_data.txt
        │   │   │       │   │   │   └── ampie_settings.xml
        │   │   │       │   │   ├── ampie3/
        │   │   │       │   │   │   ├── ampie_data.xml
        │   │   │       │   │   │   └── ampie_settings.xml
        │   │   │       │   │   ├── ampie4/
        │   │   │       │   │   │   ├── ampie_data1.txt
        │   │   │       │   │   │   ├── ampie_data2.txt
        │   │   │       │   │   │   ├── ampie_settings1.xml
        │   │   │       │   │   │   └── ampie_settings2.xml
        │   │   │       │   │   ├── ampie5/
        │   │   │       │   │   │   ├── ampie_data.xml
        │   │   │       │   │   │   ├── ampie_settings.xml
        │   │   │       │   │   │   └── bg.swf
        │   │   │       │   │   └── js/
        │   │   │       │   │       ├── ampie_data.xml
        │   │   │       │   │       └── ampie_settings.xml
        │   │   │       │   ├── ampie1.html
        │   │   │       │   ├── ampie2.html
        │   │   │       │   ├── ampie3.html
        │   │   │       │   ├── ampie4.html
        │   │   │       │   ├── ampie5.html
        │   │   │       │   ├── js_example.html
        │   │   │       │   └── multiple_charts_on_one_page/
        │   │   │       │       ├── ampie_data1.txt
        │   │   │       │       ├── ampie_data2.txt
        │   │   │       │       ├── ampie_settings1.xml
        │   │   │       │       ├── ampie_settings2.xml
        │   │   │       │       └── index.html
        │   │   │       ├── licence.txt
        │   │   │       └── readme.txt
        │   │   └── jquery-ui/
        │   │       └── jquery-1.2.6.js
        │   ├── css/
        │   │   ├── WdatePicker.css
        │   │   ├── base.css
        │   │   ├── bootstrap.css
        │   │   ├── extreme/
        │   │   │   ├── extremecomponents.css
        │   │   │   └── extremesite.css
        │   │   ├── home.css
        │   │   ├── index.css
        │   │   ├── info-mgt.css
        │   │   ├── info-reg.css
        │   │   ├── jquery.dialog.css
        │   │   ├── jquery.searchableSelect.css
        │   │   ├── login.css
        │   │   ├── reset.css
        │   │   ├── style.css
        │   │   ├── supersized.css
        │   │   ├── swipebox.css
        │   │   ├── time.css
        │   │   └── userlogin.css
        │   ├── images/
        │   │   └── olmsg/
        │   │       ├── mouse149.ANI
        │   │       ├── shubiao.ani
        │   │       └── wish1.swf
        │   ├── index.jsp
        │   ├── js/
        │   │   ├── WdatePicker.js
        │   │   ├── bootstrap.js
        │   │   ├── calendar.js
        │   │   ├── classie.js
        │   │   ├── common.js
        │   │   ├── core.js
        │   │   ├── datepicker/
        │   │   │   ├── My97DatePicker.htm
        │   │   │   ├── WdatePicker.js
        │   │   │   ├── calendar.js
        │   │   │   ├── config.js
        │   │   │   ├── lang/
        │   │   │   │   ├── en.js
        │   │   │   │   ├── zh-cn.js
        │   │   │   │   └── zh-tw.js
        │   │   │   ├── readme.txt
        │   │   │   └── skin/
        │   │   │       ├── WdatePicker.css
        │   │   │       ├── default/
        │   │   │       │   └── datepicker.css
        │   │   │       └── whyGreen/
        │   │   │           └── datepicker.css
        │   │   ├── dtree/
        │   │   │   ├── ckdtree/
        │   │   │   │   ├── api.html
        │   │   │   │   ├── dtree.css
        │   │   │   │   ├── dtree.js
        │   │   │   │   └── example01.html
        │   │   │   ├── dtree/
        │   │   │   │   ├── bzgk.html
        │   │   │   │   ├── dept.html
        │   │   │   │   ├── dtree.css
        │   │   │   │   ├── dtree.js
        │   │   │   │   ├── dtreebak.js
        │   │   │   │   └── example01.html
        │   │   │   └── tdtree/
        │   │   │       ├── api.html
        │   │   │       ├── dtree.css
        │   │   │       ├── dtree.js
        │   │   │       ├── example01.html
        │   │   │       └── frame.html
        │   │   ├── easing.js
        │   │   ├── index.js
        │   │   ├── jquery-1.10.1.js
        │   │   ├── jquery.dialog.js
        │   │   ├── jquery.js
        │   │   ├── jquery.pagination.js
        │   │   ├── jquery.searchableSelect.js
        │   │   ├── lang/
        │   │   │   ├── en.js
        │   │   │   ├── zh-cn.js
        │   │   │   └── zh-tw.js
        │   │   ├── modernizr.custom.js
        │   │   ├── move-top.js
        │   │   ├── scripts.js
        │   │   ├── skin/
        │   │   │   ├── WdatePicker.css
        │   │   │   ├── default/
        │   │   │   │   └── datepicker.css
        │   │   │   └── whyGreen/
        │   │   │       └── datepicker.css
        │   │   ├── supersized-init.js
        │   │   ├── tabledo.js
        │   │   └── uisearch.js
        │   ├── make/
        │   │   └── xlsprint/
        │   │       ├── OFFER.xls
        │   │       ├── SALES.xls
        │   │       ├── SAMPLE.xls
        │   │       ├── tCONTRACT.xls
        │   │       ├── tEXPORT.xls
        │   │       ├── tFINANCE.xls
        │   │       ├── tHOMEPARKINGLIST.xls
        │   │       ├── tINVOICE.xls
        │   │       ├── tOUTPRODUCT.xls
        │   │       ├── tPARKINGLIST.xls
        │   │       ├── tSHIPPINGORDER.xls
        │   │       └── txOutProduct.xls
        │   └── skin/
        │       └── default/
        │           ├── css/
        │           │   ├── default.css
        │           │   ├── login.css
        │           │   ├── main.css
        │           │   ├── table.css
        │           │   └── title.css
        │           └── js/
        │               └── toggle.js
        ├── Check.war
        ├── classes/
        │   ├── beans.xml
        │   ├── edu/
        │   │   └── fjnu/
        │   │       └── online/
        │   │           └── mapper/
        │   │               ├── Course.xml
        │   │               ├── ErrorBook.xml
        │   │               ├── Factory.xml
        │   │               ├── Grade.xml
        │   │               ├── Paper.xml
        │   │               ├── Question.xml
        │   │               ├── Type.xml
        │   │               └── User.xml
        │   ├── jdbc.properties
        │   ├── springmvc-servlet.xml
        │   └── sqlMapConfig.xml
        ├── m2e-jee/
        │   └── web-resources/
        │       └── META-INF/
        │           ├── MANIFEST.MF
        │           └── maven/
        │               └── edu.fjnu.online/
        │                   └── Check/
        │                       ├── pom.properties
        │                       └── pom.xml
        ├── maven-archiver/
        │   └── pom.properties
        └── maven-status/
            └── maven-compiler-plugin/
                ├── compile/
                │   └── default-compile/
                │       ├── createdFiles.lst
                │       └── inputFiles.lst
                └── testCompile/
                    └── default-testCompile/
                        └── inputFiles.lst
Download .txt
SYMBOL INDEX (1261 symbols across 107 files)

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/common/springdao/AppContext.java
  class AppContext (line 6) | public class AppContext {
    method getInstance (line 11) | public synchronized static AppContext getInstance() {
    method AppContext (line 18) | private AppContext() {
    method getAppContext (line 22) | public AbstractApplicationContext getAppContext() {

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/common/springdao/SQLDAO.java
  class SQLDAO (line 22) | public class SQLDAO {
    method setDataSource (line 27) | public void setDataSource(DataSource ds){
    method findInt (line 31) | public int findInt(String sql){
    method findInt (line 37) | public int findInt(String sql, Object[] objs){
    method getSingleValue (line 44) | public String getSingleValue(String sql){
    method getSingleValue (line 61) | public String getSingleValue(String sql, Object[] objs){
    method toArray (line 83) | public String[] toArray(String sql){
    method executeSQL (line 99) | public List executeSQL(String sql){
    method executeSQL (line 117) | public List executeSQL(String sql, Object[] objs){
    method executeSQLForList (line 136) | public List executeSQLForList(String sql, Object[] objs){
    method updateSQL (line 163) | public int updateSQL(String sql){
    method updateSQL (line 169) | public int updateSQL(String sql, Object[] objs){
    method batchSQL (line 175) | public int[] batchSQL(String[] sql){

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/controller/BaseController.java
  class BaseController (line 14) | public abstract class BaseController {
    method initBinder (line 15) | @InitBinder

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/controller/admin/CourseController.java
  class CourseController (line 20) | @Controller
    method toCoursePage (line 33) | @RequestMapping("/toCoursePage.action")
    method qryCoursePage (line 44) | @RequestMapping("/qryCoursePage.action")
    method deleteCourse (line 62) | @RequestMapping("/deleteCourse.action")
    method toAddType (line 79) | @RequestMapping("/toAddCourse.action")
    method addType (line 92) | @RequestMapping("/addCourse.action")
    method toQryType (line 106) | @RequestMapping("/toQryCourse.action")
    method toUpdType (line 120) | @RequestMapping("/toUpdCourse.action")
    method updType (line 134) | @RequestMapping("/updCourse.action")
    method delCourse (line 147) | @RequestMapping("/delCourse.action")

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/controller/admin/GradeController.java
  class GradeController (line 22) | @Controller
    method toGradePage (line 37) | @RequestMapping("/toGradePage.action")
    method qryAllGrade (line 68) | @RequestMapping("/qryAllGrade.action")
    method deleteGrade (line 106) | @RequestMapping("/deleteGrade.action")
    method toAddGrade (line 123) | @RequestMapping("/toAddGrade.action")
    method addType (line 136) | @RequestMapping("/addGrade.action")
    method toQryGrade (line 149) | @RequestMapping("/toQryGrade.action")
    method toUpdGrade (line 164) | @RequestMapping("/toUpdGrade.action")
    method updGrade (line 198) | @RequestMapping("/updGrade.action")
    method delGrade (line 211) | @RequestMapping("/delGrade.action")

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/controller/admin/PaperController.java
  class PaperController (line 30) | @Controller
    method toPaperPage (line 50) | @RequestMapping("/toPaperPage.action")
    method qryAllPaper (line 89) | @RequestMapping("/qryAllPaper.action")
    method toAddPaperPage (line 128) | @RequestMapping("/toAddPaperPage.action")
    method addPaper (line 143) | @SuppressWarnings("unchecked")
    method deletePaper (line 191) | @RequestMapping("/deletePaper.action")
    method qryPaper (line 202) | @RequestMapping("/qryPaper.action")
    method removeLast (line 243) | public String removeLast(String str){

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/controller/admin/QuestionController.java
  class QuestionController (line 30) | @Controller
    method toQuestionPage (line 48) | @RequestMapping("/toQuestionPage.action")
    method quesPage (line 78) | @RequestMapping("/quesPage.action")
    method deleteQuestion (line 108) | @RequestMapping("/deleteQuestion.action")
    method toAddQuestion (line 125) | @RequestMapping("/toAddQuestion.action")
    method addQuesInfo (line 146) | @RequestMapping("/addQuesInfo.action")
    method toQryQuestion (line 159) | @RequestMapping("/toQryQuestion.action")
    method toUpdQuestion (line 179) | @RequestMapping("/toUpdQuestion.action")
    method updQuestion (line 199) | @RequestMapping("/updQuestion.action")
    method delQuestion (line 212) | @RequestMapping("/delQuestion.action")

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/controller/admin/TypeController.java
  class TypeController (line 25) | @Controller
    method toTypePage (line 31) | @RequestMapping("/toTypePage.action")
    method qryTypePage (line 42) | @RequestMapping("/qryTypePage.action")
    method deleteUser (line 60) | @RequestMapping("/deleteType.action")
    method toAddType (line 77) | @RequestMapping("/toAddType.action")
    method addType (line 90) | @RequestMapping("/addType.action")
    method toQryType (line 103) | @RequestMapping("/toQryType.action")
    method toUpdType (line 117) | @RequestMapping("/toUpdType.action")
    method updType (line 131) | @RequestMapping("/updType.action")
    method delType (line 144) | @RequestMapping("/delType.action")

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/controller/admin/UserController.java
  class UserController (line 31) | @Controller
    method toLoin (line 39) | @RequestMapping("/admin/login.action")
    method checkUser (line 49) | @RequestMapping("/admin/userLogin.action")
    method checkAccount (line 72) | @RequestMapping("/admin/checkAccount.action")
    method userRegist (line 90) | @RequestMapping("/admin/userRegist.action")
    method exitSys (line 106) | @RequestMapping("/admin/exitSys.action")
    method toQueDep (line 116) | @RequestMapping(value="/admin/toQueDep.action",method=RequestMethod.POST)
    method getAllUserInfo (line 122) | @RequestMapping("/admin/getAllUser.action")
    method qryAllUser (line 134) | @RequestMapping("/admin/qryAllUser.action")
    method toAddUserInfo (line 153) | @RequestMapping("/admin/toAddUser.action")
    method addUser (line 167) | @RequestMapping("/admin/addUser.action")
    method deleteUser (line 179) | @RequestMapping("/admin/deleteUser.action")
    method findPending (line 196) | @RequestMapping("/admin/getFindPending.action")
    method qryFindPending (line 206) | @RequestMapping("/admin/qryFindPending.action")
    method passUserInfo (line 224) | @RequestMapping("/admin/passinfo.action")
    method failUserInfo (line 244) | @RequestMapping("/admin/failinfo.action")
    method toUpdateUser (line 265) | @RequestMapping("/admin/toUpdateUser.action")
    method toQryUser (line 280) | @RequestMapping("/admin/toQryUser.action")
    method toQryUserInfo (line 296) | @RequestMapping("/admin/toQryUserInfo.action")
    method toQryMgUser (line 312) | @RequestMapping("/admin/toQryMgUser.action")
    method updateUser (line 321) | @RequestMapping("/admin/updateUser.action")

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/controller/user/ErrorBookController.java
  class ErrorBookController (line 25) | @Controller
    method toMyBooksPage (line 38) | @RequestMapping("/toMyBooksPage.action")
    method getBooks (line 58) | @RequestMapping("/getBooks.action")

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/controller/user/PaperMgController.java
  class PaperMgController (line 41) | @Controller
    method toScoreQry (line 58) | @RequestMapping("/toScoreQry.action")
    method qrypaper (line 86) | @SuppressWarnings({ "rawtypes", "unchecked" })
    method dealPaper (line 138) | @SuppressWarnings("unchecked")
    method qryPaperDetail (line 227) | @SuppressWarnings({ "rawtypes", "unchecked" })
    method toMyPaperPage (line 278) | @SuppressWarnings({ "unchecked", "rawtypes" })

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/controller/user/StuController.java
  class StuController (line 20) | @Controller
    method toUserLogin (line 27) | @RequestMapping("/toLogin.action")
    method toIndex (line 47) | @RequestMapping("/user/toIndex.action")
    method checkPwd (line 63) | @RequestMapping("/checkPwd.action")
    method toRegistPage (line 85) | @RequestMapping("/toRegistPage.action")
    method addUserInfo (line 98) | @RequestMapping("/addUserInfo.action")
    method toUserInfo (line 105) | @RequestMapping("/toUserInfo.action")
    method updateUserInfo (line 122) | @RequestMapping("/updateUserInfo.action")
    method exitSystem (line 136) | @RequestMapping("/user/exitSys.action")
    method toAbout (line 146) | @RequestMapping("/toAbout.action")

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/BaseDao.java
  type BaseDao (line 10) | public interface BaseDao<T> {
    method find (line 11) | public List<T> find(T entity);
    method get (line 12) | public T get(Serializable id);
    method insert (line 13) | public void insert(T entity);
    method update (line 14) | public void update(T entity);
    method delete (line 15) | public void delete(Serializable id);
    method delete (line 16) | public void delete(Serializable[] ids);

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/CourseDao.java
  type CourseDao (line 5) | public interface CourseDao extends BaseDao<Course>{

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/ErrorBookDao.java
  type ErrorBookDao (line 9) | public interface ErrorBookDao extends BaseDao<ErrorBook>{
    method getBookInfo (line 10) | public List<ErrorBook> getBookInfo(Map map);

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/GradeDao.java
  type GradeDao (line 6) | public interface GradeDao extends BaseDao<Grade>{

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/PaperDao.java
  type PaperDao (line 9) | public interface PaperDao extends BaseDao<Paper> {
    method getUserPaperById (line 15) | public List<Paper> getUserPaperById(Serializable id);
    method getPaperDetail (line 17) | public Paper getPaperDetail(Map map);
    method updateUserPaper (line 20) | public void updateUserPaper(Map map);
    method getUndoPaper (line 22) | public List<Paper> getUndoPaper(Map map);
    method qryUndoPaper (line 24) | public List<Paper> qryUndoPaper(Map map);

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/QuestionDao.java
  type QuestionDao (line 8) | public interface QuestionDao extends BaseDao<Question>{
    method createPaper (line 10) | public List<Question> createPaper(Map map);

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/TypeDao.java
  type TypeDao (line 5) | public interface TypeDao extends BaseDao<Type> {

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/UserDao.java
  type UserDao (line 8) | public interface UserDao extends BaseDao<User>{
    method findPending (line 10) | public List<User> findPending(User user);
    method getStu (line 11) | public User getStu(User user);

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/impl/BaseDaoImpl.java
  class BaseDaoImpl (line 12) | public abstract class BaseDaoImpl<T> extends SqlSessionDaoSupport implem...
    method setSqlSessionFactory (line 13) | @Autowired
    method getNs (line 20) | public String getNs() {
    method setNs (line 23) | public void setNs(String ns) {
    method find (line 27) | public List<T> find(T entiy) {
    method get (line 31) | public T get(Serializable id) {
    method insert (line 35) | public void insert(T entity) {
    method update (line 39) | public void update(T entity) {
    method delete (line 43) | public void delete(Serializable id) {
    method delete (line 47) | public void delete(Serializable[] ids) {

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/impl/CourseDaoImpl.java
  class CourseDaoImpl (line 9) | @Repository
    method CourseDaoImpl (line 11) | public CourseDaoImpl() {

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/impl/ErrorBookDaoImpl.java
  class ErrorBookDaoImpl (line 10) | @Repository
    method ErrorBookDaoImpl (line 13) | public ErrorBookDaoImpl() {
    method getBookInfo (line 17) | public List<ErrorBook> getBookInfo(Map map) {

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/impl/GradeDaoImpl.java
  class GradeDaoImpl (line 9) | @Repository
    method GradeDaoImpl (line 12) | public GradeDaoImpl() {

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/impl/PaperDaoImpl.java
  class PaperDaoImpl (line 11) | @Repository
    method PaperDaoImpl (line 13) | public PaperDaoImpl() {
    method getUserPaperById (line 17) | public List<Paper> getUserPaperById(Serializable id) {
    method getPaperDetail (line 21) | public Paper getPaperDetail(Map map) {
    method updateUserPaper (line 26) | public void updateUserPaper(Map map) {
    method getUndoPaper (line 31) | public List<Paper> getUndoPaper(Map map) {
    method qryUndoPaper (line 36) | public List<Paper> qryUndoPaper(Map map) {

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/impl/QuestionDaoImpl.java
  class QuestionDaoImpl (line 11) | @Repository
    method QuestionDaoImpl (line 13) | public QuestionDaoImpl() {
    method createPaper (line 17) | public List<Question> createPaper(Map map) {

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/impl/TypeDaoImpl.java
  class TypeDaoImpl (line 9) | @Repository
    method TypeDaoImpl (line 12) | public TypeDaoImpl() {

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/dao/impl/UserDaoImpl.java
  class UserDaoImpl (line 10) | @Repository
    method UserDaoImpl (line 12) | public UserDaoImpl() {
    method findPending (line 16) | public List<User> findPending(User user) {
    method getStu (line 20) | public User getStu(User user) {

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/domain/Course.java
  class Course (line 7) | public class Course {
    method getCourseId (line 14) | public int getCourseId() {
    method setCourseId (line 17) | public void setCourseId(int courseId) {
    method getCourseName (line 20) | public String getCourseName() {
    method setCourseName (line 23) | public void setCourseName(String courseName) {
    method getCourseState (line 26) | public String getCourseState() {
    method setCourseState (line 29) | public void setCourseState(String courseState) {
    method Course (line 32) | public Course() {
    method Course (line 36) | public Course(int courseId, String courseName, String courseState) {
    method toString (line 42) | @Override

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/domain/ErrorBook.java
  class ErrorBook (line 7) | public class ErrorBook {
    method getBookId (line 23) | public int getBookId() {
    method setBookId (line 26) | public void setBookId(int bookId) {
    method getUserId (line 29) | public String getUserId() {
    method setUserId (line 32) | public void setUserId(String userId) {
    method getCourseId (line 35) | public String getCourseId() {
    method setCourseId (line 38) | public void setCourseId(String courseId) {
    method getGradeId (line 41) | public String getGradeId() {
    method setGradeId (line 44) | public void setGradeId(String gradeId) {
    method getUserAnswer (line 47) | public String getUserAnswer() {
    method setUserAnswer (line 50) | public void setUserAnswer(String userAnswer) {
    method getTypeId (line 53) | public String getTypeId() {
    method setTypeId (line 56) | public void setTypeId(String typeId) {
    method getQuestion (line 59) | public Question getQuestion() {
    method setQuestion (line 62) | public void setQuestion(Question question) {
    method ErrorBook (line 65) | public ErrorBook() {
    method ErrorBook (line 69) | public ErrorBook(int bookId, String userId, String courseId,
    method toString (line 80) | @Override

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/domain/Factory.java
  class Factory (line 9) | public class Factory {
    method getCnote (line 18) | public String getCnote() {
    method setCnote (line 22) | public void setCnote(String cnote) {
    method getId (line 29) | public String getId() {
    method setId (line 33) | public void setId(String id) {
    method getFullName (line 37) | public String getFullName() {
    method setFullName (line 41) | public void setFullName(String fullName) {
    method getFactoryName (line 45) | public String getFactoryName() {
    method setFactoryName (line 49) | public void setFactoryName(String factoryName) {
    method getContractor (line 53) | public String getContractor() {
    method setContractor (line 57) | public void setContractor(String contractor) {
    method getPhone (line 61) | public String getPhone() {
    method setPhone (line 65) | public void setPhone(String phone) {
    method getMobile (line 69) | public String getMobile() {
    method setMobile (line 73) | public void setMobile(String mobile) {
    method getFax (line 77) | public String getFax() {
    method setFax (line 81) | public void setFax(String fax) {
    method getOrderNo (line 86) | public Integer getOrderNo() {
    method setOrderNo (line 90) | public void setOrderNo(Integer orderNo) {
    method getState (line 94) | public Integer getState() {
    method setState (line 98) | public void setState(Integer state) {

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/domain/Grade.java
  class Grade (line 7) | public class Grade {
    method getGradeId (line 14) | public int getGradeId() {
    method setGradeId (line 17) | public void setGradeId(int gradeId) {
    method getGradeName (line 20) | public String getGradeName() {
    method setGradeName (line 23) | public void setGradeName(String gradeName) {
    method getCourseId (line 26) | public String getCourseId() {
    method setCourseId (line 29) | public void setCourseId(String courseId) {
    method Grade (line 32) | public Grade() {
    method Grade (line 36) | public Grade(int gradeId, String gradeName, String courseId) {
    method toString (line 42) | @Override

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/domain/MsgItem.java
  class MsgItem (line 3) | public class MsgItem {
    method getRemark (line 7) | public String getRemark() {
    method setRemark (line 10) | public void setRemark(String remark) {
    method getErrorNo (line 13) | public String getErrorNo() {
    method setErrorNo (line 16) | public void setErrorNo(String errorNo) {
    method getErrorInfo (line 19) | public String getErrorInfo() {
    method setErrorInfo (line 22) | public void setErrorInfo(String errorInfo) {

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/domain/Paper.java
  class Paper (line 7) | public class Paper {
    method Paper (line 30) | public Paper() {
    method Paper (line 33) | public Paper(String paperId, String paperName, String courseId,
    method getPaperId (line 49) | public String getPaperId() {
    method setPaperId (line 52) | public void setPaperId(String paperId) {
    method getPaperName (line 55) | public String getPaperName() {
    method setPaperName (line 58) | public void setPaperName(String paperName) {
    method getCourseId (line 61) | public String getCourseId() {
    method setCourseId (line 64) | public void setCourseId(String courseId) {
    method getGradeId (line 67) | public String getGradeId() {
    method setGradeId (line 70) | public void setGradeId(String gradeId) {
    method getUserId (line 73) | public String getUserId() {
    method setUserId (line 76) | public void setUserId(String userId) {
    method getQuestionId (line 79) | public String getQuestionId() {
    method setQuestionId (line 82) | public void setQuestionId(String questionId) {
    method getBeginTime (line 85) | public String getBeginTime() {
    method setBeginTime (line 88) | public void setBeginTime(String beginTime) {
    method getEndTime (line 91) | public String getEndTime() {
    method setEndTime (line 94) | public void setEndTime(String endTime) {
    method getAllowTime (line 97) | public String getAllowTime() {
    method setAllowTime (line 100) | public void setAllowTime(String allowTime) {
    method getScore (line 103) | public String getScore() {
    method setScore (line 106) | public void setScore(String score) {
    method getPaperstate (line 109) | public String getPaperstate() {
    method setPaperstate (line 112) | public void setPaperstate(String paperstate) {
    method toString (line 115) | @Override

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/domain/Question.java
  class Question (line 3) | public class Question {
    method getQuestionId (line 30) | public int getQuestionId() {
    method setQuestionId (line 33) | public void setQuestionId(int questionId) {
    method getQuesName (line 36) | public String getQuesName() {
    method setQuesName (line 39) | public void setQuesName(String quesName) {
    method getOptionA (line 42) | public String getOptionA() {
    method setOptionA (line 45) | public void setOptionA(String optionA) {
    method getOptionB (line 48) | public String getOptionB() {
    method setOptionB (line 51) | public void setOptionB(String optionB) {
    method getOptionC (line 54) | public String getOptionC() {
    method setOptionC (line 57) | public void setOptionC(String optionC) {
    method getOptionD (line 60) | public String getOptionD() {
    method setOptionD (line 63) | public void setOptionD(String optionD) {
    method getAnswer (line 66) | public String getAnswer() {
    method setAnswer (line 69) | public void setAnswer(String answer) {
    method getUserAnswer (line 72) | public String getUserAnswer() {
    method setUserAnswer (line 75) | public void setUserAnswer(String userAnswer) {
    method getCourseId (line 78) | public String getCourseId() {
    method setCourseId (line 81) | public void setCourseId(String courseId) {
    method getTypeId (line 84) | public String getTypeId() {
    method setTypeId (line 87) | public void setTypeId(String typeId) {
    method getDifficulty (line 90) | public int getDifficulty() {
    method setDifficulty (line 93) | public void setDifficulty(int difficulty) {
    method getRemark (line 96) | public String getRemark() {
    method setRemark (line 99) | public void setRemark(String remark) {
    method getAnswerDetail (line 102) | public String getAnswerDetail() {
    method setAnswerDetail (line 105) | public void setAnswerDetail(String answerDetail) {
    method getGradeId (line 108) | public String getGradeId() {
    method setGradeId (line 111) | public void setGradeId(String gradeId) {
    method Question (line 114) | public Question() {
    method Question (line 117) | public Question(int questionId, String quesName, String optionA,
    method toString (line 137) | @Override

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/domain/Type.java
  class Type (line 7) | public class Type {
    method getTypeId (line 16) | public int getTypeId() {
    method setTypeId (line 19) | public void setTypeId(int typeId) {
    method getTypeName (line 22) | public String getTypeName() {
    method setTypeName (line 25) | public void setTypeName(String typeName) {
    method getScore (line 28) | public int getScore() {
    method setScore (line 31) | public void setScore(int score) {
    method getRemark (line 34) | public String getRemark() {
    method setRemark (line 37) | public void setRemark(String remark) {
    method Type (line 41) | public Type() {
    method Type (line 44) | public Type(int typeId, String typeName, int score, String remark) {
    method toString (line 51) | @Override

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/domain/User.java
  class User (line 11) | public class User
    method getUserId (line 33) | public String getUserId() {
    method setUserId (line 36) | public void setUserId(String userId) {
    method getUserName (line 39) | public String getUserName() {
    method setUserName (line 42) | public void setUserName(String userName) {
    method getUserPwd (line 45) | public String getUserPwd() {
    method setUserPwd (line 48) | public void setUserPwd(String userPwd) {
    method getGrade (line 51) | public String getGrade() {
    method setGrade (line 54) | public void setGrade(String grade) {
    method getUserType (line 57) | public int getUserType() {
    method setUserType (line 60) | public void setUserType(int userType) {
    method getUserState (line 63) | public int getUserState() {
    method setUserState (line 66) | public void setUserState(int userState) {
    method getEmail (line 69) | public String getEmail() {
    method setEmail (line 72) | public void setEmail(String email) {
    method getTelephone (line 75) | public String getTelephone() {
    method setTelephone (line 78) | public void setTelephone(String telephone) {
    method getAddress (line 81) | public String getAddress() {
    method setAddress (line 84) | public void setAddress(String address) {
    method getRemark (line 88) | public String getRemark() {
    method setRemark (line 91) | public void setRemark(String remark) {
    method User (line 95) | public User() {
    method User (line 100) | public User(String userId, String userName, String userPwd, String grade,
    method toString (line 116) | @Override

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/pagination/Page.java
  class Page (line 9) | public class Page<T> {
    method getPageNo (line 18) | public int getPageNo() {
    method setPageNo (line 22) | public void setPageNo(int pageNo) {
    method getPageSize (line 26) | public int getPageSize() {
    method setPageSize (line 30) | public void setPageSize(int pageSize) {
    method getTotalRecord (line 34) | public int getTotalRecord() {
    method setTotalRecord (line 38) | public void setTotalRecord(int totalRecord) {
    method getTotalPage (line 45) | public int getTotalPage() {
    method setTotalPage (line 49) | public void setTotalPage(int totalPage) {
    method getResults (line 53) | public List<T> getResults() {
    method setResults (line 57) | public void setResults(List<T> results) {
    method getParams (line 61) | public Map<String, Object> getParams() {
    method setParams (line 65) | public void setParams(Map<String, Object> params) {
    method toString (line 69) | @Override

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/pagination/PageInterceptor.java
  class PageInterceptor (line 37) | @Intercepts( {
    method intercept (line 46) | public Object intercept(Invocation invocation) throws Throwable {
    method plugin (line 87) | public Object plugin(Object target) {
    method setProperties (line 94) | public void setProperties(Properties properties) {
    method getPageSql (line 106) | private String getPageSql(Page<?> page, String sql) {
    method getMysqlPageSql (line 122) | private String getMysqlPageSql(Page<?> page, StringBuffer sqlBuffer) {
    method getOraclePageSql (line 135) | private String getOraclePageSql(Page<?> page, StringBuffer sqlBuffer) {
    method setTotalRecord (line 152) | private void setTotalRecord(Page<?> page,
    method getCountSql (line 200) | private String getCountSql(String sql) {
    class ReflectUtil (line 209) | private static class ReflectUtil {
      method getFieldValue (line 216) | public static Object getFieldValue(Object obj, String fieldName) {
      method getField (line 240) | private static Field getField(Object obj, String fieldName) {
      method setFieldValue (line 259) | public static void setFieldValue(Object obj, String fieldName,

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/CourseService.java
  type CourseService (line 10) | public interface CourseService {
    method find (line 11) | public List<Course> find(Course course);
    method get (line 12) | public Course get(int id);
    method insert (line 13) | public void insert(Course course);
    method update (line 14) | public void update(Course course);
    method delete (line 15) | public void delete(int id);
    method findByPage (line 16) | public PageInfo<Course> findByPage(Course course, Integer pageNo,Integ...

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/ErrorBookService.java
  type ErrorBookService (line 8) | public interface ErrorBookService {
    method find (line 9) | public List<ErrorBook> find(ErrorBook errorBook);
    method get (line 10) | public ErrorBook get(int id);
    method insert (line 11) | public void insert(ErrorBook errorBook);
    method update (line 12) | public void update(ErrorBook errorBook);
    method delete (line 13) | public void delete(int id);
    method getBookInfo (line 14) | public List<ErrorBook> getBookInfo(Map map);

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/GradeService.java
  type GradeService (line 10) | public interface GradeService {
    method find (line 11) | public List<Grade> find(Grade grade);
    method get (line 12) | public Grade get(int id);
    method insert (line 13) | public void insert(Grade grade);
    method update (line 14) | public void update(Grade grade);
    method delete (line 15) | public void delete(int id);
    method findByPage (line 16) | public PageInfo<Grade> findByPage(Grade grade, Integer pageNo,Integer ...

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/PaperService.java
  type PaperService (line 12) | public interface PaperService {
    method find (line 13) | public List<Paper> find(Paper paper);
    method get (line 14) | public Paper get(Serializable id);
    method insert (line 15) | public void insert(Paper paper);
    method update (line 16) | public void update(Paper paper);
    method delete (line 17) | public void delete(Serializable id);
    method delete (line 18) | public void delete(Serializable[] ids);
    method getUserPaperById (line 20) | public List<Paper> getUserPaperById(Serializable id);
    method getPaperDetail (line 22) | public Paper getPaperDetail(Map map);
    method updateUserPaper (line 24) | public void updateUserPaper(Map map);
    method getUndoPaper (line 26) | public List<Paper> getUndoPaper(Map map);
    method qryUndoPaper (line 28) | public List<Paper> qryUndoPaper(Map map);
    method findAllPage (line 29) | public PageInfo<Paper> findAllPage(Paper paper, Integer pageNo,Integer...

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/QuestionService.java
  type QuestionService (line 10) | public interface QuestionService {
    method find (line 11) | public List<Question> find(Question question);
    method get (line 12) | public Question get(int id);
    method insert (line 13) | public void insert(Question question);
    method update (line 14) | public void update(Question question);
    method delete (line 15) | public void delete(int id);
    method createPaper (line 16) | public List<Question> createPaper(Map map);
    method findByPage (line 17) | public PageInfo<Question> findByPage(Question question, Integer pageNo...

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/TypeService.java
  type TypeService (line 10) | public interface TypeService {
    method find (line 11) | public List<Type> find(Type type);
    method get (line 12) | public Type get(int id);
    method insert (line 13) | public void insert(Type type);
    method update (line 14) | public void update(Type type);
    method delete (line 15) | public void delete(int id);
    method findByPage (line 16) | public PageInfo<Type> findByPage(Type type, Integer pageNo,Integer pag...

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/UserService.java
  type UserService (line 11) | public interface UserService {
    method find (line 12) | public List<User> find(User user);
    method findPending (line 14) | public List<User> findPending(User user);
    method get (line 15) | public User get(Serializable id);
    method insert (line 16) | public void insert(User user);
    method update (line 17) | public void update(User user);
    method delete (line 18) | public void delete(Serializable id);
    method delete (line 19) | public void delete(Serializable[] ids);
    method login (line 20) | public User login(User user);
    method getStu (line 22) | public User getStu(User user);
    method findByPage (line 24) | public PageInfo<User> findByPage(User user, Integer pageNo,Integer pag...
    method findPendingByPage (line 26) | public PageInfo<User> findPendingByPage(User user, Integer pageNo,Inte...

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/impl/CourseServiceImpl.java
  class CourseServiceImpl (line 15) | @Service
    method find (line 20) | public List<Course> find(Course course) {
    method get (line 24) | public Course get(int id) {
    method insert (line 28) | public void insert(Course course) {
    method update (line 32) | public void update(Course course) {
    method delete (line 36) | public void delete(int id) {
    method findByPage (line 40) | public PageInfo<Course> findByPage(Course course, Integer pageNo,

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/impl/ErrorBookServiceImpl.java
  class ErrorBookServiceImpl (line 12) | @Service
    method find (line 17) | public List<ErrorBook> find(ErrorBook errorBook) {
    method get (line 21) | public ErrorBook get(int id) {
    method insert (line 25) | public void insert(ErrorBook errorBook) {
    method update (line 29) | public void update(ErrorBook errorBook) {
    method delete (line 33) | public void delete(int id) {
    method getBookInfo (line 37) | public List<ErrorBook> getBookInfo(Map map) {

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/impl/GradeServiceImpl.java
  class GradeServiceImpl (line 15) | @Service
    method find (line 21) | public List<Grade> find(Grade grade) {
    method get (line 25) | public Grade get(int id) {
    method insert (line 29) | public void insert(Grade grade) {
    method update (line 33) | public void update(Grade grade) {
    method delete (line 37) | public void delete(int id) {
    method findByPage (line 41) | public PageInfo<Grade> findByPage(Grade grade, Integer pageNo,

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/impl/PaperServiceImpl.java
  class PaperServiceImpl (line 17) | @Service
    method find (line 22) | public List<Paper> find(Paper paper) {
    method get (line 26) | public Paper get(Serializable id) {
    method insert (line 30) | public void insert(Paper paper) {
    method update (line 34) | public void update(Paper paper) {
    method delete (line 38) | public void delete(Serializable id) {
    method delete (line 42) | public void delete(Serializable[] ids) {
    method getUserPaperById (line 46) | public List<Paper> getUserPaperById(Serializable id) {
    method getPaperDetail (line 51) | public Paper getPaperDetail(Map map) {
    method updateUserPaper (line 56) | public void updateUserPaper(Map map) {
    method getUndoPaper (line 61) | public List<Paper> getUndoPaper(Map map) {
    method qryUndoPaper (line 66) | public List<Paper> qryUndoPaper(Map map) {
    method findAllPage (line 71) | public PageInfo<Paper> findAllPage(Paper paper, Integer pageNo,

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/impl/QuestionServiceImpl.java
  class QuestionServiceImpl (line 15) | @Service
    method find (line 21) | public List<Question> find(Question question) {
    method get (line 25) | public Question get(int id) {
    method insert (line 29) | public void insert(Question question) {
    method update (line 33) | public void update(Question question) {
    method delete (line 37) | public void delete(int id) {
    method createPaper (line 41) | public List<Question> createPaper(Map map) {
    method findByPage (line 46) | public PageInfo<Question> findByPage(Question question, Integer pageNo,

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/impl/TypeServiceImpl.java
  class TypeServiceImpl (line 16) | @Service
    method find (line 22) | public List<Type> find(Type type) {
    method get (line 26) | public Type get(int id) {
    method insert (line 30) | public void insert(Type type) {
    method update (line 34) | public void update(Type type) {
    method delete (line 38) | public void delete(int id) {
    method findByPage (line 42) | public PageInfo<Type> findByPage(Type type, Integer pageNo, Integer pa...

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/service/impl/UserServiceImpl.java
  class UserServiceImpl (line 17) | @Service
    method find (line 23) | public List<User> find(User user) {
    method get (line 28) | public User get(Serializable id) {
    method insert (line 33) | public void insert(User user) {
    method update (line 41) | public void update(User user) {
    method delete (line 46) | public void delete(Serializable id) {
    method delete (line 51) | public void delete(Serializable[] ids) {
    method login (line 56) | public User login(User user) {
    method findPending (line 68) | public List<User> findPending(User user) {
    method getStu (line 73) | public User getStu(User user) {
    method findByPage (line 78) | public PageInfo<User> findByPage(User user, Integer pageNo, Integer pa...
    method findPendingByPage (line 90) | public PageInfo<User> findPendingByPage(User user, Integer pageNo,

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/util/Arith.java
  class Arith (line 8) | public class Arith {
    method add (line 17) | public static double add(double v1,double v2){
    method sub (line 28) | public static double sub(double v1,double v2){
    method mul (line 39) | public static double mul(double v1,double v2){
    method div (line 51) | public static double div(double v1,double v2){
    method div (line 62) | public static double div(double v1,double v2,int scale){
    method round (line 77) | public static double round(double v,int scale){
    method round (line 88) | public int round(int i1,int i2){
    method pow (line 100) | public int pow(int i1,int i2){
    method getSequence (line 107) | public static int[] getSequence(int maxnum) {
    method main (line 123) | public static void main(String[] agrs){

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/util/ComputeScore.java
  class ComputeScore (line 11) | public class ComputeScore {
    method getScore (line 13) | public static double getScore(String str1,String str2){
    method main (line 18) | public static void main(String[] args) {

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/util/Computeclass.java
  class Computeclass (line 6) | public class Computeclass {
    method SimilarDegree (line 16) | public static double SimilarDegree(String strA, String strB){
    method removeSign (line 29) | public static String removeSign(String str) {
    method charReg (line 44) | public static boolean charReg(char charValue) {
    method longestCommonSubstring (line 55) | public static String longestCommonSubstring(String strA, String strB) {
    method similarityResult (line 102) | public static String similarityResult(double resule){

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/util/DateConverter.java
  class DateConverter (line 27) | public class DateConverter implements WebBindingInitializer {
    method initBinder (line 28) | public void initBinder(WebDataBinder binder, WebRequest request) {

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/util/DownloadUtil.java
  class DownloadUtil (line 11) | public class DownloadUtil {
    method download (line 19) | protected void download(String filePath,String returnName,HttpServletR...
    method download (line 30) | protected void download(File file,String returnName,HttpServletRespons...
    method prototypeDownload (line 40) | public void prototypeDownload(File file,String returnName,HttpServletR...
    method download (line 100) | public void download(ByteArrayOutputStream byteArrayOutputStream, Http...

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/util/FormatStyle.java
  class FormatStyle (line 4) | public class FormatStyle {
    method main (line 6) | public static void main(String[] args) {
    method fileSize (line 13) | public String fileSize(String s1) {

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/util/MD5Util.java
  class MD5Util (line 5) | public class MD5Util {
    method getData (line 6) | public static String getData(String str) {
    method main (line 29) | public static void main(String[] args) {

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/util/MybatisUtil.java
  class MybatisUtil (line 12) | public class MybatisUtil {
    method openSession (line 26) | public static SqlSession openSession(){

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/util/TextSimilarityUtil.java
  class TextSimilarityUtil (line 8) | public class TextSimilarityUtil {
    method getSimilarity (line 10) | public static double getSimilarity(String doc1, String doc2) {
    method isHanZi (line 69) | public static boolean isHanZi(char ch) {
    method getGB2312Id (line 93) | public static short getGB2312Id(char ch) {
    method main (line 109) | public static void main(String[] args) {

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/util/UtilFuns.java
  class UtilFuns (line 19) | public class UtilFuns {
    method newLine (line 22) | static public String newLine(){
    method arrayValid (line 28) | public static boolean arrayValid(Object[] objects) {
    method listValid (line 37) | public boolean listValid(List list) {
    method age (line 47) | public int age(String dateStart, String dateEnd) throws Exception{
    method isOdd (line 54) | public boolean isOdd(int i){
    method cutStr (line 62) | public String cutStr(String str,int len){
    method fixSpaceStr (line 72) | public String fixSpaceStr(String str,int len){
    method fixSpaceStr (line 89) | public String fixSpaceStr(int number,int len){
    method prefixSpaceStr (line 94) | public String prefixSpaceStr(String str,int len){
    method suspensionStr (line 112) | public String suspensionStr(String str,int len){
    method joinUrlParameter (line 122) | public static String joinUrlParameter(List<String> sList){
    method splitStr (line 144) | static public String[] splitStr(String str,String SplitFlag){
    method splitFindStr (line 163) | public String[] splitFindStr(String str){
    method splitStair (line 175) | static public String[] splitStair(String str,String SplitFlag){
    method joinStr (line 197) | static public String joinStr(String[] aStr,String SplitFlag){
    method joinStr (line 211) | static public String joinStr(String[] aStr){
    method joinStr (line 235) | static public String joinStr(String[] aStr,String sPrefix,String sSuff...
    method joinInStr (line 249) | static public String joinInStr(String[] aStr){
    method joinStr (line 263) | static public String joinStr(String[] aStr,String sPrefix,String sSuff...
    method joinStr (line 276) | static public String joinStr(String s, String symbol){
    method joinStr (line 284) | static public String joinStr(int len, String symbol){
    method SysTime (line 299) | static public String SysTime(String strStyle){
    method sysTime (line 310) | static public String sysTime(){
    method sysDate (line 318) | static public String sysDate(){
    method isNull (line 328) | public static boolean isNull(Object obj){
    method isNotNull (line 339) | public static boolean isNotNull(Object obj){
    method isEmpty (line 350) | public static boolean isEmpty(String str){
    method isEmpty (line 361) | public static boolean isEmpty(String strs[]){
    method isNotEmpty (line 372) | public static boolean isNotEmpty(String str){
    method isNotEmpty (line 383) | public static boolean isNotEmpty(Object obj){
    method isNotEmpty (line 394) | public static boolean isNotEmpty(List obj){
    method convertNull (line 412) | public static String convertNull(String strvalue)
    method convertNull (line 425) | public static String[] convertNull(String[] aContent)
    method convertNull (line 439) | public static String convertNull(Object o)
    method ConvertZero (line 454) | public static int ConvertZero(Object o)
    method cvtPecrent (line 469) | public static int cvtPecrent(Object o)
    method FormatZero (line 484) | public static String FormatZero(Object o)
    method FormatZero (line 499) | public static String FormatZero(String s)
    method FormatNumber (line 513) | public static String FormatNumber(Object o,String patter)
    method FormatNumber (line 529) | public static String FormatNumber(String s)
    method ConvertTD (line 544) | public static String ConvertTD(String strvalue)
    method ConvertSpaceTD (line 558) | public static String ConvertSpaceTD(Object o)
    method ConvertCH (line 578) | public static String ConvertCH(String strvalue)
    method ConvertCStr (line 595) | public static String ConvertCStr(String strvalue)
    method ConvertCStr (line 610) | public static String ConvertCStr(Object o)
    method UrlEncoder (line 631) | public String UrlEncoder(String s)
    method UrlDecoder (line 651) | public String UrlDecoder(String s)
    method format_Aaa (line 673) | public static String format_Aaa(String source) {
    method parseLong (line 690) | public static long parseLong(String param) {
    method parseFloat (line 706) | public static float parseFloat(String param) {
    method parseInt (line 722) | public static int parseInt(String param) {
    method parseDate (line 734) | public static Date parseDate(String currDate, String format) {
    method parseDate (line 748) | public static Date parseDate(String currDate) {
    method parseTime (line 761) | public static Date parseTime(String currDate, String format) {
    method parseDateTime (line 775) | public static Date parseDateTime(String currDate, String format) {
    method parseDouble (line 794) | public static double parseDouble(String param) {
    method existElements (line 808) | public static int existElements(String s,ArrayList aList) {
    method existElements (line 822) | public static int existElements(String s,String[] a) {
    method existElements (line 836) | public static boolean existElements(Object o, Set set) {
    method IsIndexOfElements (line 854) | public static int IsIndexOfElements(String s,ArrayList aList) {
    method ArrayListToString (line 871) | public String[] ArrayListToString(ArrayList aList) {
    method formatArrayList (line 884) | public static void formatArrayList(ArrayList al) {
    method ComboList (line 899) | public String ComboList(String CurrentValue, String[] content) {
    method ComboListMust (line 918) | public String ComboListMust(String CurrentValue, String[] content) {
    method ComboList (line 949) | public String ComboList(String CurrentValue,String[] values, String[] ...
    method ComboListMust (line 972) | public String ComboListMust(String CurrentValue,String[] values, Strin...
    method StrToTimestamp (line 999) | public static Timestamp StrToTimestamp(String timestampStr,String patt...
    method StrToDateTimeFormat (line 1011) | public static String StrToDateTimeFormat(String timestampStr,String pa...
    method dateTimeFormat (line 1021) | public static String dateTimeFormat(Date date,String pattern) throws P...
    method dateTimeFormat (line 1031) | public static String dateTimeFormat(Date date) throws ParseException {
    method formatDateTimeCN (line 1043) | public static String formatDateTimeCN(String date) throws ParseExcepti...
    method formatDateEN (line 1078) | public static String formatDateEN(String date) throws ParseException {
    method formatShortMonth (line 1120) | public String formatShortMonth(String strDate){
    method formatMonth (line 1125) | public String formatMonth(String strDate){
    method delLastChar (line 1132) | public static String delLastChar(String s){
    method delLastChars (line 1144) | public static String delLastChars(String s,int len){
    method htmlReplaceAll (line 1156) | public String htmlReplaceAll(String s){
    method htmlNewline (line 1168) | public static String htmlNewline(String s){
    method getPassString (line 1189) | public static String getPassString( String strvalue, int Flag ) {
    method getPassString (line 1223) | public static String getPassString( String strvalue, int Flag, int sFl...
    method getPatternString (line 1267) | public static String getPatternString( String s, int iStartPos, int iE...
    method getPatternString (line 1301) | public static String getPatternString( String s, int iStartPos, String...
    method getPatternString (line 1305) | public static String getPatternString( String s, int iStartPos, String...
    method getQQString (line 1320) | public static String getQQString( String strvalue ) {
    method getNoExistString (line 1343) | public String getNoExistString(String allString, String existString){
    method getNoExistString (line 1348) | public String getNoExistString(String[] allString, String existString){
    method main (line 1365) | public static void main(String[] args) throws Exception {
    method replaceLast (line 1525) | public String replaceLast(String string, String toReplace, String repl...
    method getROOTPath (line 1534) | public static String getROOTPath(){
    method getClassRootPath (line 1538) | public String getClassRootPath(){

FILE: Check Maven Webapp/src/main/java/edu/fjnu/online/util/file/FileUtil.java
  class FileUtil (line 23) | public class FileUtil {
    method getFileExt (line 30) | public String getFileExt(String s){
    method getNameWithoutExtension (line 46) | private String getNameWithoutExtension(String fileName){
    method isImgFile (line 50) | public boolean isImgFile(String file)
    method getFileName (line 61) | public String getFileName(String s){
    method getFilePath (line 71) | public String getFilePath(String s){
    method newFile (line 82) | public String newFile(String sPath, String sFile){
    method clearDir (line 102) | public static synchronized void clearDir(String dir_path)
    method deleteDir (line 120) | public static synchronized void deleteDir(String dir_path)
    method deleteDir (line 127) | public static synchronized void deleteDir(File f)
    method makeDir (line 150) | public static synchronized void makeDir(String dirPath)
    method rename (line 168) | public static synchronized void rename(String sOld,String sNew)
    method formulaDirName (line 177) | public static synchronized String formulaDirName(String dirName){
    method formulaPath (line 182) | public static synchronized String formulaPath(String dirName){
    method lastDir (line 187) | public static synchronized String lastDir(String dir_path){
    method deleteFile (line 202) | public static void deleteFile(String FileName) {
    method deleteFiles (line 211) | public static boolean deleteFiles(String dir) {
    method deleteFiles (line 240) | public static boolean deleteFiles(String path, String[] files) {
    method deleteFiles (line 256) | public static boolean deleteFiles(List files) {
    method fileToOutputStream (line 281) | public static void fileToOutputStream(File f, OutputStream os)
    method readTxtFile (line 299) | public List<String> readTxtFile(String sFile) {
    method WriteTxt (line 314) | public String WriteTxt(String sPath,String sFile,String sContent) {
    method createTxt (line 334) | public String createTxt(String sPathFile,String sContent) throws FileN...
    method createTxt (line 357) | public String createTxt(String sPath,String sFile,String sContent) thr...
    method createTxt (line 377) | public String createTxt(String sPath,String sFile,String sContent,Stri...
    method newTxt (line 396) | public String newTxt(String sPath,String sFile,String sContent,String ...
    method WriteTxt (line 423) | public String WriteTxt(String sFile,String[] aTitle,String[] aContent,...
    method WriteXML (line 470) | public String WriteXML(String sFile,String indent,String root,String[]...
    method CreateXML (line 543) | public ArrayList CreateXML(String StartIndent,String indent,String[] a...
    method WriteXML (line 594) | public String WriteXML(String sFile,String sXmlVer,String root,ArrayLi...
    method isExist (line 635) | public boolean isExist(String filename){
    method isAbsolutePath (line 649) | public boolean isAbsolutePath(String path){
    method copyFile (line 657) | public void copyFile(String srcFile, String destFile)
    method copyFileIgnore (line 672) | public  boolean copyFileIgnore(String file1,String file2){
    method copyDir (line 694) | public void copyDir(String dir1,String dir2) throws java.io.FileNotFou...
    method copyDirectory (line 711) | public void copyDirectory(String srcDirectory, String destDirectory)
    method fileList (line 753) | public List fileList(String dir){
    method fileList (line 770) | public List fileList(String dir, String prefix){
    method fileList (line 789) | public List<String> fileList(String dir, String prefix, String suffix){
    method fileDir (line 810) | public List fileDir(String dir){
    method fileDir (line 827) | public List fileDir(String dir, String prefix){
    method dirfileList (line 845) | public List dirfileList(String dir){
    method moveFile (line 865) | public boolean moveFile(String srcFile, String destPath){
    method main (line 882) | public static void main(String[] args) throws IOException {

FILE: Check Maven Webapp/src/main/webapp/components/chart/amcolumn/export.aspx.cs
  class _export (line 6) | public partial class _export : System.Web.UI.Page
    method Page_Load (line 8) | protected void Page_Load(object sender, EventArgs e)

FILE: Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/amline/export.aspx.cs
  class _export (line 6) | public partial class _export : System.Web.UI.Page
    method Page_Load (line 8) | protected void Page_Load(object sender, EventArgs e)

FILE: Check Maven Webapp/src/main/webapp/components/chart/ampie_1.6.4.1/ampie/export.aspx.cs
  class _export (line 6) | public partial class _export : System.Web.UI.Page
    method Page_Load (line 8) | protected void Page_Load(object sender, EventArgs e)

FILE: Check Maven Webapp/src/main/webapp/components/jquery-ui/jquery-1.2.6.js
  function evalScript (line 531) | function evalScript( i, elem ) {
  function now (line 546) | function now(){
  function getWH (line 807) | function getWH() {
  function color (line 832) | function color( elem ) {
  function num (line 1369) | function num(elem, prop) {
  function bindReady (line 2329) | function bindReady(){
  function success (line 2815) | function success(){
  function complete (line 2825) | function complete(){
  function t (line 3222) | function t(gotoEnd){
  function border (line 3446) | function border(elem) {
  function add (line 3450) | function add(l, t) {

FILE: Check Maven Webapp/src/main/webapp/js/WdatePicker.js
  function B (line 57) | function B(){try{V[N],V.$dp=V.$dp||{}}catch($){V=Y;$dp=$dp||{}}var A={wi...
  function E (line 57) | function E(B,_,A,$){if(B.addEventListener){var C=_.replace(/on/,"");A._i...
  function L (line 57) | function L(A,$,_){if(A.removeEventListener){var B=$.replace(/on/,"");_._...
  function a (line 57) | function a(_,$,A){if(typeof _!=typeof $)return false;if(typeof _=="objec...
  function J (line 57) | function J(){var _,A,$=Y[N][C]("script");for(var B=0;B<$.length;B++){_=$...
  function K (line 57) | function K(A,$,B){var D=Y[N][C]("HEAD").item(0),_=Y[N].createElement("li...
  function F (line 57) | function F($){$=$||V;var A=0,_=0;while($!=V){var D=$.parent[N][C]("ifram...
  function W (line 57) | function W(G,F){if(G.getBoundingClientRect)return G.getBoundingClientRec...
  function M (line 57) | function M($){$=$||V;var B=$[N],A=($.innerWidth)?$.innerWidth:(B[H]&&B[H...
  function b (line 57) | function b($){$=$||V;var B=$[N],A=B[H],_=B.body;B=(A&&A.scrollTop!=null&...
  function D (line 57) | function D($){try{var _=$?($.srcElement||$.target):null;if($dp.cal&&!$dp...
  function Z (line 57) | function Z(){$dp.status=2}
  function U (line 57) | function U(K,C){if(!$dp)return;B();var L={};for(var H in K)L[H]=K[H];for...
  function R (line 57) | function R(_,$){return _.currentStyle?_.currentStyle[$]:document.default...
  function P (line 57) | function P(_,$){if(_)if($!=null)_.style.display=$;else return R(_,"displ...
  function I (line 57) | function I(G,_){var D=G.el?G.el.nodeName:"INPUT";if(_||G.eCont||new RegE...

FILE: Check Maven Webapp/src/main/webapp/js/bootstrap.js
  function transitionEnd (line 34) | function transitionEnd() {
  function removeElement (line 126) | function removeElement() {
  function Plugin (line 142) | function Plugin(option) {
  function Plugin (line 247) | function Plugin(option) {
  function Plugin (line 466) | function Plugin(option) {
  function getTargetFromTrigger (line 685) | function getTargetFromTrigger($trigger) {
  function Plugin (line 697) | function Plugin(option) {
  function clearMenus (line 829) | function clearMenus(e) {
  function getParent (line 848) | function getParent($this) {
  function Plugin (line 865) | function Plugin(option) {
  function Plugin (line 1194) | function Plugin(option, _relatedTarget) {
  function complete (line 1540) | function complete() {
  function Plugin (line 1692) | function Plugin(option) {
  function Plugin (line 1801) | function Plugin(option) {
  function ScrollSpy (line 1844) | function ScrollSpy(element, options) {
  function Plugin (line 1964) | function Plugin(option) {
  function next (line 2071) | function next() {
  function Plugin (line 2117) | function Plugin(option) {
  function Plugin (line 2274) | function Plugin(option) {

FILE: Check Maven Webapp/src/main/webapp/js/classie.js
  function classReg (line 20) | function classReg( className ) {
  function toggleClass (line 53) | function toggleClass( elem, c ) {

FILE: Check Maven Webapp/src/main/webapp/js/common.js
  function hideElement (line 37) | function hideElement(currentElement, targetElement, fn) {
  function showRemind (line 67) | function showRemind(element,defualtCss){
  function resize (line 91) | function resize(resizeHandle){
  function formSubmit (line 112) | function formSubmit (url,sTarget){

FILE: Check Maven Webapp/src/main/webapp/js/core.js
  function f (line 15) | function f(n) {
  function quote (line 56) | function quote(string) {
  function str (line 72) | function str(key, holder) {
  function walk (line 253) | function walk(holder, key) {
  function reduce (line 567) | function reduce(elem, size, border, margin) {
  function focusable (line 603) | function focusable(element, isTabIndexNotNaN) {
  function visible (line 618) | function visible(element) {
  function handleArray (line 836) | function handleArray(target_, pNode) {

FILE: Check Maven Webapp/src/main/webapp/js/datepicker/WdatePicker.js
  function Q (line 34) | function Q(_){T.$dp=T.$dp||{};for(var $ in _)T.$dp[$]=_[$];return T.$dp}
  function C (line 34) | function C(A,$,_){if(R)A.attachEvent($,_);else{var B=$.replace(/on/,"");...
  function J (line 34) | function J(){var _,A,$=document.getElementsByTagName("script");for(var B...
  function D (line 34) | function D(F){var E,C;if(F.substring(0,1)!="/"&&F.indexOf("://")==-1){E=...
  function K (line 34) | function K(C,$,D){var B=V[N],E=B[A]("HEAD").item(0),_=B.createElement("l...
  function X (line 34) | function X($,_){C($,"onload",_)}
  function Z (line 34) | function Z(_,$){var B=_.document,D=false;F();if((/WebKit|KHTML|MSIE/i).t...
  function E (line 34) | function E($){$=$||T;var B=0,_=0;while($!=T){var D=$.parent[N][A]("ifram...
  function U (line 34) | function U(E){if(R)return E.getBoundingClientRect();else{var A={ROOT_TAG...
  function M (line 34) | function M($){$=$||T;var _=$[N];_=_[H]&&_[H].clientHeight&&_[H].clientHe...
  function Y (line 34) | function Y($){$=$||T;var B=$[N],A=B[H],_=B.body;B=(A&&A.scrollTop!=null&...
  function B (line 34) | function B(_){src=_?(_.srcElement||_.target):null;if($dp&&$dp.dd&&$dp.dd...
  function W (line 34) | function W(){$dp.status=2;F()}
  function F (line 34) | function F(){if(O.length>0){var $=O.shift();$.el={innerHTML:""};$.eCont=...
  function S (line 34) | function S(C,$){$dp.win=V;C=C||{};if($){$dp.status=1;I({el:{innerHTML:""...
  function I (line 34) | function I(G,A){for(var F in $)if(F.substring(0,1)!="$")$dp[F]=$[F];for(...

FILE: Check Maven Webapp/src/main/webapp/js/datepicker/calendar.js
  function My97DP (line 7) | function My97DP(){$c=this;$dp.$w=window;$dt=this.date=new DPDate();this....
  function $ (line 7) | function $(){var _,$;for(_=0;($=document.getElementsByTagName("link")[_]...
  function $ (line 7) | function $(_){var $=(_+"").slice(1,2);$dp.has[$]=_.exec($dp.dateFmt)?($d...
  function C (line 7) | function C(A){var $=A.className.replace(/WdateFmtErr/g,"");if(A.classNam...
  function $ (line 7) | function $($){setA($,_,$.className+" WdateFmtErr")}
  function sb (line 7) | function sb(){this.s=new Array();this.i=0;this.a=function($){this.s[this...
  function getWeek (line 7) | function getWeek($){var _=new Date($.y,$.M-1,$.d),B=_.getDay();_.setDate...
  function getDay (line 7) | function getDay($){var _=new Date($.y,$.M-1,$.d);return _.getDay()}
  function show (line 7) | function show(){setDisp(arguments,"")}
  function showB (line 7) | function showB(){setDisp(arguments,"block")}
  function hide (line 7) | function hide(){setDisp(arguments,"none")}
  function setDisp (line 7) | function setDisp(_,$){for(i=0;i<_.length;i++)_[i].style.display=$}
  function shorH (line 7) | function shorH(_,$){$?show(_):hide(_)}
  function disHMS (line 7) | function disHMS(_,$){if($)_.disabled="";else{_.disabled="disabled";_.val...
  function c_y (line 7) | function c_y(_,$){if($||_!=$dt.y){$dt.y=_;dealRange("y");$c.redraw()}}
  function c_M (line 7) | function c_M(_,$){_=makeInRange(_,1,12);if($||_!=$dt.M){$dt.M=_;dealRang...
  function day_Click (line 7) | function day_Click(F,A,$,D,B,_){var C;if($dp.onpicking)C=$dp.onpicking.c...
  function c_d (line 7) | function c_d($,_){if(_||$!=$dt.d){$dt.d=$;dealRange("d");$c.redraw()}}
  function c_H (line 7) | function c_H(_,$){_=makeInRange(_,0,23);if($||_!=$dt.H){$dt.H=_;dealRang...
  function c_m (line 7) | function c_m(_,$){_=makeInRange(_,0,59);if($||_!=$dt.m){$dt.m=_;dealRang...
  function c_s (line 7) | function c_s(_,$){_=makeInRange(_,0,59);if($||_!=$dt.s){$dt.s=_;dealRang...
  function dealRange (line 7) | function dealRange(type){var func,rv,v;func="s_"+type+"($dt."+type+")";r...
  function s_y (line 7) | function s_y($){$dt.y=$d.yI.value=$}
  function s_M (line 7) | function s_M($){$dt.M=$;setA($d.MI,"realValue",$);$d.MI.value=$lang.aMon...
  function s_d (line 7) | function s_d($){$sdt.d=$dt.d=$}
  function s_H (line 7) | function s_H($){$dt.H=$d.HI.value=$}
  function s_m (line 7) | function s_m($){$dt.m=$d.mI.value=$}
  function s_s (line 7) | function s_s($){$dt.s=$d.sI.value=$}
  function setA (line 7) | function setA(A,_,$){if(A.setAttribute)A.setAttribute(_,$)}
  function getA (line 7) | function getA(_,$){return _.getAttribute($)}
  function makeInRange (line 7) | function makeInRange(_,$,A){if(_<$)_=$;else if(_>A)_=A;return _}
  function attachTabEvent (line 7) | function attachTabEvent($,_){$.attachEvent("onkeydown",function(){var $=...
  function doStr (line 7) | function doStr($,_){$=$+"";while($.length<_)$="0"+$;return $}
  function hideSel (line 7) | function hideSel(){hide($d.yD,$d.MD,$d.HD,$d.mD,$d.sD)}
  function updownEvent (line 7) | function updownEvent($){if($c.currFocus==undefined)$c.currFocus=$d.mI;sw...
  function DPDate (line 7) | function DPDate(D,A,$,C,B,_){this.loadDate=function(E,B,_,D,C,A){var $=n...
  function pInt (line 7) | function pInt($){return parseInt($,10)}
  function pIntDef (line 7) | function pIntDef(_,$){_=pInt(_);if(isNaN(_))_=$;return _}
  function rtn (line 7) | function rtn($,_){return $==null?_:$}
  function fireEvent (line 7) | function fireEvent(A,$){if($IE)A.fireEvent("on"+$);else{var _=document.c...

FILE: Check Maven Webapp/src/main/webapp/js/dtree/ckdtree/dtree.js
  function Node (line 13) | function Node(id, pid, name, url, title, target, icon, iconOpen, open) {
  function dTree (line 31) | function dTree(objName, iPath, formId) {
  function caBox (line 377) | function caBox(formId, regx ) {
  function isCheckedByRec (line 425) | function isCheckedByRec( form ,regx){

FILE: Check Maven Webapp/src/main/webapp/js/dtree/dtree/dtree.js
  function Node (line 13) | function Node(id, pid, name, url, title, target, icon, iconOpen, open) {
  function dTree (line 31) | function dTree(objName,iPath) {

FILE: Check Maven Webapp/src/main/webapp/js/dtree/dtree/dtreebak.js
  function Node (line 13) | function Node(id, pid, name, url, title, target, icon, iconOpen, open) {
  function dTree (line 31) | function dTree(objName,iPath) {

FILE: Check Maven Webapp/src/main/webapp/js/dtree/tdtree/dtree.js
  function Node (line 13) | function Node(id, pid, name, url, title, target, icon, iconOpen, open) {
  function dTree (line 33) | function dTree(objName, iPath, formId, inputId, useBox, typeBox) {
  function caBox (line 393) | function caBox(formId, idname, regx ) {
  function isCheckedByRec (line 440) | function isCheckedByRec( form ,idname ,regx){

FILE: Check Maven Webapp/src/main/webapp/js/jquery-1.10.1.js
  function isArraylike (line 983) | function isArraylike( obj ) {
  function Sizzle (line 1177) | function Sizzle( selector, context, results, seed ) {
  function isNative (line 1290) | function isNative( fn ) {
  function createCache (line 1300) | function createCache() {
  function markFunction (line 1318) | function markFunction( fn ) {
  function assert (line 1327) | function assert( fn ) {
  function addHandle (line 1350) | function addHandle( attrs, handler, test ) {
  function boolHandler (line 1369) | function boolHandler( elem, name ) {
  function interpolationHandler (line 1383) | function interpolationHandler( elem, name ) {
  function valueHandler (line 1393) | function valueHandler( elem ) {
  function siblingCheck (line 1408) | function siblingCheck( a, b ) {
  function createInputPseudo (line 1435) | function createInputPseudo( type ) {
  function createButtonPseudo (line 1446) | function createButtonPseudo( type ) {
  function createPositionalPseudo (line 1457) | function createPositionalPseudo( fn ) {
  function tokenize (line 2465) | function tokenize( selector, parseOnly ) {
  function toSelector (line 2532) | function toSelector( tokens ) {
  function addCombinator (line 2542) | function addCombinator( matcher, combinator, base ) {
  function elementMatcher (line 2592) | function elementMatcher( matchers ) {
  function condense (line 2606) | function condense( unmatched, map, filter, context, xml ) {
  function setMatcher (line 2627) | function setMatcher( preFilter, selector, matcher, postFilter, postFinde...
  function matcherFromTokens (line 2720) | function matcherFromTokens( tokens ) {
  function matcherFromGroupMatchers (line 2775) | function matcherFromGroupMatchers( elementMatchers, setMatchers ) {
  function multipleContexts (line 2903) | function multipleContexts( selector, contexts, results ) {
  function select (line 2912) | function select( selector, context, results, seed ) {
  function setFilters (line 2980) | function setFilters() {}
  function createOptions (line 3011) | function createOptions( options ) {
  function internalData (line 3594) | function internalData( elem, name, data, pvt /* Internal Use Only */ ){
  function internalRemoveData (line 3683) | function internalRemoveData( elem, name, pvt ) {
  function dataAttr (line 3880) | function dataAttr( elem, key, data ) {
  function isEmptyDataObject (line 3912) | function isEmptyDataObject( obj ) {
  function returnTrue (line 4733) | function returnTrue() {
  function returnFalse (line 4737) | function returnFalse() {
  function safeActiveElement (line 4741) | function safeActiveElement() {
  function sibling (line 5859) | function sibling( cur, dir ) {
  function winnow (line 5977) | function winnow( elements, qualifier, not ) {
  function createSafeFragment (line 6005) | function createSafeFragment( document ) {
  function manipulationTarget (line 6319) | function manipulationTarget( elem, content ) {
  function disableScript (line 6329) | function disableScript( elem ) {
  function restoreScript (line 6333) | function restoreScript( elem ) {
  function setGlobalEval (line 6344) | function setGlobalEval( elems, refElements ) {
  function cloneCopyEvent (line 6352) | function cloneCopyEvent( src, dest ) {
  function fixCloneNodeIssues (line 6380) | function fixCloneNodeIssues( src, dest ) {
  function getAll (line 6473) | function getAll( context, tag ) {
  function fixDefaultChecked (line 6496) | function fixDefaultChecked( elem ) {
  function vendorPropName (line 6838) | function vendorPropName( style, name ) {
  function isHidden (line 6860) | function isHidden( elem, el ) {
  function showHide (line 6867) | function showHide( elements, show ) {
  function setPositiveNumber (line 7193) | function setPositiveNumber( elem, value, subtract ) {
  function augmentWidthOrHeight (line 7201) | function augmentWidthOrHeight( elem, name, extra, isBorderBox, styles ) {
  function getWidthOrHeight (line 7240) | function getWidthOrHeight( elem, name, extra ) {
  function css_defaultDisplay (line 7284) | function css_defaultDisplay( nodeName ) {
  function actualDisplay (line 7316) | function actualDisplay( name, doc ) {
  function buildParams (line 7545) | function buildParams( prefix, obj, traditional, add ) {
  function addToPrefiltersOrTransports (line 7660) | function addToPrefiltersOrTransports( structure ) {
  function inspectPrefiltersOrTransports (line 7692) | function inspectPrefiltersOrTransports( structure, options, originalOpti...
  function ajaxExtend (line 7719) | function ajaxExtend( target, src ) {
  function done (line 8167) | function done( status, nativeStatusText, responses, headers ) {
  function ajaxHandleResponses (line 8314) | function ajaxHandleResponses( s, jqXHR, responses ) {
  function ajaxConvert (line 8369) | function ajaxConvert( s, response, jqXHR, isSuccess ) {
  function createStandardXHR (line 8637) | function createStandardXHR() {
  function createActiveXHR (line 8643) | function createActiveXHR() {
  function createFxNow (line 8889) | function createFxNow() {
  function createTween (line 8896) | function createTween( value, prop, animation ) {
  function Animation (line 8910) | function Animation( elem, properties, options ) {
  function propFilter (line 9014) | function propFilter( props, specialEasing ) {
  function defaultPrefilter (line 9081) | function defaultPrefilter( elem, props, opts ) {
  function Tween (line 9206) | function Tween( elem, options, prop, end, easing ) {
  function genFx (line 9430) | function genFx( type, includeWidth ) {
  function getWindow (line 9726) | function getWindow( elem ) {

FILE: Check Maven Webapp/src/main/webapp/js/jquery.js
  function jQuerySub (line 897) | function jQuerySub( selector, context ) {
  function doScrollCheck (line 963) | function doScrollCheck() {
  function createFlags (line 990) | function createFlags( flags ) {
  function resolveFunc (line 1325) | function resolveFunc( i ) {
  function progressFunc (line 1333) | function progressFunc( i ) {
  function dataAttr (line 1986) | function dataAttr( elem, key, data ) {
  function isEmptyDataObject (line 2017) | function isEmptyDataObject( obj ) {
  function handleQueueMarkDefer (line 2035) | function handleQueueMarkDefer( elem, type, src ) {
  function resolve (line 2194) | function resolve() {
  function returnFalse (line 3547) | function returnFalse() {
  function returnTrue (line 3550) | function returnTrue() {
  function dirNodeCheck (line 5261) | function dirNodeCheck( dir, cur, doneName, checkSet, nodeCheck, isXML ) {
  function dirCheck (line 5294) | function dirCheck( dir, cur, doneName, checkSet, nodeCheck, isXML ) {
  function isDisconnected (line 5567) | function isDisconnected( node ) {
  function winnow (line 5684) | function winnow( elements, qualifier, keep ) {
  function createSafeFragment (line 5721) | function createSafeFragment( document ) {
  function root (line 6093) | function root( elem, cur ) {
  function cloneCopyEvent (line 6100) | function cloneCopyEvent( src, dest ) {
  function cloneFixAttributes (line 6128) | function cloneFixAttributes( src, dest ) {
  function getAll (line 6273) | function getAll( elem ) {
  function fixDefaultChecked (line 6286) | function fixDefaultChecked( elem ) {
  function findInputs (line 6292) | function findInputs( elem ) {
  function shimCloneNode (line 6303) | function shimCloneNode( elem ) {
  function getWidthOrHeight (line 6794) | function getWidthOrHeight( elem, name, extra ) {
  function addToPrefiltersOrTransports (line 7035) | function addToPrefiltersOrTransports( structure ) {
  function inspectPrefiltersOrTransports (line 7071) | function inspectPrefiltersOrTransports( structure, options, originalOpti...
  function ajaxExtend (line 7113) | function ajaxExtend( target, src ) {
  function done (line 7455) | function done( status, nativeStatusText, responses, headers ) {
  function buildParams (line 7770) | function buildParams( prefix, obj, traditional, add ) {
  function ajaxHandleResponses (line 7820) | function ajaxHandleResponses( s, jqXHR, responses ) {
  function ajaxConvert (line 7885) | function ajaxConvert( s, response ) {
  function createStandardXHR (line 8150) | function createStandardXHR() {
  function createActiveXHR (line 8156) | function createActiveXHR() {
  function doAnimation (line 8495) | function doAnimation() {
  function stopQueue (line 8651) | function stopQueue( elem, data, index ) {
  function createFxNow (line 8693) | function createFxNow() {
  function clearFxNow (line 8698) | function clearFxNow() {
  function genFx (line 8703) | function genFx( type, num ) {
  function t (line 8818) | function t( gotoEnd ) {
  function defaultDisplay (line 9016) | function defaultDisplay( nodeName ) {
  function getWindow (line 9300) | function getWindow( elem ) {

FILE: Check Maven Webapp/src/main/webapp/js/jquery.pagination.js
  function numPages (line 22) | function numPages() {
  function getInterval (line 28) | function getInterval() {
  function pageSelected (line 42) | function pageSelected(page_id, evt) {
  function drawLinks (line 60) | function drawLinks() {

FILE: Check Maven Webapp/src/main/webapp/js/modernizr.custom.js
  function z (line 4) | function z(a){j.cssText=a}
  function A (line 4) | function A(a,b){return z(m.join(a+";")+(b||""))}
  function B (line 4) | function B(a,b){return typeof a===b}
  function C (line 4) | function C(a,b){return!!~(""+a).indexOf(b)}
  function D (line 4) | function D(a,b){for(var d in a){var e=a[d];if(!C(e,"-")&&j[e]!==c)return...
  function E (line 4) | function E(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a...
  function F (line 4) | function F(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+o....
  function k (line 4) | function k(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("hea...
  function l (line 4) | function l(){var a=r.elements;return typeof a=="string"?a.split(" "):a}
  function m (line 4) | function m(a){var b=i[a[g]];return b||(b={},h++,a[g]=h,i[h]=b),b}
  function n (line 4) | function n(a,c,f){c||(c=b);if(j)return c.createElement(a);f||(f=m(c));va...
  function o (line 4) | function o(a,c){a||(a=b);if(j)return a.createDocumentFragment();c=c||m(a...
  function p (line 4) | function p(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.crea...
  function q (line 4) | function q(a){a||(a=b);var c=m(a);return r.shivCSS&&!f&&!c.hasCSS&&(c.ha...
  function d (line 4) | function d(a){return"[object Function]"==o.call(a)}
  function e (line 4) | function e(a){return"string"==typeof a}
  function f (line 4) | function f(){}
  function g (line 4) | function g(a){return!a||"loaded"==a||"complete"==a||"uninitialized"==a}
  function h (line 4) | function h(){var a=p.shift();q=1,a?a.t?m(function(){("c"==a.t?B.injectCs...
  function i (line 4) | function i(a,c,d,e,f,i,j){function k(b){if(!o&&g(l.readyState)&&(u.r=o=1...
  function j (line 4) | function j(a,b,c,d,f){return q=0,b=b||"j",e(a)?i("c"==b?v:u,a,b,this.i++...
  function k (line 4) | function k(){var a=B;return a.loader={load:j,i:0},a}
  function b (line 4) | function b(a){var a=a.split("!"),b=x.length,c=a.pop(),d=a.length,c={url:...
  function g (line 4) | function g(a,e,f,g,h){var i=b(a),j=i.autoCallback;i.url.split(".").pop()...
  function h (line 4) | function h(a,b){function c(a,c){if(a){if(e(a))c||(j=function(){var a=[]....

FILE: Check Maven Webapp/src/main/webapp/js/tabledo.js
  function showTheWrite (line 8) | function showTheWrite(str){
  function sortnoTR (line 13) | function sortnoTR(){
  function clearTRstyle (line 18) | function clearTRstyle( filterName ){
  function setTDText (line 30) | function setTDText( obj, colNo, value ){
  function setSelectOption (line 39) | function setSelectOption(obj, curValue ){
  function setTRUpdateFlag (line 50) | function setTRUpdateFlag( obj ){
  function setTRUpdateFlagTrue (line 71) | function setTRUpdateFlagTrue( obj ){
  function newTRRecord (line 80) | function newTRRecord(objId, isClear) {
  function delIdsRecord (line 147) | function delIdsRecord(ckName) {
  function clearDelId (line 162) | function clearDelId(){
  function delSpaceTRRecord (line 167) | function delSpaceTRRecord(objId, topRow){
  function delTRRecord (line 209) | function delTRRecord(ckName, tableId, topRow, clearValueObjName ,isDelet...
  function clearTRRecord (line 266) | function clearTRRecord(ckName, tableId, topRow) {
  function doLastTR (line 275) | function doLastTR(objId) {
  function swapTRRecord (line 299) | function swapTRRecord(ckName, tableId, topRow, Flag) {
  function sortno (line 360) | function sortno(objId, whichCol, topRow){
  function trSwap (line 375) | function trSwap(tableId, tr1Index, tr2Index){
  function trSwap_Up (line 384) | function trSwap_Up(tableId, trIndex){
  function trSwap_Down (line 388) | function trSwap_Down(tableId, trIndex){
  function dragtableinit (line 400) | function dragtableinit(){
  function mousedown (line 413) | function mousedown(){
  function dragmove (line 426) | function dragmove(){
  function dragover (line 431) | function dragover(){
  function dragend (line 437) | function dragend( ){
  function ShowFloatDiv2 (line 462) | function ShowFloatDiv2(obj,num,length){
  function HideFloatDiv2 (line 475) | function HideFloatDiv2(obj,num,length){
  function HightLightRows (line 488) | function HightLightRows(obj){

FILE: Check Maven Webapp/src/main/webapp/js/uisearch.js
  function addToPrototype (line 17) | function addToPrototype(name, method) {
  function mobilecheck (line 70) | function mobilecheck() {
  function UISearch (line 81) | function UISearch( el, options ) {

FILE: Check Maven Webapp/src/main/webapp/sql/onlinetest.sql
  type `t_course` (line 21) | CREATE TABLE `t_course` (
  type `t_errorbook` (line 39) | CREATE TABLE `t_errorbook` (
  type `t_grade` (line 75) | CREATE TABLE `t_grade` (
  type `t_paper` (line 93) | CREATE TABLE `t_paper` (
  type `t_question` (line 132) | CREATE TABLE `t_question` (
  type `t_resources` (line 192) | CREATE TABLE `t_resources` (
  type `t_type` (line 216) | CREATE TABLE `t_type` (
  type `t_user` (line 238) | CREATE TABLE `t_user` (

FILE: Check Maven Webapp/target/Check/components/chart/amcolumn/export.aspx.cs
  class _export (line 6) | public partial class _export : System.Web.UI.Page
    method Page_Load (line 8) | protected void Page_Load(object sender, EventArgs e)

FILE: Check Maven Webapp/target/Check/components/chart/amline_1.6.4.1/amline/export.aspx.cs
  class _export (line 6) | public partial class _export : System.Web.UI.Page
    method Page_Load (line 8) | protected void Page_Load(object sender, EventArgs e)

FILE: Check Maven Webapp/target/Check/components/chart/ampie_1.6.4.1/ampie/export.aspx.cs
  class _export (line 6) | public partial class _export : System.Web.UI.Page
    method Page_Load (line 8) | protected void Page_Load(object sender, EventArgs e)

FILE: Check Maven Webapp/target/Check/components/jquery-ui/jquery-1.2.6.js
  function evalScript (line 531) | function evalScript( i, elem ) {
  function now (line 546) | function now(){
  function getWH (line 807) | function getWH() {
  function color (line 832) | function color( elem ) {
  function num (line 1369) | function num(elem, prop) {
  function bindReady (line 2329) | function bindReady(){
  function success (line 2815) | function success(){
  function complete (line 2825) | function complete(){
  function t (line 3222) | function t(gotoEnd){
  function border (line 3446) | function border(elem) {
  function add (line 3450) | function add(l, t) {

FILE: Check Maven Webapp/target/Check/js/WdatePicker.js
  function B (line 57) | function B(){try{V[N],V.$dp=V.$dp||{}}catch($){V=Y;$dp=$dp||{}}var A={wi...
  function E (line 57) | function E(B,_,A,$){if(B.addEventListener){var C=_.replace(/on/,"");A._i...
  function L (line 57) | function L(A,$,_){if(A.removeEventListener){var B=$.replace(/on/,"");_._...
  function a (line 57) | function a(_,$,A){if(typeof _!=typeof $)return false;if(typeof _=="objec...
  function J (line 57) | function J(){var _,A,$=Y[N][C]("script");for(var B=0;B<$.length;B++){_=$...
  function K (line 57) | function K(A,$,B){var D=Y[N][C]("HEAD").item(0),_=Y[N].createElement("li...
  function F (line 57) | function F($){$=$||V;var A=0,_=0;while($!=V){var D=$.parent[N][C]("ifram...
  function W (line 57) | function W(G,F){if(G.getBoundingClientRect)return G.getBoundingClientRec...
  function M (line 57) | function M($){$=$||V;var B=$[N],A=($.innerWidth)?$.innerWidth:(B[H]&&B[H...
  function b (line 57) | function b($){$=$||V;var B=$[N],A=B[H],_=B.body;B=(A&&A.scrollTop!=null&...
  function D (line 57) | function D($){try{var _=$?($.srcElement||$.target):null;if($dp.cal&&!$dp...
  function Z (line 57) | function Z(){$dp.status=2}
  function U (line 57) | function U(K,C){if(!$dp)return;B();var L={};for(var H in K)L[H]=K[H];for...
  function R (line 57) | function R(_,$){return _.currentStyle?_.currentStyle[$]:document.default...
  function P (line 57) | function P(_,$){if(_)if($!=null)_.style.display=$;else return R(_,"displ...
  function I (line 57) | function I(G,_){var D=G.el?G.el.nodeName:"INPUT";if(_||G.eCont||new RegE...

FILE: Check Maven Webapp/target/Check/js/bootstrap.js
  function transitionEnd (line 34) | function transitionEnd() {
  function removeElement (line 126) | function removeElement() {
  function Plugin (line 142) | function Plugin(option) {
  function Plugin (line 247) | function Plugin(option) {
  function Plugin (line 466) | function Plugin(option) {
  function getTargetFromTrigger (line 685) | function getTargetFromTrigger($trigger) {
  function Plugin (line 697) | function Plugin(option) {
  function clearMenus (line 829) | function clearMenus(e) {
  function getParent (line 848) | function getParent($this) {
  function Plugin (line 865) | function Plugin(option) {
  function Plugin (line 1194) | function Plugin(option, _relatedTarget) {
  function complete (line 1540) | function complete() {
  function Plugin (line 1692) | function Plugin(option) {
  function Plugin (line 1801) | function Plugin(option) {
  function ScrollSpy (line 1844) | function ScrollSpy(element, options) {
  function Plugin (line 1964) | function Plugin(option) {
  function next (line 2071) | function next() {
  function Plugin (line 2117) | function Plugin(option) {
  function Plugin (line 2274) | function Plugin(option) {

FILE: Check Maven Webapp/target/Check/js/classie.js
  function classReg (line 20) | function classReg( className ) {
  function toggleClass (line 53) | function toggleClass( elem, c ) {

FILE: Check Maven Webapp/target/Check/js/common.js
  function hideElement (line 37) | function hideElement(currentElement, targetElement, fn) {
  function showRemind (line 67) | function showRemind(element,defualtCss){
  function resize (line 91) | function resize(resizeHandle){
  function formSubmit (line 112) | function formSubmit (url,sTarget){

FILE: Check Maven Webapp/target/Check/js/core.js
  function f (line 15) | function f(n) {
  function quote (line 56) | function quote(string) {
  function str (line 72) | function str(key, holder) {
  function walk (line 253) | function walk(holder, key) {
  function reduce (line 567) | function reduce(elem, size, border, margin) {
  function focusable (line 603) | function focusable(element, isTabIndexNotNaN) {
  function visible (line 618) | function visible(element) {
  function handleArray (line 836) | function handleArray(target_, pNode) {

FILE: Check Maven Webapp/target/Check/js/datepicker/WdatePicker.js
  function Q (line 34) | function Q(_){T.$dp=T.$dp||{};for(var $ in _)T.$dp[$]=_[$];return T.$dp}
  function C (line 34) | function C(A,$,_){if(R)A.attachEvent($,_);else{var B=$.replace(/on/,"");...
  function J (line 34) | function J(){var _,A,$=document.getElementsByTagName("script");for(var B...
  function D (line 34) | function D(F){var E,C;if(F.substring(0,1)!="/"&&F.indexOf("://")==-1){E=...
  function K (line 34) | function K(C,$,D){var B=V[N],E=B[A]("HEAD").item(0),_=B.createElement("l...
  function X (line 34) | function X($,_){C($,"onload",_)}
  function Z (line 34) | function Z(_,$){var B=_.document,D=false;F();if((/WebKit|KHTML|MSIE/i).t...
  function E (line 34) | function E($){$=$||T;var B=0,_=0;while($!=T){var D=$.parent[N][A]("ifram...
  function U (line 34) | function U(E){if(R)return E.getBoundingClientRect();else{var A={ROOT_TAG...
  function M (line 34) | function M($){$=$||T;var _=$[N];_=_[H]&&_[H].clientHeight&&_[H].clientHe...
  function Y (line 34) | function Y($){$=$||T;var B=$[N],A=B[H],_=B.body;B=(A&&A.scrollTop!=null&...
  function B (line 34) | function B(_){src=_?(_.srcElement||_.target):null;if($dp&&$dp.dd&&$dp.dd...
  function W (line 34) | function W(){$dp.status=2;F()}
  function F (line 34) | function F(){if(O.length>0){var $=O.shift();$.el={innerHTML:""};$.eCont=...
  function S (line 34) | function S(C,$){$dp.win=V;C=C||{};if($){$dp.status=1;I({el:{innerHTML:""...
  function I (line 34) | function I(G,A){for(var F in $)if(F.substring(0,1)!="$")$dp[F]=$[F];for(...

FILE: Check Maven Webapp/target/Check/js/datepicker/calendar.js
  function My97DP (line 7) | function My97DP(){$c=this;$dp.$w=window;$dt=this.date=new DPDate();this....
  function $ (line 7) | function $(){var _,$;for(_=0;($=document.getElementsByTagName("link")[_]...
  function $ (line 7) | function $(_){var $=(_+"").slice(1,2);$dp.has[$]=_.exec($dp.dateFmt)?($d...
  function C (line 7) | function C(A){var $=A.className.replace(/WdateFmtErr/g,"");if(A.classNam...
  function $ (line 7) | function $($){setA($,_,$.className+" WdateFmtErr")}
  function sb (line 7) | function sb(){this.s=new Array();this.i=0;this.a=function($){this.s[this...
  function getWeek (line 7) | function getWeek($){var _=new Date($.y,$.M-1,$.d),B=_.getDay();_.setDate...
  function getDay (line 7) | function getDay($){var _=new Date($.y,$.M-1,$.d);return _.getDay()}
  function show (line 7) | function show(){setDisp(arguments,"")}
  function showB (line 7) | function showB(){setDisp(arguments,"block")}
  function hide (line 7) | function hide(){setDisp(arguments,"none")}
  function setDisp (line 7) | function setDisp(_,$){for(i=0;i<_.length;i++)_[i].style.display=$}
  function shorH (line 7) | function shorH(_,$){$?show(_):hide(_)}
  function disHMS (line 7) | function disHMS(_,$){if($)_.disabled="";else{_.disabled="disabled";_.val...
  function c_y (line 7) | function c_y(_,$){if($||_!=$dt.y){$dt.y=_;dealRange("y");$c.redraw()}}
  function c_M (line 7) | function c_M(_,$){_=makeInRange(_,1,12);if($||_!=$dt.M){$dt.M=_;dealRang...
  function day_Click (line 7) | function day_Click(F,A,$,D,B,_){var C;if($dp.onpicking)C=$dp.onpicking.c...
  function c_d (line 7) | function c_d($,_){if(_||$!=$dt.d){$dt.d=$;dealRange("d");$c.redraw()}}
  function c_H (line 7) | function c_H(_,$){_=makeInRange(_,0,23);if($||_!=$dt.H){$dt.H=_;dealRang...
  function c_m (line 7) | function c_m(_,$){_=makeInRange(_,0,59);if($||_!=$dt.m){$dt.m=_;dealRang...
  function c_s (line 7) | function c_s(_,$){_=makeInRange(_,0,59);if($||_!=$dt.s){$dt.s=_;dealRang...
  function dealRange (line 7) | function dealRange(type){var func,rv,v;func="s_"+type+"($dt."+type+")";r...
  function s_y (line 7) | function s_y($){$dt.y=$d.yI.value=$}
  function s_M (line 7) | function s_M($){$dt.M=$;setA($d.MI,"realValue",$);$d.MI.value=$lang.aMon...
  function s_d (line 7) | function s_d($){$sdt.d=$dt.d=$}
  function s_H (line 7) | function s_H($){$dt.H=$d.HI.value=$}
  function s_m (line 7) | function s_m($){$dt.m=$d.mI.value=$}
  function s_s (line 7) | function s_s($){$dt.s=$d.sI.value=$}
  function setA (line 7) | function setA(A,_,$){if(A.setAttribute)A.setAttribute(_,$)}
  function getA (line 7) | function getA(_,$){return _.getAttribute($)}
  function makeInRange (line 7) | function makeInRange(_,$,A){if(_<$)_=$;else if(_>A)_=A;return _}
  function attachTabEvent (line 7) | function attachTabEvent($,_){$.attachEvent("onkeydown",function(){var $=...
  function doStr (line 7) | function doStr($,_){$=$+"";while($.length<_)$="0"+$;return $}
  function hideSel (line 7) | function hideSel(){hide($d.yD,$d.MD,$d.HD,$d.mD,$d.sD)}
  function updownEvent (line 7) | function updownEvent($){if($c.currFocus==undefined)$c.currFocus=$d.mI;sw...
  function DPDate (line 7) | function DPDate(D,A,$,C,B,_){this.loadDate=function(E,B,_,D,C,A){var $=n...
  function pInt (line 7) | function pInt($){return parseInt($,10)}
  function pIntDef (line 7) | function pIntDef(_,$){_=pInt(_);if(isNaN(_))_=$;return _}
  function rtn (line 7) | function rtn($,_){return $==null?_:$}
  function fireEvent (line 7) | function fireEvent(A,$){if($IE)A.fireEvent("on"+$);else{var _=document.c...

FILE: Check Maven Webapp/target/Check/js/dtree/ckdtree/dtree.js
  function Node (line 13) | function Node(id, pid, name, url, title, target, icon, iconOpen, open) {
  function dTree (line 31) | function dTree(objName, iPath, formId) {
  function caBox (line 377) | function caBox(formId, regx ) {
  function isCheckedByRec (line 425) | function isCheckedByRec( form ,regx){

FILE: Check Maven Webapp/target/Check/js/dtree/dtree/dtree.js
  function Node (line 13) | function Node(id, pid, name, url, title, target, icon, iconOpen, open) {
  function dTree (line 31) | function dTree(objName,iPath) {

FILE: Check Maven Webapp/target/Check/js/dtree/dtree/dtreebak.js
  function Node (line 13) | function Node(id, pid, name, url, title, target, icon, iconOpen, open) {
  function dTree (line 31) | function dTree(objName,iPath) {

FILE: Check Maven Webapp/target/Check/js/dtree/tdtree/dtree.js
  function Node (line 13) | function Node(id, pid, name, url, title, target, icon, iconOpen, open) {
  function dTree (line 33) | function dTree(objName, iPath, formId, inputId, useBox, typeBox) {
  function caBox (line 393) | function caBox(formId, idname, regx ) {
  function isCheckedByRec (line 440) | function isCheckedByRec( form ,idname ,regx){

FILE: Check Maven Webapp/target/Check/js/jquery-1.10.1.js
  function isArraylike (line 983) | function isArraylike( obj ) {
  function Sizzle (line 1177) | function Sizzle( selector, context, results, seed ) {
  function isNative (line 1290) | function isNative( fn ) {
  function createCache (line 1300) | function createCache() {
  function markFunction (line 1318) | function markFunction( fn ) {
  function assert (line 1327) | function assert( fn ) {
  function addHandle (line 1350) | function addHandle( attrs, handler, test ) {
  function boolHandler (line 1369) | function boolHandler( elem, name ) {
  function interpolationHandler (line 1383) | function interpolationHandler( elem, name ) {
  function valueHandler (line 1393) | function valueHandler( elem ) {
  function siblingCheck (line 1408) | function siblingCheck( a, b ) {
  function createInputPseudo (line 1435) | function createInputPseudo( type ) {
  function createButtonPseudo (line 1446) | function createButtonPseudo( type ) {
  function createPositionalPseudo (line 1457) | function createPositionalPseudo( fn ) {
  function tokenize (line 2465) | function tokenize( selector, parseOnly ) {
  function toSelector (line 2532) | function toSelector( tokens ) {
  function addCombinator (line 2542) | function addCombinator( matcher, combinator, base ) {
  function elementMatcher (line 2592) | function elementMatcher( matchers ) {
  function condense (line 2606) | function condense( unmatched, map, filter, context, xml ) {
  function setMatcher (line 2627) | function setMatcher( preFilter, selector, matcher, postFilter, postFinde...
  function matcherFromTokens (line 2720) | function matcherFromTokens( tokens ) {
  function matcherFromGroupMatchers (line 2775) | function matcherFromGroupMatchers( elementMatchers, setMatchers ) {
  function multipleContexts (line 2903) | function multipleContexts( selector, contexts, results ) {
  function select (line 2912) | function select( selector, context, results, seed ) {
  function setFilters (line 2980) | function setFilters() {}
  function createOptions (line 3011) | function createOptions( options ) {
  function internalData (line 3594) | function internalData( elem, name, data, pvt /* Internal Use Only */ ){
  function internalRemoveData (line 3683) | function internalRemoveData( elem, name, pvt ) {
  function dataAttr (line 3880) | function dataAttr( elem, key, data ) {
  function isEmptyDataObject (line 3912) | function isEmptyDataObject( obj ) {
  function returnTrue (line 4733) | function returnTrue() {
  function returnFalse (line 4737) | function returnFalse() {
  function safeActiveElement (line 4741) | function safeActiveElement() {
  function sibling (line 5859) | function sibling( cur, dir ) {
  function winnow (line 5977) | function winnow( elements, qualifier, not ) {
  function createSafeFragment (line 6005) | function createSafeFragment( document ) {
  function manipulationTarget (line 6319) | function manipulationTarget( elem, content ) {
  function disableScript (line 6329) | function disableScript( elem ) {
  function restoreScript (line 6333) | function restoreScript( elem ) {
  function setGlobalEval (line 6344) | function setGlobalEval( elems, refElements ) {
  function cloneCopyEvent (line 6352) | function cloneCopyEvent( src, dest ) {
  function fixCloneNodeIssues (line 6380) | function fixCloneNodeIssues( src, dest ) {
  function getAll (line 6473) | function getAll( context, tag ) {
  function fixDefaultChecked (line 6496) | function fixDefaultChecked( elem ) {
  function vendorPropName (line 6838) | function vendorPropName( style, name ) {
  function isHidden (line 6860) | function isHidden( elem, el ) {
  function showHide (line 6867) | function showHide( elements, show ) {
  function setPositiveNumber (line 7193) | function setPositiveNumber( elem, value, subtract ) {
  function augmentWidthOrHeight (line 7201) | function augmentWidthOrHeight( elem, name, extra, isBorderBox, styles ) {
  function getWidthOrHeight (line 7240) | function getWidthOrHeight( elem, name, extra ) {
  function css_defaultDisplay (line 7284) | function css_defaultDisplay( nodeName ) {
  function actualDisplay (line 7316) | function actualDisplay( name, doc ) {
  function buildParams (line 7545) | function buildParams( prefix, obj, traditional, add ) {
  function addToPrefiltersOrTransports (line 7660) | function addToPrefiltersOrTransports( structure ) {
  function inspectPrefiltersOrTransports (line 7692) | function inspectPrefiltersOrTransports( structure, options, originalOpti...
  function ajaxExtend (line 7719) | function ajaxExtend( target, src ) {
  function done (line 8167) | function done( status, nativeStatusText, responses, headers ) {
  function ajaxHandleResponses (line 8314) | function ajaxHandleResponses( s, jqXHR, responses ) {
  function ajaxConvert (line 8369) | function ajaxConvert( s, response, jqXHR, isSuccess ) {
  function createStandardXHR (line 8637) | function createStandardXHR() {
  function createActiveXHR (line 8643) | function createActiveXHR() {
  function createFxNow (line 8889) | function createFxNow() {
  function createTween (line 8896) | function createTween( value, prop, animation ) {
  function Animation (line 8910) | function Animation( elem, properties, options ) {
  function propFilter (line 9014) | function propFilter( props, specialEasing ) {
  function defaultPrefilter (line 9081) | function defaultPrefilter( elem, props, opts ) {
  function Tween (line 9206) | function Tween( elem, options, prop, end, easing ) {
  function genFx (line 9430) | function genFx( type, includeWidth ) {
  function getWindow (line 9726) | function getWindow( elem ) {

FILE: Check Maven Webapp/target/Check/js/jquery.js
  function jQuerySub (line 897) | function jQuerySub( selector, context ) {
  function doScrollCheck (line 963) | function doScrollCheck() {
  function createFlags (line 990) | function createFlags( flags ) {
  function resolveFunc (line 1325) | function resolveFunc( i ) {
  function progressFunc (line 1333) | function progressFunc( i ) {
  function dataAttr (line 1986) | function dataAttr( elem, key, data ) {
  function isEmptyDataObject (line 2017) | function isEmptyDataObject( obj ) {
  function handleQueueMarkDefer (line 2035) | function handleQueueMarkDefer( elem, type, src ) {
  function resolve (line 2194) | function resolve() {
  function returnFalse (line 3547) | function returnFalse() {
  function returnTrue (line 3550) | function returnTrue() {
  function dirNodeCheck (line 5261) | function dirNodeCheck( dir, cur, doneName, checkSet, nodeCheck, isXML ) {
  function dirCheck (line 5294) | function dirCheck( dir, cur, doneName, checkSet, nodeCheck, isXML ) {
  function isDisconnected (line 5567) | function isDisconnected( node ) {
  function winnow (line 5684) | function winnow( elements, qualifier, keep ) {
  function createSafeFragment (line 5721) | function createSafeFragment( document ) {
  function root (line 6093) | function root( elem, cur ) {
  function cloneCopyEvent (line 6100) | function cloneCopyEvent( src, dest ) {
  function cloneFixAttributes (line 6128) | function cloneFixAttributes( src, dest ) {
  function getAll (line 6273) | function getAll( elem ) {
  function fixDefaultChecked (line 6286) | function fixDefaultChecked( elem ) {
  function findInputs (line 6292) | function findInputs( elem ) {
  function shimCloneNode (line 6303) | function shimCloneNode( elem ) {
  function getWidthOrHeight (line 6794) | function getWidthOrHeight( elem, name, extra ) {
  function addToPrefiltersOrTransports (line 7035) | function addToPrefiltersOrTransports( structure ) {
  function inspectPrefiltersOrTransports (line 7071) | function inspectPrefiltersOrTransports( structure, options, originalOpti...
  function ajaxExtend (line 7113) | function ajaxExtend( target, src ) {
  function done (line 7455) | function done( status, nativeStatusText, responses, headers ) {
  function buildParams (line 7770) | function buildParams( prefix, obj, traditional, add ) {
  function ajaxHandleResponses (line 7820) | function ajaxHandleResponses( s, jqXHR, responses ) {
  function ajaxConvert (line 7885) | function ajaxConvert( s, response ) {
  function createStandardXHR (line 8150) | function createStandardXHR() {
  function createActiveXHR (line 8156) | function createActiveXHR() {
  function doAnimation (line 8495) | function doAnimation() {
  function stopQueue (line 8651) | function stopQueue( elem, data, index ) {
  function createFxNow (line 8693) | function createFxNow() {
  function clearFxNow (line 8698) | function clearFxNow() {
  function genFx (line 8703) | function genFx( type, num ) {
  function t (line 8818) | function t( gotoEnd ) {
  function defaultDisplay (line 9016) | function defaultDisplay( nodeName ) {
  function getWindow (line 9300) | function getWindow( elem ) {

FILE: Check Maven Webapp/target/Check/js/jquery.pagination.js
  function numPages (line 22) | function numPages() {
  function getInterval (line 28) | function getInterval() {
  function pageSelected (line 42) | function pageSelected(page_id, evt) {
  function drawLinks (line 60) | function drawLinks() {

FILE: Check Maven Webapp/target/Check/js/modernizr.custom.js
  function z (line 4) | function z(a){j.cssText=a}
  function A (line 4) | function A(a,b){return z(m.join(a+";")+(b||""))}
  function B (line 4) | function B(a,b){return typeof a===b}
  function C (line 4) | function C(a,b){return!!~(""+a).indexOf(b)}
  function D (line 4) | function D(a,b){for(var d in a){var e=a[d];if(!C(e,"-")&&j[e]!==c)return...
  function E (line 4) | function E(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a...
  function F (line 4) | function F(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+o....
  function k (line 4) | function k(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("hea...
  function l (line 4) | function l(){var a=r.elements;return typeof a=="string"?a.split(" "):a}
  function m (line 4) | function m(a){var b=i[a[g]];return b||(b={},h++,a[g]=h,i[h]=b),b}
  function n (line 4) | function n(a,c,f){c||(c=b);if(j)return c.createElement(a);f||(f=m(c));va...
  function o (line 4) | function o(a,c){a||(a=b);if(j)return a.createDocumentFragment();c=c||m(a...
  function p (line 4) | function p(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.crea...
  function q (line 4) | function q(a){a||(a=b);var c=m(a);return r.shivCSS&&!f&&!c.hasCSS&&(c.ha...
  function d (line 4) | function d(a){return"[object Function]"==o.call(a)}
  function e (line 4) | function e(a){return"string"==typeof a}
  function f (line 4) | function f(){}
  function g (line 4) | function g(a){return!a||"loaded"==a||"complete"==a||"uninitialized"==a}
  function h (line 4) | function h(){var a=p.shift();q=1,a?a.t?m(function(){("c"==a.t?B.injectCs...
  function i (line 4) | function i(a,c,d,e,f,i,j){function k(b){if(!o&&g(l.readyState)&&(u.r=o=1...
  function j (line 4) | function j(a,b,c,d,f){return q=0,b=b||"j",e(a)?i("c"==b?v:u,a,b,this.i++...
  function k (line 4) | function k(){var a=B;return a.loader={load:j,i:0},a}
  function b (line 4) | function b(a){var a=a.split("!"),b=x.length,c=a.pop(),d=a.length,c={url:...
  function g (line 4) | function g(a,e,f,g,h){var i=b(a),j=i.autoCallback;i.url.split(".").pop()...
  function h (line 4) | function h(a,b){function c(a,c){if(a){if(e(a))c||(j=function(){var a=[]....

FILE: Check Maven Webapp/target/Check/js/tabledo.js
  function showTheWrite (line 8) | function showTheWrite(str){
  function sortnoTR (line 13) | function sortnoTR(){
  function clearTRstyle (line 18) | function clearTRstyle( filterName ){
  function setTDText (line 30) | function setTDText( obj, colNo, value ){
  function setSelectOption (line 39) | function setSelectOption(obj, curValue ){
  function setTRUpdateFlag (line 50) | function setTRUpdateFlag( obj ){
  function setTRUpdateFlagTrue (line 71) | function setTRUpdateFlagTrue( obj ){
  function newTRRecord (line 80) | function newTRRecord(objId, isClear) {
  function delIdsRecord (line 147) | function delIdsRecord(ckName) {
  function clearDelId (line 162) | function clearDelId(){
  function delSpaceTRRecord (line 167) | function delSpaceTRRecord(objId, topRow){
  function delTRRecord (line 209) | function delTRRecord(ckName, tableId, topRow, clearValueObjName ,isDelet...
  function clearTRRecord (line 266) | function clearTRRecord(ckName, tableId, topRow) {
  function doLastTR (line 275) | function doLastTR(objId) {
  function swapTRRecord (line 299) | function swapTRRecord(ckName, tableId, topRow, Flag) {
  function sortno (line 360) | function sortno(objId, whichCol, topRow){
  function trSwap (line 375) | function trSwap(tableId, tr1Index, tr2Index){
  function trSwap_Up (line 384) | function trSwap_Up(tableId, trIndex){
  function trSwap_Down (line 388) | function trSwap_Down(tableId, trIndex){
  function dragtableinit (line 400) | function dragtableinit(){
  function mousedown (line 413) | function mousedown(){
  function dragmove (line 426) | function dragmove(){
  function dragover (line 431) | function dragover(){
  function dragend (line 437) | function dragend( ){
  function ShowFloatDiv2 (line 462) | function ShowFloatDiv2(obj,num,length){
  function HideFloatDiv2 (line 475) | function HideFloatDiv2(obj,num,length){
  function HightLightRows (line 488) | function HightLightRows(obj){

FILE: Check Maven Webapp/target/Check/js/uisearch.js
  function addToPrototype (line 17) | function addToPrototype(name, method) {
  function mobilecheck (line 70) | function mobilecheck() {
  function UISearch (line 81) | function UISearch( el, options ) {
Condensed preview — 692 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (5,425K chars).
[
  {
    "path": "Check Maven Webapp/.classpath",
    "chars": 1490,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<classpath>\n\t<classpathentry kind=\"src\" output=\"target/classes\" path=\"src/main/ja"
  },
  {
    "path": "Check Maven Webapp/.project",
    "chars": 1696,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<projectDescription>\n\t<name>Check Maven Webapp</name>\n\t<comment></comment>\n\t<proj"
  },
  {
    "path": "Check Maven Webapp/.settings/.jsdtscope",
    "chars": 518,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<classpath>\n\t<classpathentry kind=\"src\" path=\"src/main/webapp\"/>\n\t<classpathentry"
  },
  {
    "path": "Check Maven Webapp/.settings/com.genuitec.eclipse.core.prefs",
    "chars": 170,
    "preview": "clsCnt=57\neclipse.preferences.version=1\nlocCnt=5725\npkgCnt=19\nsTime=2017\\u5E743\\u670822\\u65E5 \\u661F\\u671F\\u4E09 \\u4E0B\\"
  },
  {
    "path": "Check Maven Webapp/.settings/org.eclipse.core.resources.prefs",
    "chars": 216,
    "preview": "eclipse.preferences.version=1\nencoding//src/main/webapp/WEB-INF/pages/user/about.jsp=UTF-8\nencoding//src/main/webapp/WEB"
  },
  {
    "path": "Check Maven Webapp/.settings/org.eclipse.jdt.core.prefs",
    "chars": 422,
    "preview": "eclipse.preferences.version=1\norg.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled\norg.eclipse.jdt.core.compi"
  },
  {
    "path": "Check Maven Webapp/.settings/org.eclipse.ltk.core.refactoring.prefs",
    "chars": 104,
    "preview": "eclipse.preferences.version=1\norg.eclipse.ltk.core.refactoring.enable.project.refactoring.history=false\n"
  },
  {
    "path": "Check Maven Webapp/.settings/org.eclipse.m2e.core.prefs",
    "chars": 86,
    "preview": "activeProfiles=\neclipse.preferences.version=1\nresolveWorkspaceProjects=true\nversion=1\n"
  },
  {
    "path": "Check Maven Webapp/.settings/org.eclipse.wst.common.component",
    "chars": 672,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?><project-modules id=\"moduleCoreId\" project-version=\"1.5.0\">\n    <wb-module deploy-"
  },
  {
    "path": "Check Maven Webapp/.settings/org.eclipse.wst.common.project.facet.core.xml",
    "chars": 288,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<faceted-project>\n  <fixed facet=\"wst.jsdt.web\"/>\n  <installed facet=\"jst.web\" ve"
  },
  {
    "path": "Check Maven Webapp/.settings/org.eclipse.wst.jsdt.ui.superType.container",
    "chars": 49,
    "preview": "org.eclipse.wst.jsdt.launching.baseBrowserLibrary"
  },
  {
    "path": "Check Maven Webapp/.settings/org.eclipse.wst.jsdt.ui.superType.name",
    "chars": 6,
    "preview": "Window"
  },
  {
    "path": "Check Maven Webapp/.settings/org.eclipse.wst.validation.prefs",
    "chars": 48,
    "preview": "disabled=06target\neclipse.preferences.version=1\n"
  },
  {
    "path": "Check Maven Webapp/pom.xml",
    "chars": 3287,
    "preview": "<project xmlns=\"http://maven.apache.org/POM/4.0.0\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n\txsi:schemaLoca"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/common/springdao/AppContext.java",
    "chars": 684,
    "preview": "package edu.fjnu.online.common.springdao;\n\nimport org.springframework.context.support.AbstractApplicationContext;\nimport"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/common/springdao/SQLDAO.java",
    "chars": 4324,
    "preview": "package edu.fjnu.online.common.springdao;\n\nimport java.util.ArrayList;\nimport java.util.Iterator;\nimport java.util.List;"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/controller/BaseController.java",
    "chars": 618,
    "preview": "package edu.fjnu.online.controller;\n\nimport java.text.DateFormat;\nimport java.text.SimpleDateFormat;\nimport java.util.Da"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/controller/admin/CourseController.java",
    "chars": 4001,
    "preview": "package edu.fjnu.online.controller.admin;\n\nimport java.util.List;\n\nimport javax.servlet.http.HttpSession;\n\nimport org.sp"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/controller/admin/GradeController.java",
    "chars": 5845,
    "preview": "package edu.fjnu.online.controller.admin;\n\nimport java.util.List;\n\nimport javax.servlet.http.HttpSession;\n\nimport org.sp"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/controller/admin/PaperController.java",
    "chars": 6980,
    "preview": "package edu.fjnu.online.controller.admin;\n\nimport java.util.ArrayList;\nimport java.util.HashMap;\nimport java.util.List;\n"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/controller/admin/QuestionController.java",
    "chars": 6427,
    "preview": "package edu.fjnu.online.controller.admin;\n\nimport java.util.List;\n\nimport javax.servlet.http.HttpSession;\n\nimport org.sp"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/controller/admin/TypeController.java",
    "chars": 3798,
    "preview": "package edu.fjnu.online.controller.admin;\n\nimport java.util.List;\n\nimport javax.servlet.http.HttpSession;\n\nimport org.sp"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/controller/admin/UserController.java",
    "chars": 9040,
    "preview": "package edu.fjnu.online.controller.admin;\n\nimport java.lang.reflect.Method;\nimport java.util.List;\n\nimport javax.servlet"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/controller/user/ErrorBookController.java",
    "chars": 2390,
    "preview": "package edu.fjnu.online.controller.user;\n\nimport java.util.HashMap;\nimport java.util.List;\nimport java.util.Map;\n\nimport"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/controller/user/PaperMgController.java",
    "chars": 9205,
    "preview": "package edu.fjnu.online.controller.user;\n\nimport java.io.UnsupportedEncodingException;\nimport java.math.BigDecimal;\nimpo"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/controller/user/StuController.java",
    "chars": 4171,
    "preview": "package edu.fjnu.online.controller.user;\n\nimport java.util.List;\n\nimport javax.servlet.http.HttpSession;\n\nimport org.spr"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/dao/BaseDao.java",
    "chars": 384,
    "preview": "package edu.fjnu.online.dao;\n\nimport java.io.Serializable;\nimport java.util.List;\n\n/**\n * @Description: 泛型类,基础的DAO接口\n * "
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/dao/CourseDao.java",
    "chars": 124,
    "preview": "package edu.fjnu.online.dao;\n\nimport edu.fjnu.online.domain.Course;\n\npublic interface CourseDao extends BaseDao<Course>{"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/dao/ErrorBookDao.java",
    "chars": 264,
    "preview": "package edu.fjnu.online.dao;\n\nimport java.util.List;\nimport java.util.Map;\n\nimport edu.fjnu.online.domain.ErrorBook;\nimp"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/dao/GradeDao.java",
    "chars": 122,
    "preview": "package edu.fjnu.online.dao;\n\nimport edu.fjnu.online.domain.Grade;\n\n\npublic interface GradeDao extends BaseDao<Grade>{\n\n"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/dao/PaperDao.java",
    "chars": 531,
    "preview": "package edu.fjnu.online.dao;\n\nimport java.io.Serializable;\nimport java.util.List;\nimport java.util.Map;\n\nimport edu.fjnu"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/dao/QuestionDao.java",
    "chars": 221,
    "preview": "package edu.fjnu.online.dao;\n\nimport java.util.List;\nimport java.util.Map;\n\nimport edu.fjnu.online.domain.Question;\n\npub"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/dao/TypeDao.java",
    "chars": 119,
    "preview": "package edu.fjnu.online.dao;\n\nimport edu.fjnu.online.domain.Type;\n\npublic interface TypeDao extends BaseDao<Type> {\n\n}\n"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/dao/UserDao.java",
    "chars": 218,
    "preview": "package edu.fjnu.online.dao;\n\nimport java.util.List;\n\nimport edu.fjnu.online.domain.User;\n\n\npublic interface UserDao ext"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/dao/impl/BaseDaoImpl.java",
    "chars": 1287,
    "preview": "package edu.fjnu.online.dao.impl;\n\nimport java.io.Serializable;\nimport java.util.List;\n\nimport org.apache.ibatis.session"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/dao/impl/CourseDaoImpl.java",
    "chars": 367,
    "preview": "package edu.fjnu.online.dao.impl;\n\nimport java.io.Serializable;\n\nimport org.springframework.stereotype.Repository;\n\nimpo"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/dao/impl/ErrorBookDaoImpl.java",
    "chars": 531,
    "preview": "package edu.fjnu.online.dao.impl;\n\nimport java.util.List;\nimport java.util.Map;\n\nimport org.springframework.stereotype.R"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/dao/impl/GradeDaoImpl.java",
    "chars": 360,
    "preview": "package edu.fjnu.online.dao.impl;\n\nimport java.io.Serializable;\n\nimport org.springframework.stereotype.Repository;\n\nimpo"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/dao/impl/PaperDaoImpl.java",
    "chars": 1175,
    "preview": "package edu.fjnu.online.dao.impl;\n\nimport java.io.Serializable;\nimport java.util.List;\nimport java.util.Map;\n\nimport org"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/dao/impl/QuestionDaoImpl.java",
    "chars": 552,
    "preview": "package edu.fjnu.online.dao.impl;\n\nimport java.io.Serializable;\nimport java.util.List;\nimport java.util.Map;\n\nimport org"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/dao/impl/TypeDaoImpl.java",
    "chars": 354,
    "preview": "package edu.fjnu.online.dao.impl;\n\nimport java.io.Serializable;\n\nimport org.springframework.stereotype.Repository;\n\nimpo"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/dao/impl/UserDaoImpl.java",
    "chars": 616,
    "preview": "package edu.fjnu.online.dao.impl;\n\nimport java.io.Serializable;\nimport java.util.List;\n\nimport org.springframework.stere"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/domain/Course.java",
    "chars": 1026,
    "preview": "package edu.fjnu.online.domain;\n/**\n * 课程表\n * @author hspcadmin\n *\n */\npublic class Course {\n\t/**课程编号*/\n\tprivate int cou"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/domain/ErrorBook.java",
    "chars": 1889,
    "preview": "package edu.fjnu.online.domain;\n/**\n * 错题本\n * @author hspcadmin\n *\n */\npublic class ErrorBook {\n\n\t/**错题编号*/\n\tprivate int"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/domain/Factory.java",
    "chars": 1605,
    "preview": "package edu.fjnu.online.domain;\n\n/**\n * @Description:\n * @Author: nutony\n * @Company: http://java.itcast.cn\n * @CreateDa"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/domain/Grade.java",
    "chars": 965,
    "preview": "package edu.fjnu.online.domain;\n/**\n * 年级\n * @author hspcadmin\n *\n */\npublic class Grade {\n\t/**年级编号*/\n\tprivate int grade"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/domain/MsgItem.java",
    "chars": 522,
    "preview": "package edu.fjnu.online.domain;\n\npublic class MsgItem {\n\tprivate String remark;\n    private String errorNo;\n    private "
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/domain/Paper.java",
    "chars": 2849,
    "preview": "package edu.fjnu.online.domain;\n/**\n * 试卷实体\n * @author hspcadmin\n *\n */\npublic class Paper {\n\t/**试卷编号*/\n\tprivate String "
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/domain/Question.java",
    "chars": 3481,
    "preview": "package edu.fjnu.online.domain;\n\npublic class Question {\n\t/**问题编号*/\n\tprivate int questionId;\n\t/**问题名称*/\n\tprivate String "
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/domain/Type.java",
    "chars": 1048,
    "preview": "package edu.fjnu.online.domain;\n/**\n * 题目类型\n * @author hspcadmin\n *\n */\npublic class Type {\n\t/**题型编号*/\n\tprivate int type"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/domain/User.java",
    "chars": 2272,
    "preview": "/**\n * \n */\npackage edu.fjnu.online.domain;\n\n/**\n * 用户表\n * @author hspcadmin\n * @CreateDate:\t2017-3-11\n */\npublic class "
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/pagination/Page.java",
    "chars": 1954,
    "preview": "package edu.fjnu.online.pagination;\nimport java.util.HashMap;\nimport java.util.List;\nimport java.util.Map;\n \n/**\n * 对分页的"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/pagination/PageInterceptor.java",
    "chars": 10700,
    "preview": "package edu.fjnu.online.pagination;\n\nimport java.lang.reflect.Field;\nimport java.sql.Connection;\nimport java.sql.Prepare"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/service/CourseService.java",
    "chars": 465,
    "preview": "package edu.fjnu.online.service;\n\nimport java.util.List;\n\nimport com.github.pagehelper.PageInfo;\n\nimport edu.fjnu.online"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/service/ErrorBookService.java",
    "chars": 401,
    "preview": "package edu.fjnu.online.service;\n\nimport java.util.List;\nimport java.util.Map;\n\nimport edu.fjnu.online.domain.ErrorBook;"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/service/GradeService.java",
    "chars": 455,
    "preview": "package edu.fjnu.online.service;\n\nimport java.util.List;\n\nimport com.github.pagehelper.PageInfo;\n\nimport edu.fjnu.online"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/service/PaperService.java",
    "chars": 865,
    "preview": "package edu.fjnu.online.service;\n\nimport java.io.Serializable;\nimport java.util.List;\nimport java.util.Map;\n\nimport com."
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/service/QuestionService.java",
    "chars": 521,
    "preview": "package edu.fjnu.online.service;\n\nimport java.util.List;\nimport java.util.Map;\n\nimport com.github.pagehelper.PageInfo;\n\n"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/service/TypeService.java",
    "chars": 440,
    "preview": "package edu.fjnu.online.service;\n\nimport java.util.List;\n\nimport com.github.pagehelper.PageInfo;\n\nimport edu.fjnu.online"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/service/UserService.java",
    "chars": 782,
    "preview": "package edu.fjnu.online.service;\n\nimport java.io.Serializable;\nimport java.util.List;\n\nimport com.github.pagehelper.Page"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/service/impl/CourseServiceImpl.java",
    "chars": 1268,
    "preview": "package edu.fjnu.online.service.impl;\n\nimport java.util.List;\n\nimport org.springframework.beans.factory.annotation.Autow"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/service/impl/ErrorBookServiceImpl.java",
    "chars": 884,
    "preview": "package edu.fjnu.online.service.impl;\n\nimport java.util.List;\nimport java.util.Map;\n\nimport org.springframework.beans.fa"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/service/impl/GradeServiceImpl.java",
    "chars": 1238,
    "preview": "package edu.fjnu.online.service.impl;\n\nimport java.util.List;\n\nimport org.springframework.beans.factory.annotation.Autow"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/service/impl/PaperServiceImpl.java",
    "chars": 1993,
    "preview": "package edu.fjnu.online.service.impl;\n\nimport java.io.Serializable;\nimport java.util.List;\nimport java.util.Map;\n\nimport"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/service/impl/QuestionServiceImpl.java",
    "chars": 1444,
    "preview": "package edu.fjnu.online.service.impl;\n\nimport java.util.List;\nimport java.util.Map;\n\nimport org.springframework.beans.fa"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/service/impl/TypeServiceImpl.java",
    "chars": 1162,
    "preview": "package edu.fjnu.online.service.impl;\n\nimport java.util.List;\n\nimport org.springframework.beans.factory.annotation.Autow"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/service/impl/UserServiceImpl.java",
    "chars": 2564,
    "preview": "package edu.fjnu.online.service.impl;\n\nimport java.io.Serializable;\nimport java.util.List;\n\nimport org.springframework.b"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/util/Arith.java",
    "chars": 3746,
    "preview": "package edu.fjnu.online.util;\n\n\n// 这是一个数数学计算的class 缩略图生成的时候需要用到。\n\nimport java.math.BigDecimal;\nimport java.util.Random;\n"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/util/ComputeScore.java",
    "chars": 812,
    "preview": "package edu.fjnu.online.util;\n\nimport java.math.BigDecimal;\nimport java.math.RoundingMode;\n\n/**\n * 分数计算\n * @author hspca"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/util/Computeclass.java",
    "chars": 3330,
    "preview": "package edu.fjnu.online.util;\n\nimport java.text.NumberFormat;\nimport java.util.Locale;\n\npublic class Computeclass {\n\t/* "
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/util/DateConverter.java",
    "chars": 1111,
    "preview": "package edu.fjnu.online.util;\n\nimport java.sql.Date;\nimport java.sql.Timestamp;\nimport java.text.SimpleDateFormat;\n\nimpo"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/util/DownloadUtil.java",
    "chars": 3431,
    "preview": "package edu.fjnu.online.util;\n\nimport java.io.ByteArrayOutputStream;\nimport java.io.File;\nimport java.io.FileInputStream"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/util/FormatStyle.java",
    "chars": 1502,
    "preview": "package edu.fjnu.online.util;\n\n\npublic class FormatStyle {\n\t\n\tpublic static void main(String[] args) {\n\t\t// TODO: Add yo"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/util/MD5Util.java",
    "chars": 850,
    "preview": "package edu.fjnu.online.util;\n\nimport java.security.MessageDigest;\n\npublic class MD5Util {\n\tpublic static String getData"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/util/MybatisUtil.java",
    "chars": 817,
    "preview": "package edu.fjnu.online.util;\n\nimport java.io.IOException;\nimport java.io.InputStream;\nimport java.util.Properties;\n\nimp"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/util/TextSimilarityUtil.java",
    "chars": 4534,
    "preview": "package edu.fjnu.online.util;\n\nimport java.io.UnsupportedEncodingException;\nimport java.util.HashMap;\nimport java.util.I"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/util/UtilFuns.java",
    "chars": 38985,
    "preview": "package edu.fjnu.online.util;\n\nimport java.sql.Timestamp;\nimport java.text.SimpleDateFormat;\nimport java.text.ParseExcep"
  },
  {
    "path": "Check Maven Webapp/src/main/java/edu/fjnu/online/util/file/FileUtil.java",
    "chars": 27906,
    "preview": "package edu.fjnu.online.util.file;\n\nimport java.io.BufferedInputStream;\nimport java.io.BufferedReader;\nimport java.io.Bu"
  },
  {
    "path": "Check Maven Webapp/src/main/resources/beans.xml",
    "chars": 3029,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<beans xmlns=\"http://www.springframework.org/schema/beans\"\n\txmlns:xsi=\"http://www"
  },
  {
    "path": "Check Maven Webapp/src/main/resources/edu/fjnu/online/mapper/Course.xml",
    "chars": 1366,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n<!DOCTYPE mapper\nPUBLIC \"-//mybatis.org//DTD Mapper 3.0//EN\"\n\"http://mybatis.org"
  },
  {
    "path": "Check Maven Webapp/src/main/resources/edu/fjnu/online/mapper/ErrorBook.xml",
    "chars": 2838,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n<!DOCTYPE mapper\nPUBLIC \"-//mybatis.org//DTD Mapper 3.0//EN\"\n\"http://mybatis.org"
  },
  {
    "path": "Check Maven Webapp/src/main/resources/edu/fjnu/online/mapper/Factory.xml",
    "chars": 941,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n<!DOCTYPE mapper\nPUBLIC \"-//mybatis.org//DTD Mapper 3.0//EN\"\n\"http://mybatis.org"
  },
  {
    "path": "Check Maven Webapp/src/main/resources/edu/fjnu/online/mapper/Grade.xml",
    "chars": 1319,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n<!DOCTYPE mapper\nPUBLIC \"-//mybatis.org//DTD Mapper 3.0//EN\"\n\"http://mybatis.org"
  },
  {
    "path": "Check Maven Webapp/src/main/resources/edu/fjnu/online/mapper/Paper.xml",
    "chars": 3943,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n<!DOCTYPE mapper\nPUBLIC \"-//mybatis.org//DTD Mapper 3.0//EN\"\n\"http://mybatis.org"
  },
  {
    "path": "Check Maven Webapp/src/main/resources/edu/fjnu/online/mapper/Question.xml",
    "chars": 3096,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n<!DOCTYPE mapper\nPUBLIC \"-//mybatis.org//DTD Mapper 3.0//EN\"\n\"http://mybatis.org"
  },
  {
    "path": "Check Maven Webapp/src/main/resources/edu/fjnu/online/mapper/Type.xml",
    "chars": 1394,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n<!DOCTYPE mapper\nPUBLIC \"-//mybatis.org//DTD Mapper 3.0//EN\"\n\"http://mybatis.org"
  },
  {
    "path": "Check Maven Webapp/src/main/resources/edu/fjnu/online/mapper/User.xml",
    "chars": 2493,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n<!DOCTYPE mapper\nPUBLIC \"-//mybatis.org//DTD Mapper 3.0//EN\"\n\"http://mybatis.org"
  },
  {
    "path": "Check Maven Webapp/src/main/resources/jdbc.properties",
    "chars": 247,
    "preview": "jdbc.driverClassName=com.mysql.jdbc.Driver\njdbc.url=jdbc:mysql://localhost:3306/onlinetest?characterEncoding=utf-8\njdbc."
  },
  {
    "path": "Check Maven Webapp/src/main/resources/springmvc-servlet.xml",
    "chars": 1319,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<beans xmlns=\"http://www.springframework.org/schema/beans\"\n\txmlns:xsi=\"http://www"
  },
  {
    "path": "Check Maven Webapp/src/main/resources/sqlMapConfig.xml",
    "chars": 1437,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n<!DOCTYPE configuration\n\tPUBLIC \"-//mybatis.org//DTD Config 3.0//EN\"\n\t\"http://my"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/course-mgt.jsp",
    "chars": 4495,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/course-reg.jsp",
    "chars": 2175,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/course-upd.jsp",
    "chars": 2500,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/grade-mgt.jsp",
    "chars": 4475,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/grade-reg.jsp",
    "chars": 2539,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/grade-upd.jsp",
    "chars": 2366,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/index.jsp",
    "chars": 5221,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/info-deal.jsp",
    "chars": 6507,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/info-det.jsp",
    "chars": 3229,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/info-mgt.jsp",
    "chars": 6248,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/info-qry.jsp",
    "chars": 3225,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/info-reg.jsp",
    "chars": 4476,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/info-upd.jsp",
    "chars": 3160,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/login.jsp",
    "chars": 2900,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/paper-mgt.jsp",
    "chars": 4943,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/paper-qry.jsp",
    "chars": 3517,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/paper-reg.jsp",
    "chars": 4342,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/question-mgt.jsp",
    "chars": 6038,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/question-qry.jsp",
    "chars": 2888,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/question-reg.jsp",
    "chars": 5222,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/question-upd.jsp",
    "chars": 5782,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/type-info.jsp",
    "chars": 2414,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/type-mgt.jsp",
    "chars": 4760,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/type-qry.jsp",
    "chars": 2350,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/type-reg.jsp",
    "chars": 2410,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/admin/type-upd.jsp",
    "chars": 2426,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/base.jsp",
    "chars": 353,
    "preview": "<%@ page language=\"java\" pageEncoding=\"UTF-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" prefix=\"c\"%>\n<c:set v"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/baseinfo/left.jsp",
    "chars": 1258,
    "preview": "<%@ page language=\"java\" pageEncoding=\"UTF-8\"%>\n<%@ include file=\"../baselist.jsp\" %>\n<html xmlns=\"http://www.w3.org/199"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/baseinfo/main.jsp",
    "chars": 2113,
    "preview": "<%@ page language=\"java\" pageEncoding=\"UTF-8\"%>\n<%@ include file=\"../base.jsp\" %>\n<html xmlns=\"http://www.w3.org/1999/xh"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/baselist.jsp",
    "chars": 292,
    "preview": "<%@ page language=\"java\" pageEncoding=\"UTF-8\"%>\n<%@ include file=\"base.jsp\"%>\n\n \t<link rel=\"stylesheet\" rev=\"stylesheet\""
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/bases.jsp",
    "chars": 738,
    "preview": "<%@ page language=\"java\" pageEncoding=\"UTF-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" prefix=\"c\"%>\n<c:set v"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/home/fmain.jsp",
    "chars": 596,
    "preview": "<%@ page language=\"java\" pageEncoding=\"UTF-8\"%>\n<html>\n<head>\n<title>陕西杰信商务综合管理平台</title>\n</head>\n<frameset rows=\"125,*\""
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/home/left.jsp",
    "chars": 4075,
    "preview": "<%@ page language=\"java\" pageEncoding=\"UTF-8\"%>\n<%@ include file=\"../base.jsp\" %>\n<html xmlns=\"http://www.w3.org/1999/xh"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/home/olmsgList.jsp",
    "chars": 9147,
    "preview": "<%@ page language=\"java\" pageEncoding=\"UTF-8\"%>\n<%@ include file=\"../base.jsp\" %>\n<html xmlns=\"http://www.w3.org/1999/xh"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/home/title.jsp",
    "chars": 9489,
    "preview": "<%@ page language=\"java\" pageEncoding=\"UTF-8\"%>\n<%@ include file=\"../base.jsp\" %>\n<%@ taglib uri=\"http://java.sun.com/js"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/index1.jsp",
    "chars": 2009,
    "preview": "<%@ page language=\"java\" pageEncoding=\"UTF-8\"%>\n<%@ include file=\"base.jsp\" %>\n<html xmlns=\"http://www.w3.org/1999/xhtml"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/user/about.html",
    "chars": 5892,
    "preview": "<!DOCTYPE html>\n<html>\n<head>\n<title>在线考试系统</title>\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/user/about.jsp",
    "chars": 5920,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/user/index.html",
    "chars": 13436,
    "preview": "<!DOCTYPE html>\n<html>\n<head>\n<title>在线考试系统</title>\n<!-- for-mobile-apps -->\n<meta name=\"viewport\" content=\"width=device"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/user/index.jsp",
    "chars": 9186,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/user/login.html",
    "chars": 1627,
    "preview": "\n<!DOCTYPE html>\n<html lang=\"en\" class=\"no-js\">\n\n    <head>\n\n        <meta charset=\"utf-8\">\n        <title>Fullscreen Lo"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/user/login.jsp",
    "chars": 2659,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/user/mybooks.html",
    "chars": 8058,
    "preview": "<!DOCTYPE html>\n<html>\n<head>\n<title>在线考试系统</title>\n<!-- for-mobile-apps -->\n<meta name=\"viewport\" content=\"width=device"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/user/mybooks.jsp",
    "chars": 6574,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/user/mypaper.html",
    "chars": 12701,
    "preview": "<!DOCTYPE html>\n<html>\n<head>\n<title>在线考试系统</title>\n<!-- for-mobile-apps -->\n<meta name=\"viewport\" content=\"width=device"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/user/mypaper.jsp",
    "chars": 4654,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/user/onlinecheck.html",
    "chars": 14801,
    "preview": "<!DOCTYPE html>\n<html>\n<head>\n<title>在线考试系统</title>\n<!-- for-mobile-apps -->\n<meta name=\"viewport\" content=\"width=device"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/user/paperdetail.jsp",
    "chars": 9873,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/user/qrypaper.jsp",
    "chars": 9602,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/user/regist.html",
    "chars": 2401,
    "preview": "<!DOCTYPE html>\n<html>\n<head>\n<title>在线考试系统</title>\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/user/regist.jsp",
    "chars": 3510,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/user/regist1.jsp",
    "chars": 2846,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/user/scorequery.html",
    "chars": 6350,
    "preview": "<!DOCTYPE html>\n<html>\n<head>\n<title>在线考试系统</title>\n<!-- for-mobile-apps -->\n<meta name=\"viewport\" content=\"width=device"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/user/scorequery.jsp",
    "chars": 4615,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/user/tomypaper.jsp",
    "chars": 12540,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/user/userinfo.html",
    "chars": 29115,
    "preview": "<!DOCTYPE html>\n<html>\n<head>\n<title>在线考试系统</title>\n<!-- for-mobile-apps -->\n<meta name=\"viewport\" content=\"width=device"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/pages/user/userinfo.jsp",
    "chars": 7264,
    "preview": "<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"utf-8\"%>\n<%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/WEB-INF/web.xml",
    "chars": 1589,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<web-app xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n\txmlns=\"http://jav"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amcolumn/amcharts_key.txt",
    "chars": 32,
    "preview": "AMCHART-LNKS-1966-6679-1965-1082"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amcolumn/amcolumn_data.txt",
    "chars": 128,
    "preview": "USA;4.2;3.5\nUK;3.1;1.7\nCanada;2.9;2.8\nJapan;2.3;2.6\nFrance;2.1;1.4\nBrazil;4.9;2.6\nRussia;7.2;6.4\nIndia;7.4;8.0\nChina;10."
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amcolumn/amcolumn_data.xml",
    "chars": 6402,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<chart>\n  <!-- <message bg_color=\"#BBBB00\" text_color=\"#FFFFFF\"><![CDATA[You can "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amcolumn/amcolumn_data333.txt",
    "chars": 6402,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<chart>\n  <!-- <message bg_color=\"#BBBB00\" text_color=\"#FFFFFF\"><![CDATA[You can "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amcolumn/amcolumn_settings.xml",
    "chars": 36675,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!-- Value between [] brackets, for example [#FFFFFF] shows default value which i"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amcolumn/export.aspx",
    "chars": 95,
    "preview": "<%@ Page Language=\"C#\" AutoEventWireup=\"true\"  CodeFile=\"export.aspx.cs\" Inherits=\"_export\" %>"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amcolumn/export.aspx.cs",
    "chars": 2785,
    "preview": "using System;\nusing System.Web;\nusing System.Drawing;\nusing System.Drawing.Imaging;\n\npublic partial class _export : Syst"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amcolumn/export.php",
    "chars": 1542,
    "preview": "<?php\n// amcharts.com export to image utility\n// set image type (gif/png/jpeg)\n$imgtype = 'jpeg';\n\n// set image quality "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amcolumn/swfobject.js",
    "chars": 7019,
    "preview": "/**\n * SWFObject v1.5: Flash Player detection and embed - http://blog.deconcept.com/swfobject/\n *\n * SWFObject is (c) 20"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/amline/amcharts_key.txt",
    "chars": 32,
    "preview": "AMCHART-LNKS-1966-6679-1965-1082"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/amline/amline_data.txt",
    "chars": 956,
    "preview": "1949;2.54;20.21\n1950;2.51;19.73\n1951;2.53;18.43\n1952;2.53;18.08\n1953;2.68;19.01\n1954;2.78;19.57\n1955;2.77;19.58\n1956;2.7"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/amline/amline_data.xml",
    "chars": 525,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<chart>\n  <!--<message><![CDATA[You can broadcast any message to chart from data "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/amline/amline_settings.xml",
    "chars": 46550,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!-- Value between [] brackets, for example [#FFFFFF] shows default value which i"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/amline/export.aspx",
    "chars": 95,
    "preview": "<%@ Page Language=\"C#\" AutoEventWireup=\"true\"  CodeFile=\"export.aspx.cs\" Inherits=\"_export\" %>"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/amline/export.aspx.cs",
    "chars": 2785,
    "preview": "using System;\nusing System.Web;\nusing System.Drawing;\nusing System.Drawing.Imaging;\n\npublic partial class _export : Syst"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/amline/export.php",
    "chars": 1542,
    "preview": "<?php\n// amcharts.com export to image utility\n// set image type (gif/png/jpeg)\n$imgtype = 'jpeg';\n\n// set image quality "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/amline/swfobject.js",
    "chars": 7031,
    "preview": "/**\n * SWFObject v1.5: Flash Player detection and embed - http://blog.deconcept.com/swfobject/\n *\n * SWFObject is (c) 20"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/amline.html",
    "chars": 1878,
    "preview": "<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n<title>Line & Area chart</title>\n</h"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/changelog.txt",
    "chars": 9121,
    "preview": "*** CHANGE LOG *****************************************************************\n*** 1.6.4.0 ***************************"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/auto_resizing_chart/amline_data.xml",
    "chars": 6068,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<chart>\n\t<series>\n\t\t<value xid=\"0\">1949</value>\n\t\t<value xid=\"1\">1950</value>\n\t\t<"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/auto_resizing_chart/amline_settings.xml",
    "chars": 46320,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!-- Value between [] brackets, for example [#FFFFFF] shows default value which i"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/auto_resizing_chart/index.html",
    "chars": 797,
    "preview": "<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n<title>Auto-resizing chart</title>\n<"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/chart_with_data_gaps/amline_data.txt",
    "chars": 1815,
    "preview": "1900;-0.220;-0.362\n1901;-0.300;-0.376\n1902;-0.430;-0.395\n1903;-0.507;-0.414\n1904;-0.553;-0.434\n1905;-0.411;-0.452\n1906;-"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/chart_with_data_gaps/amline_settings.xml",
    "chars": 46910,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!-- Value between [] brackets, for example [#FFFFFF] shows default value which i"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/chart_with_data_gaps/index.html",
    "chars": 815,
    "preview": "<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n<title>Chart with data gaps</title>\n"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/chart_with_scroller/amline_data.xml",
    "chars": 6272,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<chart>\n\t<series>\n\t\t<value xid=\"0\">1950</value>\n\t\t<value xid=\"1\">1951</value>\n\t\t<"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/chart_with_scroller/amline_settings.xml",
    "chars": 45488,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!-- Value between [] brackets, for example [#FFFFFF] shows default value which i"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/chart_with_scroller/index.html",
    "chars": 796,
    "preview": "<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n<title>Chart with scroller</title>\n<"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/data_and_settings_inisde_html/index.html",
    "chars": 1788,
    "preview": "<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n<title>Data and settings inside HTML"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/javascript_control/amline_data.xml",
    "chars": 5722,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<chart>\n\t<series>\n\t\t<value xid=\"0\">1949</value>\n\t\t<value xid=\"1\">1950</value>\n\t\t<"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/javascript_control/amline_settings.xml",
    "chars": 45323,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!-- Value between [] brackets, for example [#FFFFFF] shows default value which i"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/javascript_control/index.html",
    "chars": 20822,
    "preview": "<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n<title>JavaScript control example</t"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/multiple_charts_on_one_page/amline_data1.txt",
    "chars": 1280,
    "preview": "2007-01-01;482.5001\n2007-01-02;482.1698\n2007-01-03;482.8384\n2007-01-04;483.1293\n2007-01-05;480.0093\n2007-01-06;485.8954\n"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/multiple_charts_on_one_page/amline_data2.txt",
    "chars": 1344,
    "preview": "2007-01-01;1457.7123\n2007-01-02;1460.3290\n2007-01-03;1460.3290\n2007-01-04;1450.1445\n2007-01-05;1452.6525\n2007-01-06;1450"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/multiple_charts_on_one_page/amline_settings1.xml",
    "chars": 45832,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!-- Value between [] brackets, for example [#FFFFFF] shows default value which i"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/multiple_charts_on_one_page/amline_settings2.xml",
    "chars": 45852,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!-- Value between [] brackets, for example [#FFFFFF] shows default value which i"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/multiple_charts_on_one_page/index.html",
    "chars": 1717,
    "preview": "<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n<title>Multiple charts on one page</"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/no_interactivity/amline_data.xml",
    "chars": 5786,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<chart>\n\t<series>\n\t\t<value xid=\"0\">1949</value>\n\t\t<value xid=\"1\">1950</value>\n\t\t<"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/no_interactivity/amline_settings.xml",
    "chars": 40542,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!-- Value between [] brackets, for example [#FFFFFF] shows default value which i"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/no_interactivity/index.html",
    "chars": 804,
    "preview": "<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n<title>Chart without interactivity</"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/stacked_area_chart/amline_data.xml",
    "chars": 1742,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<chart>\n\t<series>\n\t\t<value xid=\"0\">2007 07 01</value>\n\t\t<value xid=\"1\">2007 07 02"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/stacked_area_chart/amline_settings.xml",
    "chars": 40540,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!-- Value between [] brackets, for example [#FFFFFF] shows default value which i"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/stacked_area_chart/index.html",
    "chars": 782,
    "preview": "<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n<title>amline</title>\n</head>\n<body>"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/value_indicator_plugin/amline_data.xml",
    "chars": 3789,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<chart>\n\t<series>\n\t\t<value xid=\"0\">1949</value>\n\t\t<value xid=\"1\">1950</value>\n\t\t<"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/value_indicator_plugin/amline_settings.xml",
    "chars": 1496,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<settings>\n   <!-- chart config -->\n   <legend>\n      <enabled>false</enabled>\n  "
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/examples/value_indicator_plugin/index.html",
    "chars": 784,
    "preview": "<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n<title>amline</title>\n</head>\n<body>"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/licence.txt",
    "chars": 874,
    "preview": "*********************************************************************************\nThis AmCharts software, Line&Area char"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/amline_1.6.4.1/readme.txt",
    "chars": 435,
    "preview": "********************************************************************************\nCheck documentation for help on all top"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/ampie_1.6.4.1/ampie/amcharts_key.txt",
    "chars": 39,
    "preview": "-www.cnhys.com-1422-7223-www.cnhys.com-"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/ampie_1.6.4.1/ampie/ampie_data.txt",
    "chars": 302,
    "preview": "[title];[value];[pull_out];[color];[url];[description];[alpha];[label_radius]\nChina;1314.4;;;http://www.interactivemaps."
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/ampie_1.6.4.1/ampie/ampie_data.xml",
    "chars": 331,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<pie>\n  <slice title=\"Twice a day\" pull_out=\"true\">358</slice>\n  <slice title=\"On"
  },
  {
    "path": "Check Maven Webapp/src/main/webapp/components/chart/ampie_1.6.4.1/ampie/ampie_settings.xml",
    "chars": 17445,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!-- Value between [] brackets, for example [#FFFFFF] shows default value which i"
  }
]

// ... and 492 more files (download for full content)

About this extraction

This page contains the full source code of the yadtang/Check GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 692 files (32.4 MB), approximately 1.3M tokens, and a symbol index with 1261 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!