diff --git a/GDMS.iml b/GDMS.iml index 34d2f99..dc91d7c 100644 --- a/GDMS.iml +++ b/GDMS.iml @@ -19,15 +19,8 @@ - - - - - - - - - - + + + \ No newline at end of file diff --git a/documents/gdms (1).sql b/documents/gdms (1).sql new file mode 100644 index 0000000..8ad3039 --- /dev/null +++ b/documents/gdms (1).sql @@ -0,0 +1,261 @@ +-- -------------------------------------------------------- +-- 主机: 127.0.0.1 +-- 服务器版本: 10.2.18-MariaDB - mariadb.org binary distribution +-- 服务器操作系统: Win64 +-- HeidiSQL 版本: 9.4.0.5125 +-- -------------------------------------------------------- + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET NAMES utf8 */; +/*!50503 SET NAMES utf8mb4 */; +/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; +/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; + + +-- 导出 gdms 的数据库结构 +CREATE DATABASE IF NOT EXISTS `gdms` /*!40100 DEFAULT CHARACTER SET utf8 */; +USE `gdms`; + +-- 导出 表 gdms.administrator 结构 +CREATE TABLE IF NOT EXISTS `administrator` ( + `id` char(20) NOT NULL, + `password` char(255) NOT NULL, + `name` char(30) DEFAULT NULL, + `e_mail_location` char(40) DEFAULT NULL, + `phone_number` char(20) DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='管理员'; + +-- 数据导出被取消选择。 +-- 导出 表 gdms.announcement 结构 +CREATE TABLE IF NOT EXISTS `announcement` ( + `id` char(20) NOT NULL, + `title` text DEFAULT NULL, + `information` text DEFAULT NULL, + `ralease_date` date DEFAULT NULL, + `annex_url` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='公告'; + +-- 数据导出被取消选择。 +-- 导出 表 gdms.graduation_design 结构 +CREATE TABLE IF NOT EXISTS `graduation_design` ( + `id` char(20) NOT NULL, + `student_id` char(20) DEFAULT NULL, + `teacher_id` char(20) DEFAULT NULL, + `teacher_choose_student_status` char(1) DEFAULT NULL, + `student_choose_teacher_status` char(1) DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='毕业设计'; + +-- 数据导出被取消选择。 +-- 导出 表 gdms.graduation_design_finished_product 结构 +CREATE TABLE IF NOT EXISTS `graduation_design_finished_product` ( + `id` char(20) NOT NULL, + `word_count` int(11) DEFAULT NULL, + `final_date` date DEFAULT NULL, + `graduation_design_url` varchar(255) DEFAULT NULL, + `chinese_abstract` text DEFAULT NULL, + `chinese_key_words` text DEFAULT NULL, + `english_abstract` text DEFAULT NULL, + `english_key_words` text DEFAULT NULL, + `score` float DEFAULT NULL, + `finished_product_status` char(1) DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='毕设论文'; + +-- 数据导出被取消选择。 +-- 导出 表 gdms.graduation_design_finished_product_mentor_score 结构 +CREATE TABLE IF NOT EXISTS `graduation_design_finished_product_mentor_score` ( + `id` char(20) NOT NULL, + `meet_requirement_score` float DEFAULT NULL, + `meaning_value_score` float DEFAULT NULL, + `subject_scale_score` float DEFAULT NULL, + `complexity_score` float DEFAULT NULL, + `ability_consult_literature_score` float DEFAULT NULL, + `comprehensive_use_knowledge_score` float DEFAULT NULL, + `design_capability_score` float DEFAULT NULL, + `ability_use_score` float DEFAULT NULL, + `title_consistent_score` float DEFAULT NULL, + `writing_level_score` float DEFAULT NULL, + `writing_specifications_score` float DEFAULT NULL, + `paper_length_score` float DEFAULT NULL, + `teory_value_score` float DEFAULT NULL, + `ability_use_foreign_language_score` float DEFAULT NULL, + `total_grade` float DEFAULT NULL, + `review_opinion` text DEFAULT NULL, + `review_opinion_date` date DEFAULT NULL, + `finished_product_mentor_score_status` char(1) DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='指导老师评定成绩'; + +-- 数据导出被取消选择。 +-- 导出 表 gdms.graduation_design_finished_product_reviewer_score 结构 +CREATE TABLE IF NOT EXISTS `graduation_design_finished_product_reviewer_score` ( + `id` char(20) NOT NULL, + `score` float DEFAULT NULL, + `opinion` text DEFAULT NULL, + `reviewer_score_date` date DEFAULT NULL, + `finished_product_reviewer_score_status` char(1) DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='评阅老师对论文的评审成绩'; + +-- 数据导出被取消选择。 +-- 导出 表 gdms.graduation_design_information 结构 +CREATE TABLE IF NOT EXISTS `graduation_design_information` ( + `id` char(20) NOT NULL, + `chinese_name` varchar(255) DEFAULT NULL, + `english_name` varchar(255) DEFAULT NULL, + `type_of_topic` varchar(255) DEFAULT NULL, + `source_of_design` varchar(255) DEFAULT NULL, + `nature_of_design` varchar(255) DEFAULT NULL, + `description_of_topic` text DEFAULT NULL, + `student_fill_graduation_design_information_status` char(1) DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='毕业设计信息'; + +-- 数据导出被取消选择。 +-- 导出 表 gdms.graduation_design_opening_report 结构 +CREATE TABLE IF NOT EXISTS `graduation_design_opening_report` ( + `id` char(20) NOT NULL, + `report_date` date DEFAULT NULL, + `report_location` varchar(255) DEFAULT NULL, + `report_url` varchar(255) DEFAULT NULL, + `report_teacher_leader_team_id` char(20) DEFAULT NULL, + `report_secretary_leader_team_id` char(20) DEFAULT NULL, + `estimated_word_count` int(11) DEFAULT NULL, + `opening_report_status` char(1) DEFAULT NULL, + `opening_report_mentor_opinion_status` char(1) DEFAULT NULL, + `opening_report_teacher_team_opinion_status` char(1) DEFAULT NULL, + `opening_report_college_opinion_status` char(1) DEFAULT NULL, + `opening_report_secretary_record_status` char(1) DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='开题报告'; + +-- 数据导出被取消选择。 +-- 导出 表 gdms.graduation_design_opening_report_opinion_record 结构 +CREATE TABLE IF NOT EXISTS `graduation_design_opening_report_opinion_record` ( + `id` char(20) NOT NULL, + `mentor_opinion` text DEFAULT NULL, + `mentor_opinion_date` date DEFAULT NULL, + `secretary_record` text DEFAULT NULL, + `secretary_record_date` date DEFAULT NULL, + `report_teacher_team_opinion` text DEFAULT NULL, + `report_teacher_team_opinion_date` date DEFAULT NULL, + `college_opinion` text DEFAULT NULL, + `college_opinion_date` date DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='开题报告会纪要'; + +-- 数据导出被取消选择。 +-- 导出 表 gdms.graduation_design_reply 结构 +CREATE TABLE IF NOT EXISTS `graduation_design_reply` ( + `id` char(20) NOT NULL, + `date` date DEFAULT NULL, + `location` varchar(255) DEFAULT NULL, + `teacher_team_leader_id` char(20) DEFAULT NULL, + `secretary_team_leader_id` char(20) DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='答辩'; + +-- 数据导出被取消选择。 +-- 导出 表 gdms.graduation_design_reply_opinion_record_score 结构 +CREATE TABLE IF NOT EXISTS `graduation_design_reply_opinion_record_score` ( + `id` char(20) NOT NULL, + `mentor_opinion text` text DEFAULT NULL, + `mentor_opinion_date date` date DEFAULT NULL, + `secretary_record` text DEFAULT NULL, + `secretary_record_date date` date DEFAULT NULL, + `teacher_team_opinion` text DEFAULT NULL, + `teacher_team_score` float DEFAULT NULL, + `teacher_team_opinion_date` date DEFAULT NULL, + `college_opinion` text DEFAULT NULL, + `college_score` float DEFAULT NULL, + `college_opinion_date` date DEFAULT NULL, + `school_opinion` text DEFAULT NULL, + `school_score` float DEFAULT NULL, + `school_opinion_date` date DEFAULT NULL, + `reply_ secretary_record_status` char(1) DEFAULT NULL, + `reply_ teacher_team_score_status` char(1) DEFAULT NULL, + `reply_ college_score_status` char(1) DEFAULT NULL, + `reply_school_score_status` char(1) DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='答辩记录表'; + +-- 数据导出被取消选择。 +-- 导出 表 gdms.opening_report_secretary_team 结构 +CREATE TABLE IF NOT EXISTS `opening_report_secretary_team` ( + `leader_student_id` char(20) NOT NULL, + `student1_id` char(20) DEFAULT NULL, + `student2_id` char(20) DEFAULT NULL, + PRIMARY KEY (`leader_student_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='开题报告秘书组'; + +-- 数据导出被取消选择。 +-- 导出 表 gdms.opening_report_teacher_team 结构 +CREATE TABLE IF NOT EXISTS `opening_report_teacher_team` ( + `leader_teacher_id` char(20) NOT NULL, + `teacher1_id` char(20) DEFAULT NULL, + `teacher2_id` char(20) DEFAULT NULL, + PRIMARY KEY (`leader_teacher_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='开题报告老师组'; + +-- 数据导出被取消选择。 +-- 导出 表 gdms.profession_information 结构 +CREATE TABLE IF NOT EXISTS `profession_information` ( + `profession_code` char(8) NOT NULL, + `college` varchar(255) DEFAULT NULL, + `department` varchar(255) DEFAULT NULL, + `profession` varchar(255) DEFAULT NULL, + PRIMARY KEY (`profession_code`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='专业信息'; + +-- 数据导出被取消选择。 +-- 导出 表 gdms.reply_secretary_team 结构 +CREATE TABLE IF NOT EXISTS `reply_secretary_team` ( + `leader_student_id` char(20) NOT NULL, + `student1_id` char(20) DEFAULT NULL, + `student2_id` char(20) DEFAULT NULL, + PRIMARY KEY (`leader_student_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='答辩秘书小组'; + +-- 数据导出被取消选择。 +-- 导出 表 gdms.reply_teacher_team 结构 +CREATE TABLE IF NOT EXISTS `reply_teacher_team` ( + `leader_teacher_id` char(20) NOT NULL, + `teacher1_id` char(20) DEFAULT NULL, + `teacher2_id` char(20) DEFAULT NULL, + PRIMARY KEY (`leader_teacher_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='答辩教师组'; + +-- 数据导出被取消选择。 +-- 导出 表 gdms.student 结构 +CREATE TABLE IF NOT EXISTS `student` ( + `id` char(20) NOT NULL, + `password` char(255) NOT NULL, + `name` char(30) DEFAULT NULL, + `e_mail_location` char(40) DEFAULT NULL, + `phone_number` char(20) DEFAULT NULL, + `grade` char(4) DEFAULT NULL, + `profession_code` char(8) DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='学生用户'; + +-- 数据导出被取消选择。 +-- 导出 表 gdms.teacher 结构 +CREATE TABLE IF NOT EXISTS `teacher` ( + `id` char(20) NOT NULL, + `password` char(255) NOT NULL, + `name` char(30) DEFAULT NULL, + `e_mail_location` char(40) DEFAULT NULL, + `phone_number` char(20) DEFAULT NULL, + `job_title` varchar(255) DEFAULT NULL, + `education` varchar(255) DEFAULT NULL, + `profession_code` char(8) DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='老师用户'; + +-- 数据导出被取消选择。 +/*!40101 SET SQL_MODE=IFNULL(@OLD_SQL_MODE, '') */; +/*!40014 SET FOREIGN_KEY_CHECKS=IF(@OLD_FOREIGN_KEY_CHECKS IS NULL, 1, @OLD_FOREIGN_KEY_CHECKS) */; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; diff --git a/documents/~$bys中期报告5.pptx b/documents/~$bys中期报告5.pptx deleted file mode 100644 index 2dc2a06..0000000 Binary files a/documents/~$bys中期报告5.pptx and /dev/null differ diff --git a/documents/数据库.txt b/documents/数据库.txt new file mode 100644 index 0000000..635fa76 --- /dev/null +++ b/documents/数据库.txt @@ -0,0 +1,198 @@ +id char 20//用户id +password char 255//用户密码 +name char 30//用户姓名 +e_mail_location char 40//邮箱 +phone_number char 20//电话号码 +url varchar 255//......路径 + +administrator//管理员 + id//管理员ID + password char 255//用户密码 + name char 30//用户姓名 + e_mail_location//电子邮件 + phone_number//电话号码 + +profession_information//专业信息 + profession_code char 8//专业代码 + college varchar 255//学院名称 + department varchar 255//系名称 + profession varchar 255//专业名称 + +student//学生用户 + id char 20//学生ID + password char 255//学生密码 + name char 30//学生姓名 + e_mail_location char 40//学生电子邮箱 + phone_number char 20//电话号码 + grade char 4//学生年级 + profession_code char 8//专业代码 + +teacher//老师 + id char 20//老师ID + password char 255//老师密码 + name char 30 //老师姓名 + e_mail_location char 40 //电子邮件 + phonenumber //电话 + job_title varchar 255//职称 + education varchar 255//老师学历 + profession_code char 8//专业代码 + +graduation_design//毕业设计 + id char 20//论文ID + stu_id char 20//学生id + teacher_id char 20//老师id + teacher_choose_student_status char 1 //指导老师指导学生 + student_choose_teacher_status char 1//学生选择老师 + + + + +graduation_design_information//毕业设计信息 + id char 20//论文ID + chinese_name varchar 255//论文中文名 + english_name varchar 255//论文英文名 + type_of_topic varchar 255//题目类别 + source_of_design varchar 255//选题来源 + nature_of_design varchar 255//选题性质 + description_of_topic text//题目简介 + student_fill_graduation_design_information_status char 1//学生填写选题信息 + +graduation_design_opening_report//开题报告 + id char 20//论文ID + report_date date//开题报告日期 + report_location varchar 255//开题报告地点 + report_url varchar 255 //开题报告路径 + report_teacher_leader_team_id char 20 //开题报告评阅老师组组长 + report_secretary_leader_team_id char 20 //开题报告秘书组长 + estimated_word_count int//预计字数 + opening_report_status char 1//学生提交开题报告书 + opening_report_mentor_opinion_status char 1//指导老师提交开题报告书意见 + opening_report_teacher_team_opinion_status char 1//开题报告会组长提交开题报告会纪要意见 + opening_report_college_opinion_status char 1//学院老师提交开题报告会纪要意见 + opening_report_secretary_record_status char 1//开题秘书提交开题报告会纪要 + +graduation_design_opening_report_opinion_record//开题报告会纪要 + id char 20 //论文ID + mentor_opinion text//导师意见 + mentor_opinion_date date//导师意见填写日期 + secretary_record text//秘书填写会议记录摘要 + secretary_record_date date//秘书记录日期 + report_teacher_team_opinion text//教师指导小组意见 + report_teacher_team_opinion_date date//教师指导小组填写日期 + college_opinion text//学院意见 + college_opinion_date date//学院意见日期 + +opening_report_teacher_team//开题报告老师组 + leader_teacher_id char 20//开题报告老师组组长 + teacher1_id char 20//开题报告老师组成员1 + teacher2_id char 20//开题报告老师组成员2 + +opening_report_secretary_team//开题报告秘书组 + leader_student_id char 20//开题报告秘书组组长 + student1_id char 20//开题报告秘书组成员1 + student2_id char 20//开题报告秘书组成员2 + +graduation_design_finished_product//毕设论文评审表 + id char 20//论文ID + word_count int//论文字数 + final_date date//定稿日期 + graduation_design_url varchar 255//论文路径 + chinese_abstract text//中文摘要 + chinese_key_words text//中文关键词 + english_abstract text//英文摘要 + english_key_words text//英文关键词 + score float//最终分数 + finished_product_status char 1//学生提交定稿 + + +graduation_design_finished_product_mentor_score//指导老师评定成绩 + id char 20//论文ID + meet_requirement_score float//目的明确符合要求 + meaning_value_score float//理论意义或实际价值 + subject_scale_score float//题目规模适当 + complexity_score float//难易度适中 + ability_consult_literature_score float//查阅文献资料能力 + comprehensive_use_knowledge_score float//综合运用知识能力 + design_capability_score float//研究方案的设计能力 + ability_use_score float//研究方法和手段的运用能力 + title_consistent_score float//文题相符 + writing_level_score float//写作水平 + writing_specifications_score float//写作规范 + paper_length_score float//论文篇幅 + teory_value_score float//成果的理论或实际价值 + ability_use_foreign_language_score float//外文应用能力 + total_grade float//总成绩 + review_opinion text//指导老师评审意见 + review_opinion_date date//评审日期 + finished_product_mentor_score_status char 1//指导老师评阅 + +graduation_design_finished_product_reviewer_score//评阅老师对论文的评审成绩 + id char 20//论文ID + score float//分数 + opinion text//意见 + reviewer_score_date date//评阅老师评阅日期 + finished_product_reviewer_score_status char 1//评阅老师评阅 + +graduation_design_reply//答辩 + id char 20//论文ID + date date//答辩日期 + location varchar 255//答辩地点 + teacher_team_leader_id//答辩教师组组长id + secretary_team_leader_id//答辩秘书组组长id + +graduation_design_reply_opinion_record_score//答辩记录表 + id char 20//论文ID + mentor_opinion text//导师意见 + mentor_opinion_date date//导师意见提交日期 + secretary_record text//秘书记录 + secretary_record_date date//秘书记录日期 + teacher_team_opinion text//教师组意见 + teacher_team_score int//教师评分 + teacher_team_opinion_date date//教师意见日期 + college_opinion text//学院意见 + college_score int//学院分数 + college_opinion_date date//学院意见日期 + school_opinion text//学校意见 + school_score int//学校分数 + school_opinion_date date//学校意见日期 + reply_ secretary_record_status char 1//答辩秘书提交答辩记录表 + reply_ teacher_team_score_status char 1//答辩小组提交评分意见 + reply_ college_score_status char 1//学院老师提交评分意见 + reply_school_score_status char 1//学校老师提交评分意见 + +reply_teacher_team//答辩教师组 + leader_teacher_id char 20//组长id + teacher1_id char 20//组员1 + teacher2_id char 20//组员2 + +reply_secretary_team//答辩秘书小组 + leader_student_id char 20//组长 + student1_id char 20//组员1 + student2_id char 20//组员2 + +announcement //公告 + id char 20//公告ID + title text //公告标题 + information text //公告信息 + ralease_date date//公告发布日期 + annex_url varchar 255//附件链接 + + + + + + + + + + + + +global_time_point//全局时间点 + teacher_choose_student_start_date date //开始选题时间 + student_choose_teacher_start_date date //开放选题入口时间 + choose_end_date date//关闭选题入口时间 + opening_report_opinion_deadline_date date//开题报告意见提交截止时间 + finished_product_deadline_date date//定稿上传截止日期 + finished_product_review_deadline_date date//评阅截止日期 + reply_opition_deadline_date date//答辩意见截止日期 \ No newline at end of file diff --git a/documents/数据库E-R图-final (1) (1).jpg b/documents/数据库E-R图-final (1) (1).jpg new file mode 100644 index 0000000..6831761 Binary files /dev/null and b/documents/数据库E-R图-final (1) (1).jpg differ diff --git a/documents/目录.docx b/documents/目录.docx deleted file mode 100644 index cdb9aac..0000000 Binary files a/documents/目录.docx and /dev/null differ diff --git a/documents/约定.txt b/documents/约定.txt new file mode 100644 index 0000000..7b9a7e2 --- /dev/null +++ b/documents/约定.txt @@ -0,0 +1,7 @@ +status有五种: + 1, 0 000 未开始 + 2, 1 001 开始未完成 + 3, 3 011 开始已完成未结束 + 4, 5 101 开始未完成已结束 + 5, 7 111 开始已完成已结束 + ,,,其余无效 \ No newline at end of file diff --git a/documents/设计文档1.0 (1).pdf b/documents/设计文档1.0 (1).pdf deleted file mode 100644 index 666e781..0000000 Binary files a/documents/设计文档1.0 (1).pdf and /dev/null differ diff --git a/documents/设计文档2.0.docx b/documents/设计文档2.0.docx new file mode 100644 index 0000000..3b0127a Binary files /dev/null and b/documents/设计文档2.0.docx differ diff --git a/documents/选题+开题+定稿+答辩-方块图.jpg b/documents/选题+开题+定稿+答辩-方块图.jpg new file mode 100644 index 0000000..167dc75 Binary files /dev/null and b/documents/选题+开题+定稿+答辩-方块图.jpg differ diff --git a/documents/选题开题评阅答辩评分功能 .docx b/documents/选题开题评阅答辩评分功能 .docx new file mode 100644 index 0000000..cda5894 Binary files /dev/null and b/documents/选题开题评阅答辩评分功能 .docx differ diff --git a/documents/需求报告2.01.docx b/documents/需求报告2.01.docx deleted file mode 100644 index 25a6e1b..0000000 Binary files a/documents/需求报告2.01.docx and /dev/null differ diff --git a/src/core/process/C_StudentSelectTeacher.java b/src/core/process/C_StudentSelectTeacher.java index e60acc8..d2b9b93 100644 --- a/src/core/process/C_StudentSelectTeacher.java +++ b/src/core/process/C_StudentSelectTeacher.java @@ -7,7 +7,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -public class C_StudentSelectTeacher extends Process { +public class C_StudentSelectTeacher extends core.process.Process { public void select(String studentID,String teacherID)throws Exception{ Select select=new Select(); select.setOptions(new HashMap<>()); diff --git a/src/core/process/ProcessManagement.java b/src/core/process/ProcessManagement.java index b7bf2f0..3d64848 100644 --- a/src/core/process/ProcessManagement.java +++ b/src/core/process/ProcessManagement.java @@ -1,11 +1,46 @@ package core.process; +import core.user.User; +import dao.DBManagement; + import java.util.List; +import java.util.Map; public class ProcessManagement { - public Condition getCondition(String userType, List index){ + public static Condition getCondition(User user) { + Map status = getStatus(user); + return getCondition(user,status); + } + public static Condition getCondition(User user, Map status){ + Condition condition = new Condition(); + for(Map.Entry entry:status.entrySet()){ + String[] s = entry.getKey().split("."); + TempProcess tempProcess = (TempProcess) getProcess(s[1]); + tempProcess.setGraduationDesignId(s[0]); + tempProcess.setStatus(entry.getValue()); + condition.add(tempProcess); + } + condition.add(getLastProcesses(user)); + return condition; + } + + private static List getLastProcesses(User user) { + return null; + } + + //Map + public static Map getStatus(User user){ + + Map userTables = DBManagement.getUserTables(user.getType()); + String graduationDesignId = null; + for(Map.Entry entry:userTables.entrySet()){ + String[] ti = entry.getKey().split("."); + String[] ts = entry.getValue().split("."); + + } + return null; } - public Process getProcess(int index){ + public static Process getProcess(String process){ return null; } } diff --git a/src/core/process/TempProcess.java b/src/core/process/TempProcess.java index 1bb01d4..2675bff 100644 --- a/src/core/process/TempProcess.java +++ b/src/core/process/TempProcess.java @@ -1,8 +1,17 @@ package core.process; public abstract class TempProcess extends Process { - public static String process; - public static String nextProcess; + private static String process; + private static String nextProcess; + private String graduationDesignId; + + public String getGraduationDesignId() { + return graduationDesignId; + } + + public void setGraduationDesignId(String graduationDesignId) { + this.graduationDesignId = graduationDesignId; + } public static String getProcess() { return process; diff --git a/src/core/user/Administrator.java b/src/core/user/Administrator.java index f56ff0d..71d0c9e 100644 --- a/src/core/user/Administrator.java +++ b/src/core/user/Administrator.java @@ -3,6 +3,11 @@ package core.user; import java.util.Map; public class Administrator extends User { + @Override + public String getType() { + return "administrator"; + } + @Override public void setAttr(Map vMap){ super.setAttr(vMap); diff --git a/src/core/user/Student.java b/src/core/user/Student.java index 7365272..4d4987b 100644 --- a/src/core/user/Student.java +++ b/src/core/user/Student.java @@ -6,6 +6,12 @@ import java.util.Map; public class Student extends User { private String grade; private String profession_code; + + @Override + public String getType() { + return "student"; + } + public void setAttr(Map vMap){ super.setAttr(vMap); this.setGrade(vMap.get("grade")); diff --git a/src/core/user/Teacher.java b/src/core/user/Teacher.java index 2a24d05..9b7c053 100644 --- a/src/core/user/Teacher.java +++ b/src/core/user/Teacher.java @@ -7,6 +7,12 @@ public class Teacher extends User { String job_title; String education; String profession_code; + + @Override + public String getType() { + return "teacher"; + } + @Override public void setAttr(Map vMap){ super.setAttr(vMap); diff --git a/src/core/user/User.java b/src/core/user/User.java index 89b29b0..236c2ae 100644 --- a/src/core/user/User.java +++ b/src/core/user/User.java @@ -89,9 +89,7 @@ public abstract class User implements AccountManageable, ProcessConfigurable{ super(); } - public String getType(){ - return this.getClass().getName(); - } + public abstract String getType(); public void destroy(){ core.user.utils.AccountManagement.destroy(this); diff --git a/src/core/utils/GetObjectByName.java b/src/core/utils/GetObjectByName.java index de87637..72f8a8d 100644 --- a/src/core/utils/GetObjectByName.java +++ b/src/core/utils/GetObjectByName.java @@ -7,9 +7,9 @@ public interface GetObjectByName { String userClassPath = "core.user"; String operationClassPath = "core.operation"; static User getUserByName(String name) throws Exception { - return (User)Class.forName(userClassPath+"."+name).getDeclaredConstructor().newInstance(); + return (User)Class.forName(userClassPath+"."+utils.Utils.toUpperFirstChar(name)).getDeclaredConstructor().newInstance(); } static Operation getOperationByName(String name) throws Exception{ - return (Operation)Class.forName(operationClassPath+"."+name).getDeclaredConstructor().newInstance(); + return (Operation)Class.forName(operationClassPath+"."+utils.Utils.toUpperFirstChar(name)).getDeclaredConstructor().newInstance(); } } diff --git a/src/dao/DBManagement.java b/src/dao/DBManagement.java index e9e1ce9..703602a 100644 --- a/src/dao/DBManagement.java +++ b/src/dao/DBManagement.java @@ -29,16 +29,23 @@ public class DBManagement { "graduation_design_reply", "graduation_design_reply_opinion_record_score" }; - // + // public static Map graduationDesignStudentTables = new HashMap<>(){ { - put("graduation_design.student_id","student"); - put("opening_report_secretary_team.leader_student_id","opening_report_secretary_leader"); - put("opening_report_secretary_team.student1_id","opening_report_secretary_member"); - put("opening_report_secretary_team.student2_id","opening_report_secretary_member"); - put("reply_secretary_team.leader_student_id","reply_secretary_leader"); - put("reply_secretary_team.student1_id","reply_secretary_member"); - put("reply_secretary_team.student2_id","reply_secretary_member"); + put("graduation_design.student_id","graduation_design.student_chooser_teacher_status"); + + + put("opening_report_secretary_team.leader_student_id",""); + put("opening_report_secretary_team.student1_id",""); + put("opening_report_secretary_team.student2_id",""); + put("reply_secretary_team.leader_student_id",""); + put("reply_secretary_team.student1_id",""); + put("reply_secretary_team.student2_id",""); + } + }; + public static Map graduationDesignTeacherTables = new HashMap<>(){ + { + put("",""); } }; public static String driverClassName="org.mariadb.jdbc.Driver"; @@ -72,6 +79,15 @@ public class DBManagement { } return null; } + public static Map getUserTables(String userType){ + if(userType.equals("student")){ + return graduationDesignStudentTables; + } + if(userType.equals("teacher")){ + return graduationDesignTeacherTables; + } + return null; + } public static void delete(String table, Map limits) throws GExcptSQL { Delete delete = new Delete(table, limits); diff --git a/src/gdms/Mode.java b/src/gdms/Mode.java index 4415ae0..347228f 100644 --- a/src/gdms/Mode.java +++ b/src/gdms/Mode.java @@ -1,6 +1,6 @@ package gdms; public interface Mode { - public static int strict = 1; + public static int strict = 0; public static int debug = 1; } diff --git a/src/gdms/test.java b/src/gdms/test.java index 1e92dad..9c49cea 100644 --- a/src/gdms/test.java +++ b/src/gdms/test.java @@ -1,6 +1,7 @@ package gdms; import core.operation.utils.Utils; +import core.process.C_StudentSelectTeacher; import dao.Select; import java.util.ArrayList; @@ -10,6 +11,14 @@ import java.util.Map; public class test { public static void main(String[] args){ + String student_id = "001"; + String teacher_id = "002"; + core.process.Process p = new C_StudentSelectTeacher(); + try { + ((C_StudentSelectTeacher) p).select(student_id,teacher_id); + } catch (Exception e) { + e.printStackTrace(); + } List list = new ArrayList<>(); list.add("q"); list.add("w"); diff --git a/src/servlet/select/S_StudentSelectTeacher.java b/src/servlet/Select/S_StudentSelectTeacher.java similarity index 90% rename from src/servlet/select/S_StudentSelectTeacher.java rename to src/servlet/Select/S_StudentSelectTeacher.java index 777874a..da5ea06 100644 --- a/src/servlet/select/S_StudentSelectTeacher.java +++ b/src/servlet/Select/S_StudentSelectTeacher.java @@ -1,4 +1,4 @@ -package servlet.select; +package servlet.Select; import core.process.C_StudentSearchTeacher; import core.process.C_StudentSelectTeacher; @@ -14,7 +14,7 @@ public class S_StudentSelectTeacher extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { super.doPost(request, response); String student_id=request.getParameter("id"); - User user=(User)request.getSession().getAttribute("User"); + User user=(User)request.getSession().getAttribute("user"); String teacher_id=user.getId(); try { new C_StudentSelectTeacher().select(student_id,teacher_id); diff --git a/src/servlet/select/S_TeacherSelectStudent.java b/src/servlet/Select/S_TeacherSelectStudent.java similarity index 90% rename from src/servlet/select/S_TeacherSelectStudent.java rename to src/servlet/Select/S_TeacherSelectStudent.java index 4dab761..c073265 100644 --- a/src/servlet/select/S_TeacherSelectStudent.java +++ b/src/servlet/Select/S_TeacherSelectStudent.java @@ -1,4 +1,4 @@ -package servlet.select; +package servlet.Select; import core.process.C_TeacherSelectStudent; import core.user.User; @@ -14,7 +14,7 @@ public class S_TeacherSelectStudent extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { super.doPost(request, response); String teacher_id=request.getParameter("id"); - User user=(User)request.getSession().getAttribute("User"); + User user=(User)request.getSession().getAttribute("user"); String student_id=user.getId(); try { new C_TeacherSelectStudent().select(teacher_id,student_id); diff --git a/src/servlet/Submit/S_Submit.java b/src/servlet/Submit/S_Submit.java index 94decf4..c5a4349 100644 --- a/src/servlet/Submit/S_Submit.java +++ b/src/servlet/Submit/S_Submit.java @@ -10,7 +10,7 @@ import java.io.IOException; public class S_Submit extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { super.doPost(request, response); - String content=request.getParameter("opinion"); - + String content=new String(request.getParameter("text").getBytes("ISO8859-1"),"UTF-8"); + String score=request.getParameter("score"); } } diff --git a/src/servlet/account/S_TeacherSelectStudent.java b/src/servlet/account/S_TeacherSelectStudent.java deleted file mode 100644 index a9040e8..0000000 --- a/src/servlet/account/S_TeacherSelectStudent.java +++ /dev/null @@ -1,19 +0,0 @@ -package servlet.account; - -import javax.servlet.ServletException; -import javax.servlet.annotation.WebServlet; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; - -@WebServlet(name = "S_TeacherSelectStudent") -public class S_TeacherSelectStudent extends HttpServlet { - protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { - - } - - protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { - - } -} diff --git a/src/servlet/account/login.java b/src/servlet/account/login.java index 08269c3..0afd51b 100644 --- a/src/servlet/account/login.java +++ b/src/servlet/account/login.java @@ -31,12 +31,7 @@ public class login extends HttpServlet { } catch (Exception e) { e.printStackTrace(); } - request.getSession().setAttribute("User",user); + request.getSession().setAttribute("user",user); request.getRequestDispatcher("/home.jsp").forward(request,response); } - - protected void doGet(HttpServletRequest request, HttpServletResponse response) - throws ServletException, IOException { - - } } diff --git a/src/servlet/account/service.java b/src/servlet/account/service.java deleted file mode 100644 index 0f6cadf..0000000 --- a/src/servlet/account/service.java +++ /dev/null @@ -1,23 +0,0 @@ -package servlet.account; - -import java.io.IOException; - -import javax.servlet.ServletException; -import javax.servlet.annotation.WebServlet; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -@WebServlet( "/service") -public class service extends HttpServlet { - protected void doPost(HttpServletRequest request, HttpServletResponse response) - throws ServletException, IOException { - System.out.print(request.getParameter("id")); - - } - - protected void doGet(HttpServletRequest request, HttpServletResponse response) - throws ServletException, IOException { - - } -} diff --git a/src/servlet/basic_settings/S_Filter.java b/src/servlet/basic_settings/S_Filter.java deleted file mode 100644 index 1eccfd1..0000000 --- a/src/servlet/basic_settings/S_Filter.java +++ /dev/null @@ -1,50 +0,0 @@ -package servlet.basic_settings; - -import javax.servlet.*; -import javax.servlet.annotation.WebFilter; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import javax.servlet.http.HttpSession; -import java.io.IOException; -@WebFilter(filterName = "sessionFilter",urlPatterns = {"/*"}) -public class S_Filter implements Filter { - String NO_LOGIN="/notLogin"; - String includeUrls="/gdms/login.jsp"; - public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws ServletException,IOException{ - HttpServletRequest request=(HttpServletRequest) servletRequest; - HttpServletResponse response=(HttpServletResponse) servletResponse; - HttpSession session=request.getSession(false); - String uri=request.getRequestURI(); - //是否需要过滤 - boolean needFilter=isNeedFilter(uri); - if(!needFilter){ - filterChain.doFilter(servletRequest,servletResponse); - }else{ - //需要过滤器 - //session中包含user对象,则是登录状态 - if(session!=null&&session.getAttribute("user")!=null){ - filterChain.doFilter(servletRequest,servletResponse); - }else{ - String requestType=request.getHeader("X-Requested-with"); - //判断是否是ajax请求 - if(requestType!=null&&"XMLHttpRequest".equals(requestType)){ - response.sendRedirect(NO_LOGIN); - }else{ - //重定向到登录页(需要在static文件夹下建立此html文件) - response.sendRedirect("/gdms/login.jsp"); - } - return; - } - } - - - } - public boolean isNeedFilter(String uri) { - if (includeUrls.equals(uri)) { - return false; - } - return true; - } - - -} diff --git a/web/WEB-INF/lib/commons-fileupload-1.3.1.jar b/web/WEB-INF/lib/commons-fileupload-1.3.1.jar new file mode 100644 index 0000000..af0cda2 Binary files /dev/null and b/web/WEB-INF/lib/commons-fileupload-1.3.1.jar differ diff --git a/web/WEB-INF/lib/commons-io-2.6.jar b/web/WEB-INF/lib/commons-io-2.6.jar new file mode 100644 index 0000000..00556b1 Binary files /dev/null and b/web/WEB-INF/lib/commons-io-2.6.jar differ diff --git a/web/WEB-INF/lib/jstl.jar b/web/WEB-INF/lib/jstl.jar new file mode 100644 index 0000000..a02abec Binary files /dev/null and b/web/WEB-INF/lib/jstl.jar differ diff --git a/web/WEB-INF/lib/standard.jar b/web/WEB-INF/lib/standard.jar new file mode 100644 index 0000000..bc528ac Binary files /dev/null and b/web/WEB-INF/lib/standard.jar differ diff --git a/web/WEB-INF/tld/c-1_0-rt.tld b/web/WEB-INF/tld/c-1_0-rt.tld new file mode 100644 index 0000000..2203657 --- /dev/null +++ b/web/WEB-INF/tld/c-1_0-rt.tld @@ -0,0 +1,393 @@ + + + + 1.0 + 1.2 + c_rt + http://java.sun.com/jstl/core_rt + JSTL core RT + JSTL 1.0 core library + + + + org.apache.taglibs.standard.tlv.JstlCoreTLV + + + Provides core validation features for JSTL tags. + + + + + catch + org.apache.taglibs.standard.tag.common.core.CatchTag + JSP + + Catches any Throwable that occurs in its body and optionally + exposes it. + + + var + false + false + + + + + choose + org.apache.taglibs.standard.tag.common.core.ChooseTag + JSP + + Simple conditional tag that establishes a context for + mutually exclusive conditional operations, marked by + <when> and <otherwise> + + + + + if + org.apache.taglibs.standard.tag.rt.core.IfTag + JSP + + Simple conditional tag, which evalutes its body if the + supplied condition is true and optionally exposes a Boolean + scripting variable representing the evaluation of this condition + + + test + true + true + boolean + + + var + false + false + + + scope + false + false + + + + + import + org.apache.taglibs.standard.tag.rt.core.ImportTag + org.apache.taglibs.standard.tei.ImportTEI + JSP + + Retrieves an absolute or relative URL and exposes its contents + to either the page, a String in 'var', or a Reader in 'varReader'. + + + url + true + true + + + var + false + false + + + scope + false + false + + + varReader + false + false + + + context + false + true + + + charEncoding + false + true + + + + + forEach + org.apache.taglibs.standard.tag.rt.core.ForEachTag + org.apache.taglibs.standard.tei.ForEachTEI + JSP + + The basic iteration tag, accepting many different + collection types and supporting subsetting and other + functionality + + + items + false + true + java.lang.Object + + + begin + false + true + int + + + end + false + true + int + + + step + false + true + int + + + var + false + false + + + varStatus + false + false + + + + + forTokens + org.apache.taglibs.standard.tag.rt.core.ForTokensTag + JSP + + Iterates over tokens, separated by the supplied delimeters + + + items + true + true + java.lang.String + + + delims + true + true + java.lang.String + + + begin + false + true + int + + + end + false + true + int + + + step + false + true + int + + + var + false + false + + + varStatus + false + false + + + + + out + org.apache.taglibs.standard.tag.rt.core.OutTag + JSP + + Like <%= ... >, but for expressions. + + + value + true + true + + + default + false + true + + + escapeXml + false + true + + + + + + otherwise + org.apache.taglibs.standard.tag.common.core.OtherwiseTag + JSP + + Subtag of <choose> that follows <when> tags + and runs only if all of the prior conditions evaluated to + 'false' + + + + + param + org.apache.taglibs.standard.tag.rt.core.ParamTag + JSP + + Adds a parameter to a containing 'import' tag's URL. + + + name + true + true + + + value + false + true + + + + + redirect + org.apache.taglibs.standard.tag.rt.core.RedirectTag + JSP + + Redirects to a new URL. + + + var + false + false + + + scope + false + false + + + url + false + true + + + context + false + true + + + + + remove + org.apache.taglibs.standard.tag.common.core.RemoveTag + empty + + Removes a scoped variable (from a particular scope, if specified). + + + var + true + false + + + scope + false + false + + + + + set + org.apache.taglibs.standard.tag.rt.core.SetTag + JSP + + Sets the result of an expression evaluation in a 'scope' + + + var + false + false + + + value + false + true + + + target + false + true + + + property + false + true + + + scope + false + false + + + + + url + org.apache.taglibs.standard.tag.rt.core.UrlTag + JSP + + Creates a URL with optional query parameters. + + + var + false + false + + + scope + false + false + + + value + false + true + + + context + false + true + + + + + when + org.apache.taglibs.standard.tag.rt.core.WhenTag + JSP + + Subtag of <choose> that includes its body if its + condition evalutes to 'true' + + + test + true + true + boolean + + + + diff --git a/web/WEB-INF/tld/c-1_0.tld b/web/WEB-INF/tld/c-1_0.tld new file mode 100644 index 0000000..ce80e8d --- /dev/null +++ b/web/WEB-INF/tld/c-1_0.tld @@ -0,0 +1,416 @@ + + + + 1.0 + 1.2 + c + http://java.sun.com/jstl/core + JSTL core + JSTL 1.0 core library + + + + org.apache.taglibs.standard.tlv.JstlCoreTLV + + + expressionAttributes + + out:value + out:default + out:escapeXml + if:test + import:url + import:context + import:charEncoding + forEach:items + forEach:begin + forEach:end + forEach:step + forTokens:items + forTokens:begin + forTokens:end + forTokens:step + param:encode + param:name + param:value + redirect:context + redirect:url + set:property + set:target + set:value + url:context + url:value + when:test + + + Whitespace-separated list of colon-separated token pairs + describing tag:attribute combinations that accept expressions. + The validator uses this information to determine which + attributes need their syntax validated. + + + + + + catch + org.apache.taglibs.standard.tag.common.core.CatchTag + JSP + + Catches any Throwable that occurs in its body and optionally + exposes it. + + + var + false + false + + + + + choose + org.apache.taglibs.standard.tag.common.core.ChooseTag + JSP + + Simple conditional tag that establishes a context for + mutually exclusive conditional operations, marked by + <when> and <otherwise> + + + + + out + org.apache.taglibs.standard.tag.el.core.OutTag + JSP + + Like <%= ... >, but for expressions. + + + value + true + false + + + default + false + false + + + escapeXml + false + false + + + + + if + org.apache.taglibs.standard.tag.el.core.IfTag + JSP + + Simple conditional tag, which evalutes its body if the + supplied condition is true and optionally exposes a Boolean + scripting variable representing the evaluation of this condition + + + test + true + false + + + var + false + false + + + scope + false + false + + + + + import + org.apache.taglibs.standard.tag.el.core.ImportTag + org.apache.taglibs.standard.tei.ImportTEI + JSP + + Retrieves an absolute or relative URL and exposes its contents + to either the page, a String in 'var', or a Reader in 'varReader'. + + + url + true + false + + + var + false + false + + + scope + false + false + + + varReader + false + false + + + context + false + false + + + charEncoding + false + false + + + + + forEach + org.apache.taglibs.standard.tag.el.core.ForEachTag + org.apache.taglibs.standard.tei.ForEachTEI + JSP + + The basic iteration tag, accepting many different + collection types and supporting subsetting and other + functionality + + + items + false + false + + + begin + false + false + + + end + false + false + + + step + false + false + + + var + false + false + + + varStatus + false + false + + + + + forTokens + org.apache.taglibs.standard.tag.el.core.ForTokensTag + JSP + + Iterates over tokens, separated by the supplied delimeters + + + items + true + false + + + delims + true + false + + + begin + false + false + + + end + false + false + + + step + false + false + + + var + false + false + + + varStatus + false + false + + + + + otherwise + org.apache.taglibs.standard.tag.common.core.OtherwiseTag + JSP + + Subtag of <choose> that follows <when> tags + and runs only if all of the prior conditions evaluated to + 'false' + + + + + param + org.apache.taglibs.standard.tag.el.core.ParamTag + JSP + + Adds a parameter to a containing 'import' tag's URL. + + + name + true + false + + + value + false + false + + + + + redirect + org.apache.taglibs.standard.tag.el.core.RedirectTag + JSP + + Redirects to a new URL. + + + var + false + false + + + scope + false + false + + + url + true + false + + + context + false + false + + + + + remove + org.apache.taglibs.standard.tag.common.core.RemoveTag + empty + + Removes a scoped variable (from a particular scope, if specified). + + + var + true + false + + + scope + false + false + + + + + set + org.apache.taglibs.standard.tag.el.core.SetTag + JSP + + Sets the result of an expression evaluation in a 'scope' + + + var + false + false + + + value + false + false + + + target + false + false + + + property + false + false + + + scope + false + false + + + + + url + org.apache.taglibs.standard.tag.el.core.UrlTag + JSP + + Prints or exposes a URL with optional query parameters + (via the c:param tag). + + + var + false + false + + + scope + false + false + + + value + true + false + + + context + false + false + + + + + when + org.apache.taglibs.standard.tag.el.core.WhenTag + JSP + + Subtag of <choose> that includes its body if its + condition evalutes to 'true' + + + test + true + false + + + + diff --git a/web/WEB-INF/tld/c.tld b/web/WEB-INF/tld/c.tld new file mode 100644 index 0000000..22698c9 --- /dev/null +++ b/web/WEB-INF/tld/c.tld @@ -0,0 +1,563 @@ + + + + + JSTL 1.1 core library + JSTL core + 1.1 + c + http://java.sun.com/jsp/jstl/core + + + + Provides core validation features for JSTL tags. + + + org.apache.taglibs.standard.tlv.JstlCoreTLV + + + + + + Catches any Throwable that occurs in its body and optionally + exposes it. + + catch + org.apache.taglibs.standard.tag.common.core.CatchTag + JSP + + +Name of the exported scoped variable for the +exception thrown from a nested action. The type of the +scoped variable is the type of the exception thrown. + + var + false + false + + + + + + Simple conditional tag that establishes a context for + mutually exclusive conditional operations, marked by + <when> and <otherwise> + + choose + org.apache.taglibs.standard.tag.common.core.ChooseTag + JSP + + + + + Simple conditional tag, which evalutes its body if the + supplied condition is true and optionally exposes a Boolean + scripting variable representing the evaluation of this condition + + if + org.apache.taglibs.standard.tag.rt.core.IfTag + JSP + + +The test condition that determines whether or +not the body content should be processed. + + test + true + true + boolean + + + +Name of the exported scoped variable for the +resulting value of the test condition. The type +of the scoped variable is Boolean. + + var + false + false + + + +Scope for var. + + scope + false + false + + + + + + Retrieves an absolute or relative URL and exposes its contents + to either the page, a String in 'var', or a Reader in 'varReader'. + + import + org.apache.taglibs.standard.tag.rt.core.ImportTag + org.apache.taglibs.standard.tei.ImportTEI + JSP + + +The URL of the resource to import. + + url + true + true + + + +Name of the exported scoped variable for the +resource's content. The type of the scoped +variable is String. + + var + false + false + + + +Scope for var. + + scope + false + false + + + +Name of the exported scoped variable for the +resource's content. The type of the scoped +variable is Reader. + + varReader + false + false + + + +Name of the context when accessing a relative +URL resource that belongs to a foreign +context. + + context + false + true + + + +Character encoding of the content at the input +resource. + + charEncoding + false + true + + + + + + The basic iteration tag, accepting many different + collection types and supporting subsetting and other + functionality + + forEach + org.apache.taglibs.standard.tag.rt.core.ForEachTag + org.apache.taglibs.standard.tei.ForEachTEI + JSP + + +Collection of items to iterate over. + + items + false + true + java.lang.Object + + + +If items specified: +Iteration begins at the item located at the +specified index. First item of the collection has +index 0. +If items not specified: +Iteration begins with index set at the value +specified. + + begin + false + true + int + + + +If items specified: +Iteration ends at the item located at the +specified index (inclusive). +If items not specified: +Iteration ends when index reaches the value +specified. + + end + false + true + int + + + +Iteration will only process every step items of +the collection, starting with the first one. + + step + false + true + int + + + +Name of the exported scoped variable for the +current item of the iteration. This scoped +variable has nested visibility. Its type depends +on the object of the underlying collection. + + var + false + false + + + +Name of the exported scoped variable for the +status of the iteration. Object exported is of type +javax.servlet.jsp.jstl.core.LoopTagStatus. This scoped variable has nested +visibility. + + varStatus + false + false + + + + + + Iterates over tokens, separated by the supplied delimeters + + forTokens + org.apache.taglibs.standard.tag.rt.core.ForTokensTag + JSP + + +String of tokens to iterate over. + + items + true + true + java.lang.String + + + +The set of delimiters (the characters that +separate the tokens in the string). + + delims + true + true + java.lang.String + + + +Iteration begins at the token located at the +specified index. First token has index 0. + + begin + false + true + int + + + +Iteration ends at the token located at the +specified index (inclusive). + + end + false + true + int + + + +Iteration will only process every step tokens +of the string, starting with the first one. + + step + false + true + int + + + +Name of the exported scoped variable for the +current item of the iteration. This scoped +variable has nested visibility. + + var + false + false + + + +Name of the exported scoped variable for the +status of the iteration. Object exported is of +type +javax.servlet.jsp.jstl.core.LoopTag +Status. This scoped variable has nested +visibility. + + varStatus + false + false + + + + + + Like <%= ... >, but for expressions. + + out + org.apache.taglibs.standard.tag.rt.core.OutTag + JSP + + +Expression to be evaluated. + + value + true + true + + + +Default value if the resulting value is null. + + default + false + true + + + +Determines whether characters <,>,&,'," in the +resulting string should be converted to their +corresponding character entity codes. Default value is +true. + + escapeXml + false + true + + + + + + + Subtag of <choose> that follows <when> tags + and runs only if all of the prior conditions evaluated to + 'false' + + otherwise + org.apache.taglibs.standard.tag.common.core.OtherwiseTag + JSP + + + + + Adds a parameter to a containing 'import' tag's URL. + + param + org.apache.taglibs.standard.tag.rt.core.ParamTag + JSP + + +Name of the query string parameter. + + name + true + true + + + +Value of the parameter. + + value + false + true + + + + + + Redirects to a new URL. + + redirect + org.apache.taglibs.standard.tag.rt.core.RedirectTag + JSP + + +The URL of the resource to redirect to. + + url + false + true + + + +Name of the context when redirecting to a relative URL +resource that belongs to a foreign context. + + context + false + true + + + + + + Removes a scoped variable (from a particular scope, if specified). + + remove + org.apache.taglibs.standard.tag.common.core.RemoveTag + empty + + +Name of the scoped variable to be removed. + + var + true + false + + + +Scope for var. + + scope + false + false + + + + + + Sets the result of an expression evaluation in a 'scope' + + set + org.apache.taglibs.standard.tag.rt.core.SetTag + JSP + + +Name of the exported scoped variable to hold the value +specified in the action. The type of the scoped variable is +whatever type the value expression evaluates to. + + var + false + false + + + +Expression to be evaluated. + + value + false + true + + + +Target object whose property will be set. Must evaluate to +a JavaBeans object with setter property property, or to a +java.util.Map object. + + target + false + true + + + +Name of the property to be set in the target object. + + property + false + true + + + +Scope for var. + + scope + false + false + + + + + + Creates a URL with optional query parameters. + + url + org.apache.taglibs.standard.tag.rt.core.UrlTag + JSP + + +Name of the exported scoped variable for the +processed url. The type of the scoped variable is +String. + + var + false + false + + + +Scope for var. + + scope + false + false + + + +URL to be processed. + + value + false + true + + + +Name of the context when specifying a relative URL +resource that belongs to a foreign context. + + context + false + true + + + + + + Subtag of <choose> that includes its body if its + condition evalutes to 'true' + + when + org.apache.taglibs.standard.tag.rt.core.WhenTag + JSP + + +The test condition that determines whether or not the +body content should be processed. + + test + true + true + boolean + + + + diff --git a/web/WEB-INF/tld/fmt-1_0-rt.tld b/web/WEB-INF/tld/fmt-1_0-rt.tld new file mode 100644 index 0000000..45d1545 --- /dev/null +++ b/web/WEB-INF/tld/fmt-1_0-rt.tld @@ -0,0 +1,403 @@ + + + + 1.0 + 1.2 + fmt_rt + http://java.sun.com/jstl/fmt_rt + JSTL fmt RT + JSTL 1.0 i18n-capable formatting library + + + + org.apache.taglibs.standard.tlv.JstlFmtTLV + + + Provides core validation features for JSTL tags. + + + + + requestEncoding + org.apache.taglibs.standard.tag.rt.fmt.RequestEncodingTag + empty + + Sets the request character encoding + + + value + false + true + + + + + setLocale + org.apache.taglibs.standard.tag.rt.fmt.SetLocaleTag + empty + + Stores the given locale in the locale configuration variable + + + value + true + true + + + variant + false + true + + + scope + false + false + + + + + timeZone + org.apache.taglibs.standard.tag.rt.fmt.TimeZoneTag + JSP + + Specifies the time zone for any time formatting or parsing actions + nested in its body + + + value + true + true + + + + + setTimeZone + org.apache.taglibs.standard.tag.rt.fmt.SetTimeZoneTag + empty + + Stores the given time zone in the time zone configuration variable + + + value + true + true + + + var + false + false + + + scope + false + false + + + + + bundle + org.apache.taglibs.standard.tag.rt.fmt.BundleTag + JSP + + Loads a resource bundle to be used by its tag body + + + basename + true + true + + + prefix + false + true + + + + + setBundle + org.apache.taglibs.standard.tag.rt.fmt.SetBundleTag + empty + + Loads a resource bundle and stores it in the named scoped variable or + the bundle configuration variable + + + basename + true + true + + + var + false + false + + + scope + false + false + + + + + message + org.apache.taglibs.standard.tag.rt.fmt.MessageTag + JSP + + Maps key to localized message and performs parametric replacement + + + key + false + true + + + bundle + false + true + + + var + false + false + + + scope + false + false + + + + + param + org.apache.taglibs.standard.tag.rt.fmt.ParamTag + JSP + + Supplies an argument for parametric replacement to a containing + <message> tag + + + value + false + true + + + + + formatNumber + org.apache.taglibs.standard.tag.rt.fmt.FormatNumberTag + JSP + + Formats a numeric value as a number, currency, or percentage + + + value + false + true + + + type + false + true + + + pattern + false + true + + + currencyCode + false + true + + + currencySymbol + false + true + + + groupingUsed + false + true + + + maxIntegerDigits + false + true + + + minIntegerDigits + false + true + + + maxFractionDigits + false + true + + + minFractionDigits + false + true + + + var + false + false + + + scope + false + false + + + + + parseNumber + org.apache.taglibs.standard.tag.rt.fmt.ParseNumberTag + JSP + + Parses the string representation of a number, currency, or percentage + + + value + false + true + + + type + false + true + + + pattern + false + true + + + parseLocale + false + true + + + integerOnly + false + true + + + var + false + false + + + scope + false + false + + + + + formatDate + org.apache.taglibs.standard.tag.rt.fmt.FormatDateTag + empty + + Formats a date and/or time using the supplied styles and pattern + + + value + true + true + + + type + false + true + + + dateStyle + false + true + + + timeStyle + false + true + + + pattern + false + true + + + timeZone + false + true + + + var + false + false + + + scope + false + false + + + + + parseDate + org.apache.taglibs.standard.tag.rt.fmt.ParseDateTag + JSP + + Parses the string representation of a date and/or time + + + value + false + true + + + type + false + true + + + dateStyle + false + true + + + timeStyle + false + true + + + pattern + false + true + + + timeZone + false + true + + + parseLocale + false + true + + + var + false + false + + + scope + false + false + + + + diff --git a/web/WEB-INF/tld/fmt-1_0.tld b/web/WEB-INF/tld/fmt-1_0.tld new file mode 100644 index 0000000..20523ee --- /dev/null +++ b/web/WEB-INF/tld/fmt-1_0.tld @@ -0,0 +1,442 @@ + + + + 1.0 + 1.2 + fmt + http://java.sun.com/jstl/fmt + JSTL fmt + JSTL 1.0 i18n-capable formatting library + + + + org.apache.taglibs.standard.tlv.JstlFmtTLV + + + expressionAttributes + + requestEncoding:value + setLocale:value + setLocale:variant + timeZone:value + setTimeZone:value + bundle:basename + bundle:prefix + setBundle:basename + message:key + message:bundle + param:value + formatNumber:value + formatNumber:pattern + formatNumber:currencyCode + formatNumber:currencySymbol + formatNumber:groupingUsed + formatNumber:maxIntegerDigits + formatNumber:minIntegerDigits + formatNumber:maxFractionDigits + formatNumber:minFractionDigits + parseNumber:value + parseNumber:pattern + parseNumber:parseLocale + parseNumber:integerOnly + formatDate:value + formatDate:pattern + formatDate:timeZone + parseDate:value + parseDate:pattern + parseDate:timeZone + parseDate:parseLocale + + + Whitespace-separated list of colon-separated token pairs + describing tag:attribute combinations that accept expressions. + The validator uses this information to determine which + attributes need their syntax validated. + + + + + + requestEncoding + org.apache.taglibs.standard.tag.el.fmt.RequestEncodingTag + empty + + Sets the request character encoding + + + value + false + false + + + + + setLocale + org.apache.taglibs.standard.tag.el.fmt.SetLocaleTag + empty + + Stores the given locale in the locale configuration variable + + + value + true + false + + + variant + false + false + + + scope + false + false + + + + + timeZone + org.apache.taglibs.standard.tag.el.fmt.TimeZoneTag + JSP + + Specifies the time zone for any time formatting or parsing actions + nested in its body + + + value + true + false + + + + + setTimeZone + org.apache.taglibs.standard.tag.el.fmt.SetTimeZoneTag + empty + + Stores the given time zone in the time zone configuration variable + + + value + true + false + + + var + false + false + + + scope + false + false + + + + + bundle + org.apache.taglibs.standard.tag.el.fmt.BundleTag + JSP + + Loads a resource bundle to be used by its tag body + + + basename + true + false + + + prefix + false + false + + + + + setBundle + org.apache.taglibs.standard.tag.el.fmt.SetBundleTag + empty + + Loads a resource bundle and stores it in the named scoped variable or + the bundle configuration variable + + + basename + true + false + + + var + false + false + + + scope + false + false + + + + + message + org.apache.taglibs.standard.tag.el.fmt.MessageTag + JSP + + Maps key to localized message and performs parametric replacement + + + key + false + false + + + bundle + false + false + + + var + false + false + + + scope + false + false + + + + + param + org.apache.taglibs.standard.tag.el.fmt.ParamTag + JSP + + Supplies an argument for parametric replacement to a containing + <message> tag + + + value + false + false + + + + + formatNumber + org.apache.taglibs.standard.tag.el.fmt.FormatNumberTag + JSP + + Formats a numeric value as a number, currency, or percentage + + + value + false + false + + + type + false + false + + + pattern + false + false + + + currencyCode + false + false + + + currencySymbol + false + false + + + groupingUsed + false + false + + + maxIntegerDigits + false + false + + + minIntegerDigits + false + false + + + maxFractionDigits + false + false + + + minFractionDigits + false + false + + + var + false + false + + + scope + false + false + + + + + parseNumber + org.apache.taglibs.standard.tag.el.fmt.ParseNumberTag + JSP + + Parses the string representation of a number, currency, or percentage + + + value + false + false + + + type + false + false + + + pattern + false + false + + + parseLocale + false + false + + + integerOnly + false + false + + + var + false + false + + + scope + false + false + + + + + formatDate + org.apache.taglibs.standard.tag.el.fmt.FormatDateTag + empty + + Formats a date and/or time using the supplied styles and pattern + + + value + true + false + + + type + false + false + + + dateStyle + false + false + + + timeStyle + false + false + + + pattern + false + false + + + timeZone + false + false + + + var + false + false + + + scope + false + false + + + + + parseDate + org.apache.taglibs.standard.tag.el.fmt.ParseDateTag + JSP + + Parses the string representation of a date and/or time + + + value + false + false + + + type + false + false + + + dateStyle + false + false + + + timeStyle + false + false + + + pattern + false + false + + + timeZone + false + false + + + parseLocale + false + false + + + var + false + false + + + scope + false + false + + + + diff --git a/web/WEB-INF/tld/fmt.tld b/web/WEB-INF/tld/fmt.tld new file mode 100644 index 0000000..3b9a54a --- /dev/null +++ b/web/WEB-INF/tld/fmt.tld @@ -0,0 +1,671 @@ + + + + + JSTL 1.1 i18n-capable formatting library + JSTL fmt + 1.1 + fmt + http://java.sun.com/jsp/jstl/fmt + + + + Provides core validation features for JSTL tags. + + + org.apache.taglibs.standard.tlv.JstlFmtTLV + + + + + + Sets the request character encoding + + requestEncoding + org.apache.taglibs.standard.tag.rt.fmt.RequestEncodingTag + empty + + +Name of character encoding to be applied when +decoding request parameters. + + value + false + true + + + + + + Stores the given locale in the locale configuration variable + + setLocale + org.apache.taglibs.standard.tag.rt.fmt.SetLocaleTag + empty + + +A String value is interpreted as the +printable representation of a locale, which +must contain a two-letter (lower-case) +language code (as defined by ISO-639), +and may contain a two-letter (upper-case) +country code (as defined by ISO-3166). +Language and country codes must be +separated by hyphen (-) or underscore +(_). + + value + true + true + + + +Vendor- or browser-specific variant. +See the java.util.Locale javadocs for +more information on variants. + + variant + false + true + + + +Scope of the locale configuration variable. + + scope + false + false + + + + + + Specifies the time zone for any time formatting or parsing actions + nested in its body + + timeZone + org.apache.taglibs.standard.tag.rt.fmt.TimeZoneTag + JSP + + +The time zone. A String value is interpreted as +a time zone ID. This may be one of the time zone +IDs supported by the Java platform (such as +"America/Los_Angeles") or a custom time zone +ID (such as "GMT-8"). See +java.util.TimeZone for more information on +supported time zone formats. + + value + true + true + + + + + + Stores the given time zone in the time zone configuration variable + + setTimeZone + org.apache.taglibs.standard.tag.rt.fmt.SetTimeZoneTag + empty + + +The time zone. A String value is interpreted as +a time zone ID. This may be one of the time zone +IDs supported by the Java platform (such as +"America/Los_Angeles") or a custom time zone +ID (such as "GMT-8"). See java.util.TimeZone for +more information on supported time zone +formats. + + value + true + true + + + +Name of the exported scoped variable which +stores the time zone of type +java.util.TimeZone. + + var + false + false + + + +Scope of var or the time zone configuration +variable. + + scope + false + false + + + + + + Loads a resource bundle to be used by its tag body + + bundle + org.apache.taglibs.standard.tag.rt.fmt.BundleTag + JSP + + +Resource bundle base name. This is the bundle's +fully-qualified resource name, which has the same +form as a fully-qualified class name, that is, it uses +"." as the package component separator and does not +have any file type (such as ".class" or ".properties") +suffix. + + basename + true + true + + + +Prefix to be prepended to the value of the message +key of any nested <fmt:message> action. + + prefix + false + true + + + + + + Loads a resource bundle and stores it in the named scoped variable or + the bundle configuration variable + + setBundle + org.apache.taglibs.standard.tag.rt.fmt.SetBundleTag + empty + + +Resource bundle base name. This is the bundle's +fully-qualified resource name, which has the same +form as a fully-qualified class name, that is, it uses +"." as the package component separator and does not +have any file type (such as ".class" or ".properties") +suffix. + + basename + true + true + + + +Name of the exported scoped variable which stores +the i18n localization context of type +javax.servlet.jsp.jstl.fmt.LocalizationC +ontext. + + var + false + false + + + +Scope of var or the localization context +configuration variable. + + scope + false + false + + + + + + Maps key to localized message and performs parametric replacement + + message + org.apache.taglibs.standard.tag.rt.fmt.MessageTag + JSP + + +Message key to be looked up. + + key + false + true + + + +Localization context in whose resource +bundle the message key is looked up. + + bundle + false + true + + + +Name of the exported scoped variable +which stores the localized message. + + var + false + false + + + +Scope of var. + + scope + false + false + + + + + + Supplies an argument for parametric replacement to a containing + <message> tag + + param + org.apache.taglibs.standard.tag.rt.fmt.ParamTag + JSP + + +Argument used for parametric replacement. + + value + false + true + + + + + + Formats a numeric value as a number, currency, or percentage + + formatNumber + org.apache.taglibs.standard.tag.rt.fmt.FormatNumberTag + JSP + + +Numeric value to be formatted. + + value + false + true + + + +Specifies whether the value is to be +formatted as number, currency, or +percentage. + + type + false + true + + + +Custom formatting pattern. + + pattern + false + true + + + +ISO 4217 currency code. Applied only +when formatting currencies (i.e. if type is +equal to "currency"); ignored otherwise. + + currencyCode + false + true + + + +Currency symbol. Applied only when +formatting currencies (i.e. if type is equal +to "currency"); ignored otherwise. + + currencySymbol + false + true + + + +Specifies whether the formatted output +will contain any grouping separators. + + groupingUsed + false + true + + + +Maximum number of digits in the integer +portion of the formatted output. + + maxIntegerDigits + false + true + + + +Minimum number of digits in the integer +portion of the formatted output. + + minIntegerDigits + false + true + + + +Maximum number of digits in the +fractional portion of the formatted output. + + maxFractionDigits + false + true + + + +Minimum number of digits in the +fractional portion of the formatted output. + + minFractionDigits + false + true + + + +Name of the exported scoped variable +which stores the formatted result as a +String. + + var + false + false + + + +Scope of var. + + scope + false + false + + + + + + Parses the string representation of a number, currency, or percentage + + parseNumber + org.apache.taglibs.standard.tag.rt.fmt.ParseNumberTag + JSP + + +String to be parsed. + + value + false + true + + + +Specifies whether the string in the value +attribute should be parsed as a number, +currency, or percentage. + + type + false + true + + + +Custom formatting pattern that determines +how the string in the value attribute is to be +parsed. + + pattern + false + true + + + +Locale whose default formatting pattern (for +numbers, currencies, or percentages, +respectively) is to be used during the parse +operation, or to which the pattern specified +via the pattern attribute (if present) is +applied. + + parseLocale + false + true + + + +Specifies whether just the integer portion of +the given value should be parsed. + + integerOnly + false + true + + + +Name of the exported scoped variable which +stores the parsed result (of type +java.lang.Number). + + var + false + false + + + +Scope of var. + + scope + false + false + + + + + + Formats a date and/or time using the supplied styles and pattern + + formatDate + org.apache.taglibs.standard.tag.rt.fmt.FormatDateTag + empty + + +Date and/or time to be formatted. + + value + true + true + + + +Specifies whether the time, the date, or both +the time and date components of the given +date are to be formatted. + + type + false + true + + + +Predefined formatting style for dates. Follows +the semantics defined in class +java.text.DateFormat. Applied only +when formatting a date or both a date and +time (i.e. if type is missing or is equal to +"date" or "both"); ignored otherwise. + + dateStyle + false + true + + + +Predefined formatting style for times. Follows +the semantics defined in class +java.text.DateFormat. Applied only +when formatting a time or both a date and +time (i.e. if type is equal to "time" or "both"); +ignored otherwise. + + timeStyle + false + true + + + +Custom formatting style for dates and times. + + pattern + false + true + + + +Time zone in which to represent the formatted +time. + + timeZone + false + true + + + +Name of the exported scoped variable which +stores the formatted result as a String. + + var + false + false + + + +Scope of var. + + scope + false + false + + + + + + Parses the string representation of a date and/or time + + parseDate + org.apache.taglibs.standard.tag.rt.fmt.ParseDateTag + JSP + + +Date string to be parsed. + + value + false + true + + + +Specifies whether the date string in the +value attribute is supposed to contain a +time, a date, or both. + + type + false + true + + + +Predefined formatting style for days +which determines how the date +component of the date string is to be +parsed. Applied only when formatting a +date or both a date and time (i.e. if type +is missing or is equal to "date" or "both"); +ignored otherwise. + + dateStyle + false + true + + + +Predefined formatting styles for times +which determines how the time +component in the date string is to be +parsed. Applied only when formatting a +time or both a date and time (i.e. if type +is equal to "time" or "both"); ignored +otherwise. + + timeStyle + false + true + + + +Custom formatting pattern which +determines how the date string is to be +parsed. + + pattern + false + true + + + +Time zone in which to interpret any time +information in the date string. + + timeZone + false + true + + + +Locale whose predefined formatting styles +for dates and times are to be used during +the parse operation, or to which the +pattern specified via the pattern +attribute (if present) is applied. + + parseLocale + false + true + + + +Name of the exported scoped variable in +which the parsing result (of type +java.util.Date) is stored. + + var + false + false + + + +Scope of var. + + scope + false + false + + + + diff --git a/web/WEB-INF/tld/fn.tld b/web/WEB-INF/tld/fn.tld new file mode 100644 index 0000000..a3f8bed --- /dev/null +++ b/web/WEB-INF/tld/fn.tld @@ -0,0 +1,206 @@ + + + + + JSTL 1.1 functions library + JSTL functions + 1.1 + fn + http://java.sun.com/jsp/jstl/functions + + + + Tests if an input string contains the specified substring. + + contains + org.apache.taglibs.standard.functions.Functions + boolean contains(java.lang.String, java.lang.String) + + <c:if test="${fn:contains(name, searchString)}"> + + + + + + Tests if an input string contains the specified substring in a case insensitive way. + + containsIgnoreCase + org.apache.taglibs.standard.functions.Functions + boolean containsIgnoreCase(java.lang.String, java.lang.String) + + <c:if test="${fn:containsIgnoreCase(name, searchString)}"> + + + + + + Tests if an input string ends with the specified suffix. + + endsWith + org.apache.taglibs.standard.functions.Functions + boolean endsWith(java.lang.String, java.lang.String) + + <c:if test="${fn:endsWith(filename, ".txt")}"> + + + + + + Escapes characters that could be interpreted as XML markup. + + escapeXml + org.apache.taglibs.standard.functions.Functions + java.lang.String escapeXml(java.lang.String) + + ${fn:escapeXml(param:info)} + + + + + + Returns the index withing a string of the first occurrence of a specified substring. + + indexOf + org.apache.taglibs.standard.functions.Functions + int indexOf(java.lang.String, java.lang.String) + + ${fn:indexOf(name, "-")} + + + + + + Joins all elements of an array into a string. + + join + org.apache.taglibs.standard.functions.Functions + java.lang.String join(java.lang.String[], java.lang.String) + + ${fn:join(array, ";")} + + + + + + Returns the number of items in a collection, or the number of characters in a string. + + length + org.apache.taglibs.standard.functions.Functions + int length(java.lang.Object) + + You have ${fn:length(shoppingCart.products)} in your shopping cart. + + + + + Returns a string resulting from replacing in an input string all occurrences + of a "before" string into an "after" substring. + + replace + org.apache.taglibs.standard.functions.Functions + java.lang.String replace(java.lang.String, java.lang.String, java.lang.String) + + ${fn:replace(text, "-", "•")} + + + + + + Splits a string into an array of substrings. + + split + org.apache.taglibs.standard.functions.Functions + java.lang.String[] split(java.lang.String, java.lang.String) + + ${fn:split(customerNames, ";")} + + + + + + Tests if an input string starts with the specified prefix. + + startsWith + org.apache.taglibs.standard.functions.Functions + boolean startsWith(java.lang.String, java.lang.String) + + <c:if test="${fn:startsWith(product.id, "100-")}"> + + + + + + Returns a subset of a string. + + substring + org.apache.taglibs.standard.functions.Functions + java.lang.String substring(java.lang.String, int, int) + + P.O. Box: ${fn:substring(zip, 6, -1)} + + + + + + Returns a subset of a string following a specific substring. + + substringAfter + org.apache.taglibs.standard.functions.Functions + java.lang.String substringAfter(java.lang.String, java.lang.String) + + P.O. Box: ${fn:substringAfter(zip, "-")} + + + + + + Returns a subset of a string before a specific substring. + + substringBefore + org.apache.taglibs.standard.functions.Functions + java.lang.String substringBefore(java.lang.String, java.lang.String) + + Zip (without P.O. Box): ${fn:substringBefore(zip, "-")} + + + + + + Converts all of the characters of a string to lower case. + + toLowerCase + org.apache.taglibs.standard.functions.Functions + java.lang.String toLowerCase(java.lang.String) + + Product name: ${fn.toLowerCase(product.name)} + + + + + + Converts all of the characters of a string to upper case. + + toUpperCase + org.apache.taglibs.standard.functions.Functions + java.lang.String toUpperCase(java.lang.String) + + Product name: ${fn.UpperCase(product.name)} + + + + + + Removes white spaces from both ends of a string. + + trim + org.apache.taglibs.standard.functions.Functions + java.lang.String trim(java.lang.String) + + Name: ${fn.trim(name)} + + + + diff --git a/web/WEB-INF/tld/permittedTaglibs.tld b/web/WEB-INF/tld/permittedTaglibs.tld new file mode 100644 index 0000000..8c0c404 --- /dev/null +++ b/web/WEB-INF/tld/permittedTaglibs.tld @@ -0,0 +1,34 @@ + + + + + Restricts JSP pages to the JSTL tag libraries + + permittedTaglibs + 1.1 + permittedTaglibs + http://jakarta.apache.org/taglibs/standard/permittedTaglibs + + + + javax.servlet.jsp.jstl.tlv.PermittedTaglibsTLV + + + + Whitespace-separated list of taglib URIs to permit. This example + TLD for the Standard Taglib allows only JSTL 'el' taglibs to be + imported. + + permittedTaglibs + + http://java.sun.com/jsp/jstl/core + http://java.sun.com/jsp/jstl/fmt + http://java.sun.com/jsp/jstl/sql + http://java.sun.com/jsp/jstl/xml + + + + diff --git a/web/WEB-INF/tld/scriptfree.tld b/web/WEB-INF/tld/scriptfree.tld new file mode 100644 index 0000000..62ceb43 --- /dev/null +++ b/web/WEB-INF/tld/scriptfree.tld @@ -0,0 +1,51 @@ + + + + + Validates JSP pages to prohibit use of scripting elements. + + 1.1 + scriptfree + http://jakarta.apache.org/taglibs/standard/scriptfree + + + + Validates prohibitions against scripting elements. + + + javax.servlet.jsp.jstl.tlv.ScriptFreeTLV + + + + Controls whether or not declarations are considered valid. + + allowDeclarations + false + + + + Controls whether or not scriptlets are considered valid. + + allowScriptlets + false + + + + Controls whether or not top-level expressions are considered valid. + + allowExpressions + false + + + + Controls whether or not expressions used to supply request-time + attribute values are considered valid. + + allowRTExpressions + false + + + diff --git a/web/WEB-INF/tld/sql-1_0-rt.tld b/web/WEB-INF/tld/sql-1_0-rt.tld new file mode 100644 index 0000000..c2fe525 --- /dev/null +++ b/web/WEB-INF/tld/sql-1_0-rt.tld @@ -0,0 +1,188 @@ + + + + 1.0 + 1.2 + sql_rt + http://java.sun.com/jstl/sql_rt + JSTL sql RT + JSTL 1.0 sql library + + + + org.apache.taglibs.standard.tlv.JstlSqlTLV + + + Provides core validation features for JSTL tags. + + + + + transaction + org.apache.taglibs.standard.tag.rt.sql.TransactionTag + JSP + + Provides nested database action elements with a shared Connection, + set up to execute all statements as one transaction. + + + dataSource + false + true + + + isolation + false + true + + + + + query + org.apache.taglibs.standard.tag.rt.sql.QueryTag + JSP + + Executes the SQL query defined in its body or through the + sql attribute. + + + var + true + false + + + scope + false + false + + + sql + false + true + + + dataSource + false + true + + + startRow + false + true + + + maxRows + false + true + + + + + update + org.apache.taglibs.standard.tag.rt.sql.UpdateTag + JSP + + Executes the SQL update defined in its body or through the + sql attribute. + + + var + false + false + + + scope + false + false + + + sql + false + true + + + dataSource + false + true + + + + + param + org.apache.taglibs.standard.tag.rt.sql.ParamTag + JSP + + Sets a parameter in an SQL statement to the specified value. + + + value + false + true + + + + + dateParam + org.apache.taglibs.standard.tag.rt.sql.DateParamTag + empty + + Sets a parameter in an SQL statement to the specified java.util.Date value. + + + value + true + true + + + type + false + true + + + + + setDataSource + org.apache.taglibs.standard.tag.rt.sql.SetDataSourceTag + empty + + Creates a simple DataSource suitable only for prototyping. + + + var + false + false + + + scope + false + false + + + dataSource + false + true + + + driver + false + true + + + url + false + true + + + user + false + true + + + password + false + true + + + diff --git a/web/WEB-INF/tld/sql-1_0.tld b/web/WEB-INF/tld/sql-1_0.tld new file mode 100644 index 0000000..2f8a328 --- /dev/null +++ b/web/WEB-INF/tld/sql-1_0.tld @@ -0,0 +1,213 @@ + + + + 1.0 + 1.2 + sql + http://java.sun.com/jstl/sql + JSTL sql + JSTL 1.0 sql library + + + + org.apache.taglibs.standard.tlv.JstlSqlTLV + + + expressionAttributes + + transaction:dataSource + transaction:isolation + query:sql + query:dataSource + query:startRow + query:maxRows + update:sql + update:dataSource + param:value + dateParam:value + dateParam:type + setDataSource:dataSource + setDataSource:driver + setDataSource:url + setDataSource:user + setDataSource:password + + + Whitespace-separated list of colon-separated token pairs + describing tag:attribute combinations that accept expressions. + The validator uses this information to determine which + attributes need their syntax validated. + + + + + + transaction + org.apache.taglibs.standard.tag.el.sql.TransactionTag + JSP + + Provides nested database action elements with a shared Connection, + set up to execute all statements as one transaction. + + + dataSource + false + false + + + isolation + false + false + + + + + query + org.apache.taglibs.standard.tag.el.sql.QueryTag + JSP + + Executes the SQL query defined in its body or through the + sql attribute. + + + var + true + false + + + scope + false + false + + + sql + false + false + + + dataSource + false + false + + + startRow + false + false + + + maxRows + false + false + + + + + update + org.apache.taglibs.standard.tag.el.sql.UpdateTag + JSP + + Executes the SQL update defined in its body or through the + sql attribute. + + + var + false + false + + + scope + false + false + + + sql + false + false + + + dataSource + false + false + + + + + param + org.apache.taglibs.standard.tag.el.sql.ParamTag + JSP + + Sets a parameter in an SQL statement to the specified value. + + + value + false + false + + + + + dateParam + org.apache.taglibs.standard.tag.el.sql.DateParamTag + empty + + Sets a parameter in an SQL statement to the specified java.util.Date val +ue. + + + value + true + true + + + type + false + true + + + + + setDataSource + org.apache.taglibs.standard.tag.el.sql.SetDataSourceTag + empty + + Creates a simple DataSource suitable only for prototyping. + + + var + false + false + + + scope + false + false + + + dataSource + false + false + + + driver + false + false + + + url + false + false + + + user + false + false + + + password + false + false + + + diff --git a/web/WEB-INF/tld/sql.tld b/web/WEB-INF/tld/sql.tld new file mode 100644 index 0000000..e53445b --- /dev/null +++ b/web/WEB-INF/tld/sql.tld @@ -0,0 +1,289 @@ + + + + + JSTL 1.1 sql library + JSTL sql + 1.1 + sql + http://java.sun.com/jsp/jstl/sql + + + + Provides core validation features for JSTL tags. + + + org.apache.taglibs.standard.tlv.JstlSqlTLV + + + + + + Provides nested database action elements with a shared Connection, + set up to execute all statements as one transaction. + + transaction + org.apache.taglibs.standard.tag.rt.sql.TransactionTag + JSP + + +DataSource associated with the database to access. A +String value represents a relative path to a JNDI +resource or the parameters for the JDBC +DriverManager facility. + + dataSource + false + true + + + +Transaction isolation level. If not specified, it is the +isolation level the DataSource has been configured +with. + + isolation + false + true + + + + + + Executes the SQL query defined in its body or through the + sql attribute. + + query + org.apache.taglibs.standard.tag.rt.sql.QueryTag + JSP + + +Name of the exported scoped variable for the +query result. The type of the scoped variable is +javax.servlet.jsp.jstl.sql. +Result (see Chapter 16 "Java APIs"). + + var + true + false + + + +Scope of var. + + scope + false + false + + + +SQL query statement. + + sql + false + true + + + +Data source associated with the database to +query. A String value represents a relative path +to a JNDI resource or the parameters for the +DriverManager class. + + dataSource + false + true + + + +The returned Result object includes the rows +starting at the specified index. The first row of +the original query result set is at index 0. If not +specified, rows are included starting from the +first row at index 0. + + startRow + false + true + + + +The maximum number of rows to be included in +the query result. If not specified, or set to -1, no +limit on the maximum number of rows is +enforced. + + maxRows + false + true + + + + + + Executes the SQL update defined in its body or through the + sql attribute. + + update + org.apache.taglibs.standard.tag.rt.sql.UpdateTag + JSP + + +Name of the exported scoped variable for the result +of the database update. The type of the scoped +variable is java.lang.Integer. + + var + false + false + + + +Scope of var. + + scope + false + false + + + +SQL update statement. + + sql + false + true + + + +Data source associated with the database to update. +A String value represents a relative path to a JNDI +resource or the parameters for the JDBC +DriverManager class. + + dataSource + false + true + + + + + + Sets a parameter in an SQL statement to the specified value. + + param + org.apache.taglibs.standard.tag.rt.sql.ParamTag + JSP + + +Parameter value. + + value + false + true + + + + + + Sets a parameter in an SQL statement to the specified java.util.Date value. + + dateParam + org.apache.taglibs.standard.tag.rt.sql.DateParamTag + empty + + +Parameter value for DATE, TIME, or +TIMESTAMP column in a database table. + + value + true + true + + + +One of "date", "time" or "timestamp". + + type + false + true + + + + + + Creates a simple DataSource suitable only for prototyping. + + setDataSource + org.apache.taglibs.standard.tag.rt.sql.SetDataSourceTag + empty + + +Name of the exported scoped variable +for the data source specified. Type can +be String or DataSource. + + var + false + false + + + +If var is specified, scope of the +exported variable. Otherwise, scope of +the data source configuration variable. + + scope + false + false + + + +Data source. If specified as a string, it +can either be a relative path to a JNDI +resource, or a JDBC parameters string +as defined in Section 10.1.1. + + dataSource + false + true + + + +JDBC parameter: driver class name. + + driver + false + true + + + +JDBC parameter: URL associated with +the database. + + url + false + true + + + +JDBC parameter: database user on +whose behalf the connection to the +database is being made. + + user + false + true + + + +JDBC parameter: user password + + password + false + true + + + diff --git a/web/WEB-INF/tld/x-1_0-rt.tld b/web/WEB-INF/tld/x-1_0-rt.tld new file mode 100644 index 0000000..e7062b7 --- /dev/null +++ b/web/WEB-INF/tld/x-1_0-rt.tld @@ -0,0 +1,256 @@ + + + + 1.0 + 1.2 + x_rt + http://java.sun.com/jstl/xml_rt + JSTL XML RT + JSTL 1.0 XML library + + + + org.apache.taglibs.standard.tlv.JstlXmlTLV + + + Provides validation features for JSTL XML tags. + + + + + choose + org.apache.taglibs.standard.tag.common.core.ChooseTag + JSP + + Simple conditional tag that establishes a context for + mutually exclusive conditional operations, marked by + <when> and <otherwise> + + + + + out + org.apache.taglibs.standard.tag.rt.xml.ExprTag + empty + + Like <%= ... >, but for XPath expressions. + + + select + true + false + + + escapeXml + false + true + + + + + if + org.apache.taglibs.standard.tag.common.xml.IfTag + JSP + + XML conditional tag, which evalutes its body if the + supplied XPath expression evalutes to 'true' as a boolean + + + select + true + false + + + var + false + false + + + scope + false + false + + + + + forEach + org.apache.taglibs.standard.tag.common.xml.ForEachTag + JSP + + XML iteration tag. + + + var + false + false + + + select + true + false + + + + + otherwise + org.apache.taglibs.standard.tag.common.core.OtherwiseTag + JSP + + Subtag of <choose> that follows <when> tags + and runs only if all of the prior conditions evaluated to + 'false' + + + + + param + org.apache.taglibs.standard.tag.rt.xml.ParamTag + JSP + + Adds a parameter to a containing 'transform' tag's Transformer + + + name + true + true + + + value + false + true + + + + + parse + org.apache.taglibs.standard.tag.rt.xml.ParseTag + org.apache.taglibs.standard.tei.XmlParseTEI + JSP + + Parses XML content from 'source' attribute or 'body' + + + var + false + false + + + varDom + false + false + + + scope + false + false + + + scopeDom + false + false + + + xml + false + true + + + systemId + false + true + + + filter + false + true + + + + + set + org.apache.taglibs.standard.tag.common.xml.SetTag + empty + + Saves the result of an XPath expression evaluation in a 'scope' + + + var + true + false + + + select + false + false + + + scope + false + false + + + + + transform + org.apache.taglibs.standard.tag.rt.xml.TransformTag + org.apache.taglibs.standard.tei.XmlTransformTEI + JSP + + Conducts a transformation given a source XML document + and an XSLT stylesheet + + + var + false + false + + + scope + false + false + + + result + false + true + + + xml + false + true + + + xmlSystemId + false + true + + + xslt + false + true + + + xsltSystemId + false + true + + + + + when + org.apache.taglibs.standard.tag.common.xml.WhenTag + JSP + + Subtag of <choose> that includes its body if its + expression evalutes to 'true' + + + select + true + false + + + + diff --git a/web/WEB-INF/tld/x-1_0.tld b/web/WEB-INF/tld/x-1_0.tld new file mode 100644 index 0000000..2237ccb --- /dev/null +++ b/web/WEB-INF/tld/x-1_0.tld @@ -0,0 +1,273 @@ + + + + 1.0 + 1.2 + x + http://java.sun.com/jstl/xml + JSTL XML + JSTL 1.0 XML library + + + + org.apache.taglibs.standard.tlv.JstlXmlTLV + + + expressionAttributes + + out:escapeXml + parse:xml + parse:systemId + parse:filter + transform:xml + transform:xmlSystemId + transform:xslt + transform:xsltSystemId + transform:result + + + Whitespace-separated list of colon-separated token pairs + describing tag:attribute combinations that accept expressions. + The validator uses this information to determine which + attributes need their syntax validated. + + + + + + choose + org.apache.taglibs.standard.tag.common.core.ChooseTag + JSP + + Simple conditional tag that establishes a context for + mutually exclusive conditional operations, marked by + <when> and <otherwise> + + + + + out + org.apache.taglibs.standard.tag.el.xml.ExprTag + empty + + Like <%= ... >, but for XPath expressions. + + + select + true + false + + + escapeXml + false + false + + + + + if + org.apache.taglibs.standard.tag.common.xml.IfTag + JSP + + XML conditional tag, which evalutes its body if the + supplied XPath expression evalutes to 'true' as a boolean + + + select + true + false + + + var + false + false + + + scope + false + false + + + + + forEach + org.apache.taglibs.standard.tag.common.xml.ForEachTag + JSP + + XML iteration tag. + + + var + false + false + + + select + true + false + + + + + otherwise + org.apache.taglibs.standard.tag.common.core.OtherwiseTag + JSP + + Subtag of <choose> that follows <when> tags + and runs only if all of the prior conditions evaluated to + 'false' + + + + + param + org.apache.taglibs.standard.tag.el.xml.ParamTag + JSP + + Adds a parameter to a containing 'transform' tag's Transformer + + + name + true + false + + + value + false + false + + + + + parse + org.apache.taglibs.standard.tag.el.xml.ParseTag + org.apache.taglibs.standard.tei.XmlParseTEI + JSP + + Parses XML content from 'source' attribute or 'body' + + + var + false + false + + + varDom + false + false + + + scope + false + false + + + scopeDom + false + false + + + xml + false + false + + + systemId + false + false + + + filter + false + false + + + + + set + org.apache.taglibs.standard.tag.common.xml.SetTag + empty + + Saves the result of an XPath expression evaluation in a 'scope' + + + var + true + false + + + select + false + false + + + scope + false + false + + + + + transform + org.apache.taglibs.standard.tag.el.xml.TransformTag + org.apache.taglibs.standard.tei.XmlTransformTEI + JSP + + Conducts a transformation given a source XML document + and an XSLT stylesheet + + + var + false + false + + + scope + false + false + + + result + false + false + + + xml + false + false + + + xmlSystemId + false + false + + + xslt + false + false + + + xsltSystemId + false + false + + + + + when + org.apache.taglibs.standard.tag.common.xml.WhenTag + JSP + + Subtag of <choose> that includes its body if its + expression evalutes to 'true' + + + select + true + false + + + + diff --git a/web/WEB-INF/tld/x.tld b/web/WEB-INF/tld/x.tld new file mode 100644 index 0000000..e52ffe8 --- /dev/null +++ b/web/WEB-INF/tld/x.tld @@ -0,0 +1,448 @@ + + + + + JSTL 1.1 XML library + JSTL XML + 1.1 + x + http://java.sun.com/jsp/jstl/xml + + + + Provides validation features for JSTL XML tags. + + + org.apache.taglibs.standard.tlv.JstlXmlTLV + + + + + + Simple conditional tag that establishes a context for + mutually exclusive conditional operations, marked by + <when> and <otherwise> + + choose + org.apache.taglibs.standard.tag.common.core.ChooseTag + JSP + + + + + Like <%= ... >, but for XPath expressions. + + out + org.apache.taglibs.standard.tag.rt.xml.ExprTag + empty + + +XPath expression to be evaluated. + + select + true + false + + + +Determines whether characters <,>,&,'," in the +resulting string should be converted to their +corresponding character entity codes. Default +value is true. + + escapeXml + false + true + + + + + + XML conditional tag, which evalutes its body if the + supplied XPath expression evalutes to 'true' as a boolean + + if + org.apache.taglibs.standard.tag.common.xml.IfTag + JSP + + +The test condition that tells whether or not the +body content should be processed. + + select + true + false + + + +Name of the exported scoped variable for the +resulting value of the test condition. The type +of the scoped variable is Boolean. + + var + false + false + + + +Scope for var. + + scope + false + false + + + + + + XML iteration tag. + + forEach + org.apache.taglibs.standard.tag.common.xml.ForEachTag + JSP + + +Name of the exported scoped variable for the +current item of the iteration. This scoped variable +has nested visibility. Its type depends on the +result of the XPath expression in the select +attribute. + + var + false + false + + + +XPath expression to be evaluated. + + select + true + false + + + +Iteration begins at the item located at the +specified index. First item of the collection has +index 0. + + begin + false + true + int + + + +Iteration ends at the item located at the specified +index (inclusive). + + end + false + true + int + + + +Iteration will only process every step items of +the collection, starting with the first one. + + step + false + true + int + + + +Name of the exported scoped variable for the +status of the iteration. Object exported is of type +javax.servlet.jsp.jstl.core.LoopTagStatus. This scoped variable has nested visibility. + + varStatus + false + false + + + + + + Subtag of <choose> that follows <when> tags + and runs only if all of the prior conditions evaluated to + 'false' + + otherwise + org.apache.taglibs.standard.tag.common.core.OtherwiseTag + JSP + + + + + Adds a parameter to a containing 'transform' tag's Transformer + + param + org.apache.taglibs.standard.tag.rt.xml.ParamTag + JSP + + +Name of the transformation parameter. + + name + true + true + + + +Value of the parameter. + + value + false + true + + + + + + Parses XML content from 'source' attribute or 'body' + + parse + org.apache.taglibs.standard.tag.rt.xml.ParseTag + org.apache.taglibs.standard.tei.XmlParseTEI + JSP + + +Name of the exported scoped variable for +the parsed XML document. The type of the +scoped variable is implementation +dependent. + + var + false + false + + + +Name of the exported scoped variable for +the parsed XML document. The type of the +scoped variable is +org.w3c.dom.Document. + + varDom + false + false + + + +Scope for var. + + scope + false + false + + + +Scope for varDom. + + scopeDom + false + false + + + +Deprecated. Use attribute 'doc' instead. + + xml + false + true + + + +Source XML document to be parsed. + + doc + false + true + + + +The system identifier (URI) for parsing the +XML document. + + systemId + false + true + + + +Filter to be applied to the source +document. + + filter + false + true + + + + + + Saves the result of an XPath expression evaluation in a 'scope' + + set + org.apache.taglibs.standard.tag.common.xml.SetTag + empty + + +Name of the exported scoped variable to hold +the value specified in the action. The type of the +scoped variable is whatever type the select +expression evaluates to. + + var + true + false + + + +XPath expression to be evaluated. + + select + false + false + + + +Scope for var. + + scope + false + false + + + + + + Conducts a transformation given a source XML document + and an XSLT stylesheet + + transform + org.apache.taglibs.standard.tag.rt.xml.TransformTag + org.apache.taglibs.standard.tei.XmlTransformTEI + JSP + + +Name of the exported +scoped variable for the +transformed XML +document. The type of the +scoped variable is +org.w3c.dom.Document. + + var + false + false + + + +Scope for var. + + scope + false + false + + + +Result +Object that captures or +processes the transformation +result. + + result + false + true + + + +Deprecated. Use attribute +'doc' instead. + + xml + false + true + + + +Source XML document to be +transformed. (If exported by +<x:set>, it must correspond +to a well-formed XML +document, not a partial +document.) + + doc + false + true + + + +Deprecated. Use attribute +'docSystemId' instead. + + xmlSystemId + false + true + + + +The system identifier (URI) +for parsing the XML +document. + + docSystemId + false + true + + + +javax.xml.transform.Source +Transformation stylesheet as +a String, Reader, or +Source object. + + xslt + false + true + + + +The system identifier (URI) +for parsing the XSLT +stylesheet. + + xsltSystemId + false + true + + + + + + Subtag of <choose> that includes its body if its + expression evalutes to 'true' + + when + org.apache.taglibs.standard.tag.common.xml.WhenTag + JSP + + +The test condition that tells whether or +not the body content should be +processed + + select + true + false + + + + diff --git a/web/cssFile/download_style.css b/web/cssFile/download_style.css new file mode 100644 index 0000000..e462be7 --- /dev/null +++ b/web/cssFile/download_style.css @@ -0,0 +1,46 @@ +.downloadList{ + margin: 10px 20px 20px 20px; + position: relative; + width: 900px; + height: 600px; + background-color: white; + border-radius: 10px; + border: 1px solid rgba(0, 0, 0, 0.4); +} +.download-list-frame{ + margin: 20px; +} +.link-frame{ + transition: 0.3s; + line-height: 40px; + margin: 10px; + padding-left: 20px; + border-radius: 10px; + width: 800px; + color: white; + background-color: #d24249; + height: 40px; +} +.link-frame:hover{ + background-color: rgba(210, 66, 73, 0.89); + height: 50px; +} +.download-select{ + margin: 20px 20px 0 20px; + background-color: #323232; + height: 70px; + width: 900px; + border-radius: 10px; +} +.download-retrieval{ + color: white; + text-align: center; + font-size: 20px; + line-height: 50px; + float: left; + height:54px; + width: 884px; + margin: 5px; + border: 3px solid #6e6e6e; + border-radius: 10px; +} \ No newline at end of file diff --git a/web/cssFile/fill-style.css b/web/cssFile/fill-style.css new file mode 100644 index 0000000..aa4a574 --- /dev/null +++ b/web/cssFile/fill-style.css @@ -0,0 +1,130 @@ +.fill-child{ + position: relative; + margin: 10px 10px; + background-color: white; + width: 97%; + height: 200px; + border-radius: 10px; + border: 1px solid rgba(0, 0, 0, 0.26); +} +.fill-frame{ + border-radius: 5px; + border: 1px solid rgba(0, 0, 0, 0.35); + position:absolute; + background-color: white; + top: 100px; + right: 10px; + width: 960px; + max-height: 700px; + overflow-y: scroll; +} +.fill-ipt-text{ + width: 400px; + height: 120px; + margin: 10px 10px; + border-radius: 10px; + float: right; + border: 1px solid rgba(0, 0, 0, 0.2); + resize: none; + padding: 10px 10px; + background-color: #f4f4f4; +} +.fill-ipt-text:focus{ + border: 1px solid rgb(55, 157, 255); + background-color: white; +} +.fill-ipt-text:hover{ + background-color: white; + border: 1px solid rgb(55, 157, 255); +} +.submit-text{ + font-size: 15px; + color: white; + cursor: pointer; + border-radius: 5px; + border: 1px solid #000000; + background-color: rgba(29, 29, 29, 0.97); + width:200px; + height: 40px; + position: absolute; + float: right; + margin: 0px 10px 10px 10px; + bottom: 0px; + right: 0px; +} +.submit-text:hover{ + background-color: #575757; +} +.fill-name{ + text-align: center; + line-height: 40px; + color: white; + font-size: 18px; + float: left; + background-color: #d24143; + width: 150px; + height: 40px; + border-radius: 10px; + margin: 10px; +} +.other-tips-msgs{ + position: absolute; + height: 130px; + margin: 10px; + width: 400px; + border-radius: 10px; + border: 1px solid #b5b5b5; + bottom: 0px; + left: 0px; +} +.tips-msg{ + font-size: 15px; + text-align: center; + color: white; + height: 25px; + width: 190px; + margin: 5px 5px; + float: left; + transition: all 0.3s; + border-radius: 5px; + background-color: #363636; +} +.tips-msg:hover{ + background-color: #3d3d3d; +} +.upload-status{ + float: left; + border-radius: 10px; + height: 40px; + width: 100px; + margin: 10px 10px 10px 0px; + background-color: #ff7182; +} +.download-file{ + float: left; + border-radius: 10px; + height: 40px; + width: 100px; + margin: 10px 10px 10px 0px; + background-color: #ff7182; +} +.score-area{ + position: absolute; + border: 1px solid rgba(0, 0, 0, 0.24); + border-radius: 10px; + width: 190px; + height: 40px; + margin: 0 0 10px 0; + bottom: 0; + right: 220px; + padding-left: 15px; +} +.fill-top-blank{ + border-radius: 5px; + height: 70px; + width: 960px; + position: absolute; + top: 20px; + right: 10px; + background-color: #323232; +} diff --git a/web/cssFile/home.css b/web/cssFile/home.css index 8c85dd2..b16aac0 100644 --- a/web/cssFile/home.css +++ b/web/cssFile/home.css @@ -1,12 +1,16 @@ body{ margin: 0px; padding: 0px; - background-color: #dad0ce; + background-color: #f0f0f0; width: 100%; height: 100%; } .main2{ - background-color: #f8f9ff; + background-color:#fafafa; +} +.updated{ + position: relative; + width: 100%; } a{ text-decoration: none; @@ -21,10 +25,10 @@ ul{ .top-bar{ width: 100%; height: 55px; - position: relative; + position: fixed; background-color: #c13139; z-index: 100; - box-shadow: 5px 0px 10px rgba(0,0,0,0.47); + box-shadow: 5px 0px 10px rgba(0, 0, 0, 0.3); } .top-center-bar{ position: relative; @@ -108,7 +112,6 @@ ul{ margin: 10px 10px 10px 10px; } .opt-options div{ - width: 100%; height: 30px; text-align: center; @@ -121,7 +124,7 @@ ul{ background-color: rgba(0, 0, 0, 0.21); } .personal-opt .opt{ -width: 35px; + height: 100%; width: 55px; cursor: pointer; @@ -138,7 +141,7 @@ width: 35px; left: 5px; width: 100px; height: 800px; - background-color: #251d20; + background-color: #323232; box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.35); } .nav-bar .a-process{ @@ -168,11 +171,11 @@ width: 35px; box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.32); } .main2{ + top: 55px; z-index: 2; position: relative; width: 1100px; margin: 0px auto; - background-color: white; } .link-point{ display: block; @@ -193,26 +196,29 @@ width: 35px; } .nav-info{ color: white; + text-overflow: ellipsis; text-align: center; + width: 100%; font-size: 12px; + height: 16px; } .update-frame{ border-top: 1px solid rgba(255,105,0,0); width: 990px; position: relative; left: 110px; - height: 900px; + min-height: 825px; } .scroll-ads{ - height: 320px; + height: 250px; width: 900px; background-color: #ffffff; position: absolute; margin: 20px 45px; border-radius: 10px; overflow: hidden; - border: 1px solid rgba(0, 0, 0, 0.33); - box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.22); + border: 1px solid rgba(0, 0, 0, 0.46); + box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.22); } .scroll-ads .scroll-ads-imgs .scroll-child{ display: inline-block; @@ -243,14 +249,15 @@ width: 35px; color: white; } .notice-frame{ - margin:370px auto 0px 45px; + background-color: white; + margin:300px auto 0px 45px; position: relative; width: 800px; height: 400px; border:1px solid rgba(0, 0, 0, 0.32); border-radius: 5px; overflow: hidden; - box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.29); + box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.29); } .notice-frame .notice-frame-info{ @@ -279,7 +286,7 @@ width: 35px; .bar-change::-webkit-scrollbar-thumb{ width: 10px; transition: all 0.3s; - background-color: #e45053; + background-color: rgba(210, 81, 80, 0.96); border-radius: 10px; } .notice-child{ @@ -302,18 +309,17 @@ width: 35px; .notice-child .notice-text{ color: rgba(0, 0, 0, 0.91); width: 100%; - min-height: 100px; + height: 0px; + min-height: 0; + font-size: 0px; text-align: left; - display: none; - transition-delay:0.3s; + transition: 0.5s; background-color: #f3f3f3; border-top: 1px solid rgba(0, 0, 0, 0.26); } -.notice-child .notice-title:hover + .notice-text{ - display: block; -} -.notice-child .notice-text:hover{ - display: block; +.notice-child.select .notice-text{ + min-height: 100px; + font-size: 15px; } .notice-child .notice-title .expend{ position: relative; @@ -330,12 +336,15 @@ width: 35px; margin: 0px 120px; } .notice-choose{ - width: 80px; - height: 200px; + box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.16); + border-radius: 10px; + background-color: #ffffff; + width: 90px; + height: 400px; position: absolute; - top: 370px; - right: 62px; - border: 1px solid rgba(255, 255, 255, 0); + top: 300px; + right: 45px; + border: 1px solid rgb(157, 157, 157); } .notice-choose .notice-class{ margin: 8px 0; @@ -346,9 +355,69 @@ width: 35px; line-height: 45px; text-align: center; background-color: #c62235; - border-radius: 0 10px 10px 0; + border-radius: 5px 10px 10px 5px; transition: all 0.3s; } .notice-choose .notice-class:hover{ width: 110%; +} +.small-ads{ + z-index: 120; + right: 350px; + top: 225px; + position: absolute; + width: 200px; + height: 20px; +} +.sm-one{ + float: left; + margin: 0px 15px; + width:20px; + transition: 0.3s; + height: 10px; + border-radius: 10px; +} +.sm-one .white-point{ + margin: 0 auto; + width:10px; + background-color: white; + transition: 0.3s; + height: 10px; + border-radius: 10px; +} +.sm-one .white-point:hover{ + width:20px; +} +.bottom-bar{ + position: relative; + background-color: #323232; + height: 250px; + width: 100%; + top:60px; +} +.big-logo{ + line-height: 150px; + font-size: 50px; + color: #e7e7e7; + text-align: center; + width: 100%; + height: 160px; + border-bottom:1px solid #585858; +} +.bottom-bar p{ + width: 100%; + text-align: center; + color: #7b7b7b; +} +.model-info{ + float: left; + width: 100px; + height: 40px; + margin: 15px 10px; + background-color: #e4e4e4; + border-radius: 5px; + color: #1b1b1b; + padding-left: 10px; + line-height: 35px; + font-size: 18px; } \ No newline at end of file diff --git a/web/cssFile/images/error.png b/web/cssFile/images/error.png new file mode 100644 index 0000000..9d0d5fb Binary files /dev/null and b/web/cssFile/images/error.png differ diff --git a/web/cssFile/images/file-pdf.png b/web/cssFile/images/file-pdf.png new file mode 100644 index 0000000..a083622 Binary files /dev/null and b/web/cssFile/images/file-pdf.png differ diff --git a/web/cssFile/images/fill.png b/web/cssFile/images/fill.png new file mode 100644 index 0000000..bcc9249 Binary files /dev/null and b/web/cssFile/images/fill.png differ diff --git a/web/cssFile/images/opt.png b/web/cssFile/images/opt.png index ee92156..685aa38 100644 Binary files a/web/cssFile/images/opt.png and b/web/cssFile/images/opt.png differ diff --git a/web/cssFile/images/opt.sai2 b/web/cssFile/images/opt.sai2 index 1367657..9a62cbd 100644 Binary files a/web/cssFile/images/opt.sai2 and b/web/cssFile/images/opt.sai2 differ diff --git a/web/cssFile/images/upload.png b/web/cssFile/images/upload.png new file mode 100644 index 0000000..7177fed Binary files /dev/null and b/web/cssFile/images/upload.png differ diff --git a/web/cssFile/personal.css b/web/cssFile/personal.css index 45aa445..c621e6a 100644 --- a/web/cssFile/personal.css +++ b/web/cssFile/personal.css @@ -2,10 +2,6 @@ ul{ padding: 0; margin: 0; } -.updated{ - width: 100%; - height: 100%; -} .personal-choose{ position: absolute; top: 70px; @@ -127,4 +123,7 @@ ul{ } .change-pw-frame .sm-input-style:hover{ background-color: #517fff; +} +.personal-frame{ + background-color: white; } \ No newline at end of file diff --git a/web/cssFile/select-style.css b/web/cssFile/select-style.css index 468972a..d06576a 100644 --- a/web/cssFile/select-style.css +++ b/web/cssFile/select-style.css @@ -2,9 +2,8 @@ button{ cursor: pointer; } .select-frame{ - position: relative; + border:1px solid rgba(0, 0, 0, 0); width: 100%; - height: 100%; } a{ text-decoration: none; @@ -13,9 +12,9 @@ a{ position: absolute; width: 350px; height: 50px; - top:40px; - right: 60px; - background-color: rgba(0, 0, 0, 0.14); + top:10px; + right: 20px; + background-color: rgba(255, 255, 255, 0.23); border-radius: 5px; } .search-button{ @@ -45,6 +44,7 @@ a{ background: rgb(255, 255, 255); } .list-frame .list-child{ + margin: 10px 5px; height: 120px; width: 98%; @@ -57,12 +57,13 @@ a{ background: rgba(0, 0, 0, 0.06); } .list-frame{ + background-color: white; + border: 1px solid rgba(0, 0, 0, 0.28); + border-radius: 10px; overflow-y: scroll; - right: 60px; - top: 100px; - position: absolute; + margin:100px 0px 0px 198px; max-height: 700px; - width: 600px; + width: 780px; } .select-it{ box-shadow:0px 2px 4px rgba(0, 0, 0, 0.22); @@ -100,24 +101,25 @@ a{ .count-select{ cursor: pointer; position: absolute; - width: 200px; + width: 150px; top: 100px; - left: 100px; + left: 20px; transition: all 0.3s; } .count-select:hover{ top: 80px; } .select-blank{ - display: none; + transition: 0.5s; + height: 0; + font-size: 0; + background-color: #252323; + width: 95%; + margin:0px 5px; } .count-select:hover .select-blank{ display: block; - transition: height 1s; height: 400px; - background-color: #252323; - width: 95%; - margin:0px 5px; } .count-select .selected-info{ width: 100%; @@ -141,22 +143,31 @@ a{ box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.27); } .other-msgs{ - font-size: 10px; + font-size: 11px; float: left; - width: 350px; - height: 100px; - margin: 10px 0 10px 15px; + width: 450px; + height: 90px; + margin: 15px 0 15px 40px; } .other-msgs .one-msg{ float:left; padding-left: 10px; - margin: 2px 2px; + margin: 5px 3px; width: 45%; - height:16px; + height:20px; background-color: rgba(0, 0, 0, 0.78); border-radius: 10px; transition: all 0.3s; } .one-msg:hover{ background-color: rgba(39, 39, 39, 0.78); +} +.top-blank{ + position: absolute; + height: 70px; + width: 960px; + top: 20px; + left: 20px; + background-color: #323232; + border-radius: 5px; } \ No newline at end of file diff --git a/web/cssFile/upload_style.css b/web/cssFile/upload_style.css new file mode 100644 index 0000000..45948ae --- /dev/null +++ b/web/cssFile/upload_style.css @@ -0,0 +1,56 @@ +.upload-frame{ + position:absolute; + top: 100px; + right: 10px; + width: 960px; + height: 200px; + border: 1px solid rgba(0, 0, 0, 0.33); + background-color: white; + border-radius: 10px; +} +.true-select{ + visibility: hidden; +} +.upload-button{ + cursor: pointer; + text-align: center; + line-height: 40px; + color: white; + border-radius: 10px; + width: 200px; + height: 50px; + margin: 10px; + background-color: rgb(66, 123, 211); + transition: 0.3s; + } +.upload-button:hover{ + height: 55px; + background-color: #4b91f4; +} +.file-input-frame{ + transition: 0.8s; + position: absolute; + right: 340px; + bottom: 20px; +} +.file-msg{ + position: absolute; + top: 25px; + left: 70px; + border-radius: 10px; + border: 4px solid #eaeaea; + background-color: #eaeaea; + transition: 0.6s; + width: 100px; + height: 140px; + opacity: 0; +} +.upload-tips{ + width: 180px; + height: 40px; + color: white; + text-align: center; + line-height: 35px; + border-radius: 10px 0px 10px 0; + background-color: rgb(210, 74, 82); +} \ No newline at end of file diff --git a/web/download.jsp b/web/download.jsp new file mode 100644 index 0000000..bc2d5c9 --- /dev/null +++ b/web/download.jsp @@ -0,0 +1,40 @@ +<%-- + Created by IntelliJ IDEA. + User: lenovo + Date: 2019/1/13 + Time: 15:18 + To change this template use File | Settings | File Templates. +--%> +<%@ page contentType="text/html;charset=UTF-8" language="java" %> + + + 资料下载 + + + + + + + diff --git a/web/fill_Information.jsp b/web/fill_Information.jsp new file mode 100644 index 0000000..d276c4a --- /dev/null +++ b/web/fill_Information.jsp @@ -0,0 +1,54 @@ +<%@ page import="core.user.User" %> +<%@ page import="java.util.Map" %> +<%@ page import="java.util.HashMap" %><%-- + Created by IntelliJ IDEA. + User: lenovo + Date: 2019/1/12 + Time: 13:19 + To change this template use File | Settings | File Templates. +--%> +<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %> +<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> + + + 填写信息 + + + + + +<%Map map2=new HashMap(); + map2.put("姓名","李先生"); + map2.put("学号","201630126050"); + map2.put("电话","18711191679"); + map2.put("题目","论文"); + map2.put("5","李先生2"); + map2.put("6","李先生2"); + pageContext.setAttribute("map",map2); + String type ="student"; + pageContext.setAttribute("type",type); +%> +
+
填写意见
+
+
+
${map.姓名}
+
+
+
+ +
${z.key}:${z.value}
+
+
+
+ + + + + +
+
+
+
+ + diff --git a/web/home.jsp b/web/home.jsp index 41530f5..c68ff37 100644 --- a/web/home.jsp +++ b/web/home.jsp @@ -6,19 +6,26 @@ To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> +<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> 毕业设计管理系统 + + + + + +<%String type="teacher";pageContext.setAttribute("userType",type);%>
@@ -41,93 +48,120 @@
-